Polynomialtime algorithm for Maximum Weight Independent Set on free graphs^{†}^{†}thanks: The majority of this work was done while Andrzej Grzesik held a postdoc position of Warsaw Centre of Mathematics and Computer Science (WCMCS). WCMCS also supported a visit of Tereza Klimošová in Warsaw, during which this research was initiated. The work of Ma. Pilipczuk is supported by the Polish National Science Centre grant UMO2013/09/B/ST6/03136. Mi. Pilipczuk is supported by the Foundation for Polish Science (FNP) via the START stipend programme. Klimošová was supported by ANR project Stint under reference ANR13BS020007 and by the LABEX MILYON (ANR10LABX0070) of Université de Lyon, within the program “Investissements d’Avenir” (ANR11IDEX0007) operated by the French National Research Agency (ANR) and by Center of Excellence – ITI, project P202/12/G061 of GA ČR
Abstract
In the classic Maximum Weight Independent Set problem we are given a graph with a nonnegative weight function on vertices, and the goal is to find an independent set in of maximum possible weight. While the problem is NPhard in general, we give a polynomialtime algorithm working on any free graph, that is, a graph that has no path on vertices as an induced subgraph. This improves the polynomialtime algorithm on free graphs of Lokshtanov et al. [10], and the quasipolynomialtime algorithm on free graphs of Lokshtanov et al. [11]. The main technical contribution leading to our main result is enumeration of a polynomialsize family of vertex subsets with the following property: for every maximal independent set in the graph, contains all maximal cliques of some minimal chordal completion of that does not add any edge incident to a vertex of .
1 Introduction
All graphs considered in this paper are finite and simple, i.e., without multiedges or loops. A subset of vertices of a graph is independent if the vertices of are pairwise nonadjacent. The Maximum Weight Independent Set (MWIS) problem asks, for a given graph with nonnegative weights assigned to vertices, for an independent set in that has the maximum possible total weight. The problem is hard in general graphs, even in the case of uniform weights. Therefore, the study of MWIS on restricted classes of inputs, like planar, sparse, or welldecomposable graphs, is a recurring topic in the algorithm design.
In this work we focus on restricting the input graph to a hereditary graph class, that is, a class closed under taking induced subgraphs. A considerable amount of work has been devoted to this direction. Perhaps the most prominent result here is the polynomialtime solvability of the problem on the class of perfect graphs using linear programming methods [8]. We refer to the introductory sections of [10, 11] for a wider discussion of the literature.
While a complete classification of the complexity of MWIS on every hereditary graph class is most probably out of reach, one can focus on classes of free graphs, that is, graphs that do not admit a fixed graph as an induced subgraph. Alekseev [1] proved that the MWIS problem remains hard on free graphs unless is a subdivision of a claw or a path; this leaves only two simple families to consider.
Unfortunately, even in this restricted setting, only small progress has been achieved. For excluding induced subdivisions of a claw, polynomialtime algorithms are known for clawfree graphs [13, 16] and forkfree graphs [12]. For excluding induced paths, there is a polynomialtime algorithm on free graphs (also known as cographs), observed by Corneil [5] in 1981. Note that cographs have bounded cliquewidth, so a simple dynamic programming algorithm suffices. Recently, Lokshtanov, Vatshelle, and Villanger [10] managed to give a polynomialtime algorithm for free graphs, thus making the first breakthrough in over 30 years. Shortly later, Lokshtanov, Pilipczuk, and van Leeuwen [11] gave a quasipolynomialtime algorithm for free graphs, with running time . However, the question whether the problem can be solved in polynomial time on free graphs remained open. To the best of our knowledge, for all the other paths and subdivisions of a claw, it is still open whether the problem is polynomialtime solvable.
Our contribution.
In this work we settle the complexity of MWIS on free graphs by showing that it can be solved in polynomial time.
Theorem 1.
Maximum Weight Independent Set be solved in polynomial time on free graphs.
To prove Theorem 1, at high level we employ the same methodology that led Lokshtanov et al. [10] to the polynomialtime algorithm on free graphs. We now discuss the intuition behind this approach.
The idea is to find a maximumweight independent set using dynamic programming on the structure of the input graph . Imagine that the graph admits some inclusionwise maximal independent set , unknown to the algorithm. Since is independent, it is not hard to see that there exists a tree decomposition of the graph where every bag has at most one element of . If such a tree decomposition was given to us, for some maximumweight independent set , then we would be able to reconstruct (or some other independent set of the same weight) using dynamic programming in polynomial time. Roughly, a state of the dynamic program would be formed by a bag of the decomposition together with at most one of its elements. This vertex may be interpreted as the intended intersection of the bag with the constructed independent set.
However, a priori we cannot assume that we are given such a useful tree decomposition. Instead, the idea is to try to compute a rich enough family of candidates for bags, in hope that for some tree decomposition that can lead to the discovery of a maximumweight solution, its bags will be included among the enumerated candidates. Then we would be able to apply a similar dynamic programming procedure, which intuitively tries to assemble all possible tree decompositions using given candidate bags, and compute a maximumweight independent set along the way. This family should be rich enough so that all bags of some useful decomposition are captured, implying that this decomposition yields a computation path leading to the discovery of an optimum solution, but also small enough so that the whole algorithm runs in polynomial time.
Fortunately for us, there is a wellunderstood theory of socalled potential maximal cliques (PMCs), which are essentially candidates for bags of useful tree decompositions. Observe that given a tree decomposition as described above, by turning each of its bags into a clique, we obtain a chordal supergraph of . Here, is the chordal completion, or fillin: the set of edges added to in order to turn it into a chordal graph. We can further require that this chordal completion is (a) free, meaning that it does not contain any edge incident to a vertex of , and (b) minimal, meaning that there is no other chordal completion of that is a proper subset of .
The following lemma formally summarizes the approach of Lokshtanov et al. [10]. As noted in [10], the proof of this lemma is implicit in the earlier work of Fomin and Villanger [6], from which Lokshtanov et al. drew inspiration.
Lemma 1 (Lokshtanov et al. [10], based on Fomin and Villanger [6]).
There is an algorithm that given a graph with nonnegative weights assigned to vertices, and a family of vertex subsets , works in time polynomial in the size of and , and finds a maximumweight independent set in provided the following condition holds: for every inclusionwise maximal independent set in , there exists an free minimal chordal completion of such that all maximal cliques of belong to .
Thus, Lemma 1 reduces solving MWIS to enumerating candidates for maximal cliques in some free minimal chordal completion of . Candidates for such maximal cliques are called potential maximal cliques, or just PMCs. Formally, a subset is a PMC if there is a minimal chordal completion of the graph in which is a maximal clique. The theory of minimal separators and PMCs was pioneered by Bouchitté and Todinca [2, 3], and provides us with many tools useful for finding the candidates. In particular, it can be checked whether a set is a PMC in polynomial time by verifying a handful of combinatorial properties, and there are multiple techniques for finding and enumerating PMCs in graphs.
Unfortunately, it was already observed by Lokshtanov et al. [10] that the total number of PMCs even in a free graph can be exponential, so we cannot enumerate all the PMCs as candidates. For this reason, Lokshtanov et al. [10] performed a structural analysis that revealed that there is essentially only one type of PMCs whose number can be exponential, and these PMCs “live” in closed neighborhoods of pairs of vertices of . The idea now is that we do not need to enumerate all possible such PMCs, but it suffices to add to the family of candidates the maximal cliques of an arbitrarily chosen minimal chordal completion of the neighborhood of every pair of vertices. Then an exchange argument shows that every minimal chordal completion can be modified to one that uses only the enumerated maximal cliques.
In our setting of free graphs, we follow the same highlevel approach of reducing MWIS to enumerating candidates for maximal cliques in some free minimal chordal completion of the input graph. More precisely, throughout the whole paper we will focus on proving the following result.
Theorem 2.
Given a free graph, one can in polynomial time compute a polynomialsize family of vertex subsets with the following property: for every maximal independent set in , there exists an free minimal completion of such that contains all maximal cliques of .
One of main differences between the setting of free graphs and our setting is that in our case, the variety of situations where one cannot enumerate a polynomial number of candidate PMCs is far richer. Such “unguessable” PMCs may occur not only near vertices of , as was the case in [10], but all over the clique tree of the completed chordal graph. Intuitively, our main goal is to have polynomialsized families of candidates for as many types of PMCs as possible. For those types of PMCs, for which such families cannot be found due to potentially exponential number of candidates, we would like to gain a very good combinatorial understanding of the situation around them. This is in order to give appropriate exchange arguments in a similar, but more general spirit as the exchange argument for neighborhoods of vertices from [10].
Unfortunately, the treatment of the free case is far more involved than the free case considered by Lokshtanov et al. [10]. Not only we have to treat many more types of PMCs for which there are no polynomialsize families of candidates, but the structural analysis leading to their classification, as well as enumeration of PMCs of those types that can be enumerated, requires far deeper and more complicated structural analysis. One technique that we use here, and which was used in the quasipolynomialtime algorithm of Lokshtanov et al. [11], is the modular decomposition. This tool turns out to be invaluable for analysing the internal structure of components of the graph after removing a PMC.
Finally, we remark that our approach is far closer to lifting the polynomialtime algorithm for the free case of Lokshtanov et al. [10], than improving the running time of the quasipolynomialtime algorithm of Lokshtanov et al. [11]. This is because the latter algorithm is based on branching. The main goal there is to find a vertex such that the removal of its closed neighborhood shatters the graph into connected components of significantly smaller size. Pursuing branching on whether to include such a vertex to a constructed independent set or not leads to quasipolynomial running time of the algorithm. However, it seems very hard to use such strategy for designing a polynomialtime algorithm. Therefore, from [11] we borrow only some technical tools related to the structural analysis of free graphs.
Organization.
In Section 2 we establish the notation and recall definitions and known facts from the literature. In Section 3 we introduce some auxiliary tools of general usage. Section 4 describes types of PMCs for which we can find polynomialsize families of candidates. In Section 5 we treat the other PMCs via exchange arguments and prove the main result.
2 Preliminaries
Notation.
All graphs considered in this paper are finite, simple, and undirected, unless explicitly stated. For a graph , by and we denote the vertex and edge set of , respectively. An edge connecting vertices and will be denoted by ; if does not belong to , then we will say that is a nonedge in . For a vertex or a vertex subset , we write and meaning and , respectively. For a subset of vertices , by we denote the subgraph induced by , and denotes the induced subgraph . When for some vertex , we use the shorthand . The set of connected components of a graph will be denoted by . A clique in a graph is a set of pairwise adjacent vertices. A clique is maximal if no its proper superset is also a clique.
The open neighborhood of a vertex in a graph comprises all neighbors of in , and is denoted by . The closed neighborhood of in is then defined as . This terminology is extended to open and closed neighborhoods of any vertex subset as follows: and . In case consists of vertices , we may write and instead of and . Whenever the graph is clear from the context, we may omit the subscript.
For a vertex subset in a graph , and a vertex , we will say that is complete to if . Disjoint vertex subsets are called complete to each other if each vertex of is complete to , equivalently each vertex of is complete to . Similarly, and are anticomplete if there is no edge with one endpoint in and second in . By convention, if then is both complete and anticomplete to .
For a positive integer , a path is a graph with vertex set and the edge set , for some . Such will be denoted by . An induced in a graph is an induced subgraph in that is a . A graph is free if it does not contain any induced . To facilitate the proofs, we introduce the following notation. Suppose is a graph and are vertex subsets. If is a , then will be of the form if for all . If for some vertex , we may put vertex instead of in the sequence denoting the form. For instance, a of the form is one that starts in vertex , and all the other three vertices belong to the set .
For a graph and disjoint vertex sets , by we denote the set of all vertices for which there is a path in that starts in a vertex of and ends in . That is, is the union of the vertex sets of those connected components of that contain a vertex of . By we denote the set ; note that . If , we use and instead, and we drop the subscript whenever is clear from the context.
Chordal graphs and chordal completions.
A hole in a graph is an induced cycle of length at least . A graph is chordal if it contains no holes. In this work, we will also rely on an equivalent definition of chordal graphs via tree decompositions. Recall that a tree decomposition of a graph is a pair where is a tree and is a function that associates each node of with its bag so that the following conditions are satisfied: (1) for each , the set induces a nonempty and connected subtree of , which we shall denote by , and (2) for each , there is a node of such that . For an edge , the set is called the adhesion of , and denoted .
The following classic result gives a structural characterization of chordal graphs.
Proposition 2 (Folklore).
A graph is chordal if and only if admits a tree decomposition whose bags are exactly all the maximal cliques in .
Such a tree decomposition is often called a clique tree of . Note that while its set of bags is unique, the tree structure may not be unique.
For a graph and a set of nonedges , by we denote the graph obtained from by adding all elements of as edges. If is chordal, then will be called a chordal completion (or fillin) of . A chordal completion is minimal if there is no other chordal completion that is a proper subset of .
Minimal separators and PMCs.
Suppose is a graph and is a vertex subset. Consider a connected component . We say that is full to if every vertex of has a neighbor in (in the graph ); note that this is different than saying that is complete to . The set is called a minimal separator if contains at least two connected components that are full to .
From a different perspective, for two nonadjacent vertices , we say that separates and if and lie in distinct connected components of . A separator is minimal if it is inclusionwise minimal. It is easy to see that a set is a minimal separator if it is a minimal separator for some choice of . Clearly, also for any nonadjacent there exists some minimal separator, e.g., the minimum vertex cut between and .
Let and be two minimal separators in . We say that crosses if intersects at least two connected components of . A standard observation is that the notion of crossing is symmetric:
Lemma 3.
Let and be two minimal separators in . Then crosses if and only if crosses .
Proof.
We prove only the forward implication, as the opposite one is symmetric. Let and be two connected components of with vertices , . Let be a component of that is full to . Since contains , we have that . Similarly, . As is connected and are two distinct connected components of , we have that . The lemma follows as the choice of is arbitrary, and there are at least two components of that are full to . ∎
Lemma 3 allows us to use the phrases that two minimal separators and are crossing or noncrossing.
The following statement is a wellknown characterization of chordal graphs in terms of minimal separators.
Lemma 4.
A graph is chordal if and only if every its minimal separator is a clique.
Proof.
In one direction, if is a minimal separator with two full components and two nonadjacent vertices , then the shortest paths from to via and , respectively, form a hole in . In the other direction, observe that a minimum vertex cut between two nonadjacent vertices of a hole in is a minimum separator that contains a vertex from each of the two paths on the hole between the two chosen vertices, and these two vertices are nonadjacent. ∎
Corollary 5.
A graph is chordal if and only if every its two minimal separators are noncrossing.
Proof.
In one direction, note that no minimal separator can cross a minimal separator that is a clique, as in this case is complete, and thus lies in a single connected component of . In the other direction, if are two nonadjacent vertices of a minimal separator , then a minimum vertex cut between and is a minimal separator that crosses . ∎
For chordal completions, a crucial property is that a minimal chordal completion cannot create a new minimal separator; the following statement is one of the statements of [2, Theorem 2.9].
Lemma 6.
If is a graph and is a minimal chordal completion in , then every minimal separator of is a minimal separator of as well.
Thus, by the last two statements, a minimal chordal completion of corresponds to a choice of a pairwise noncrossing subset of minimal separators of . This correspondance can be made in both directions (cf. [2]), but we do not need the exact statements here.
A vertex subset is called a potential maximal clique (PMC, for short) if the following conditions are satisfied:
 (PMC1)

none of the connected components of is full to ; and
 (PMC2)

whenever is a nonedge with , then there is a component such that .
In the second condition, we will say that the component covers the nonedge , thus this condition says that every nonedge within the PMC must be covered. The following classic results link PMCs with chordal completions and their clique trees.
Proposition 7 (Theorem 3.15 of [2]).
For a graph , a vertex subset is a PMC if and only if there exists a minimal chordal completion of such that is a maximal clique in .
We will need a more refined understanding of the connection between minimal separators and minimal chordal completions. The following proposition essentially follows from the toolbox introduced in [2]; we give a proof for the sake of completeness.
Proposition 8.
Suppose is a minimal chordal completion in a graph , and suppose is a clique tree of . Then every adhesion in is a minimal separator in . Moreover, if the removal of from splits it into subtrees and with , then there exist components that are full to in , , and such that for each and .
Proof.
For , let be the maximal clique of associated with the endpoint of that is in . By [2, Proposition 2.2], and is a minimal separator in . Since and are different maximal cliques, there is a vertex . Let be the connected component of in .
We claim is full to and contains . To show this, it suffices to show that every satisfies . If , then we already have , so suppose . Since is a PMC, as witnessed by the minimal chordal completion , there is a component of for which . As and , we have that , and hence , as required.
We now claim that for each . This follows immediately from properties of tree decomposition, using the fact that , which is a bag associated with a bag of a node of , and the fact that by definition.
Hence, satisfies the required properties. A symmetric reasoning yields a component that is full to in and such that for each . In particular and have to be different, so is a minimal separator in . ∎
Lemma 9.
Let be a chordal graph and let be its clique tree. A set is a minimal separator in if and only if there exists an edge of with . Furthermore, for every component of that is full to one can choose such an edge with .
Proof.
The backwards direction is asserted by Proposition 8, as the empty set is the unique minimal chordal completion of a chordal graph.
In the forward direction, let be a minimal separator in and let be two components of that are full to . For , let be the subgraph of induced by nodes with ; since is connected and nonempty, is a nonempty subtree of . Since there are no edges between and , and are nodedisjoint.
Consequently, there exists a unique edge with and , but and are contained in the same tree of . We claim that .
First, note that (as in the second statement of the lemma), as and is a clique tree. Second, by the definition of , we have . Consequently, .
In the other direction, let and let for . By the properties of a tree decomposition, there exist nodes with . Clearly, . Hence, the edge lies on the unique path in from to . Consequently, by the properties of a tree decomposition, we have , as desired. ∎
Let us now focus on the relation between minimal separators and maximal cliques in chordal graphs. By Lemma 4, every minimal separator in a chordal graph is a clique; however, Lemma 9 implies that it is never a maximal one.
Lemma 10.
Let be a minimal separator in a chordal graph , and let be a component of that is full to . Then, there exists a maximal clique in with . Furthermore, if there exists more than one such maximal clique , then there exists a minimal separator in with .
Proof.
The first statement follows directly from Lemma 9 by picking for the promised edge with .
For the second claim, assume there are two such maximal cliques and , and let ; note that . Furthermore, since both and are maximal, we can choose and such that they are nonadjacent. Then, we show that any minimal separator satisfies the claim. Clearly, such an contains . Consequently, also separates from ; from the minimality of we infer that . However, since and are vertices of the same connected component of , the set itself does not separate from , and thus . ∎
In the other direction, we have the following; see Theorem 3.14 of [2] for a statement with less details.
Lemma 11.
Suppose is a PMC in a graph , and let . Denote . Then there is a component whose vertex set consists of and the union of vertex sets of all components for which . Moreover, is a minimal separator in , where and are two connected components of that are full to .
Proof.
By the definition of , is a connected component of and is full to . Let be the union of and all connected components with . We show that is indeed a connected component of that is full to .
Observe that by definition. Let us show that is connected in . By (PMC1), is nonempty and by definition of , every such that has a neighbor in . From (PMC2), it follows that lies in one connected component of ; every two vertices of are either connected by an edge or belong to for some (which therefore lies in ). Thus, is indeed a connected component in .
To show that is full to , let be a vertex of . By (PMC2), for every vertex , there is either is an edge or for . Such is by definition a subset of . It follows that is full to and thus, is a minimal separator. ∎
Modules and modular decomposition.
In our argumentation we will use the basic properties of modules and the modular decomposition of a graph, introduced by Gallai [7]. We refer the reader to the survey of Habib and Paul [9] for a comprehensive review of modern approaches and algorithmic applications.
Suppose is a graph. A nonempty vertex subset is a module if for every vertex , either is complete to or is anticomplete to . Note that if and are two disjoint modules, then and are either complete or anticomplete to each other; for brevity, we will just say that and are adjacent or nonadjacent.
A module is proper if it is not equal to the whole vertex set, and is strong if for any other module , either , or , or . A proper strong module is maximal if there is no other proper strong module that is its proper superset. The following classic result explains the structure of maximal proper strong modules in a graph.
Proposition 12 (cf. Lemma 2 in [9]).
For any graph with more than one vertex, maximal proper strong modules of form a partition of the vertex set of .
This proposition naturally leads to the following definitions. The modular partition of a graph , denoted is simply the set of maximal proper strong modules in ; Proposition 12 ensures that is a partition of provided has more than one vertex. The quotient graph of , denoted , has as the vertex set, and two modules are connected by an edge in if and only if they are adjacent in . A graph is prime if its only modules are trivial, that is, singletons. We have the following corollary of Proposition 12.
Proposition 13 (cf. Theorem 2 in [9]).
For every graph with more than one vertex, its quotient graph is an independent set if is not connected, a clique if the complement of is not connected, or a prime graph otherwise.
The next proposition explains how other modules behave with respect to modular partition.
Proposition 14 (cf. Lemma 2 and Theorem 2 in [9]).
Let be a graph. Then every proper module of is either contained in one of the maximal proper strong modules in , or is the union of a collection of maximal proper strong modules in . Moreover, the latter case can happen only if the quotient graph is a clique or an independent set.
Propositions 12 and 14 can be used recursively to form a hierarchical decomposition of the graph into smaller and smaller modules, as defined next.
Definition 1.
For a graph , the modular decomposition of is a rooted tree with every node labelled with a module such that the following conditions hold:

The root of is labelled with the module .

Each leaf of is labelled by a module consisting of one vertex.

For each node of , the set of labels of the children of is the modular partition of .
For a node , if is a clique then is called a clique node, if is edgeless then is called an independent set node, and otherwise is called a prime node.
Proposition 15 (cf. discussion after Theorem 2 in [9]).
For every graph there exists a unique modular decomposition of that can be computed in polynomial time. Moreover, every module of is either the label of some node in , or the union of labels of some collection of children of some clique or independent set node.
Corollary 16.
For every graph on vertices, there are at most modules in that induce a graph that is both connected and its complement is connected. Moreover, these modules can be enumerated in polynomial time.
Proof.
Let be the modular decomposition of . From Proposition 15 it is easy to see that if a module induces a graph that is both connected and its complement is connected, then has to be the label of some node in . Leaves of are in onetoone correspondence with vertices of , hence there is exactly of them. Since every internal node of has at least two children, it follows that has at most nodes. For enumeration, we can compute in polynomial time and output those labels of its nodes that satisfy the condition. ∎
In this paper we will often deal with graphs whose quotient graphs are cliques. This justifies introducing the following definition.
Definition 2.
A graph is a mesh if and the quotient graph is a clique.
3 Toolbox
A pair is a quasiorder if is a reflexive and transitive relation on . If moreover is antisymmetric, then is a partial order. The following statement is a basic combinatorial tool that we will use in our proofs.
Lemma 17 (Biranking Lemma).
Suppose is a nonempty finite set and and are two quasiorders. Suppose further that every pair of two different elements of is comparable either with respect to or with respect to . Then there exists an element such that for every we have either or .
Proof.
We first observe that it suffices to prove the statement for the case when and are partial orders. Indeed, if is not a partial order, then let us modify by taking every maximal set of elements pairwise equivalent in , and changing within so that becomes a linear order on . This does not change the set of pairs of elements comparable in , while becomes a partial order on that is a subrelation of the original . The same transformation can be then applied to as well. It follows that and still satisfy the conditions of the lemma, because the sets of pairs of comparable elements did not change, while any element satisfying the assertion claimed in the lemma statement after the modification, satisfies it also for the original quasiorders and .
We proceed with the proof assuming that and are partial orders. Let us construct an auxiliary directed graph with vertex set and arcs defined as follows. For every two different elements , put

an arc if and ;

an arc if and ;

no arc otherwise.
Note that since and are comparable in either or , cases (a) and (b) are exclusive. Moreover, case (c) occurs only if and , or and ; that is, and point in different directions on the pair .
We claim that the digraph is acyclic. Let us first verify that this claim implies the statement of the lemma. Supposing is acyclic, so let be any sink in , that is, a vertex with no outgoing arcs. Take any other vertex ; then either there is an arc , or there is no arc between and at all. In the former case we have and , so since and are comparable in at least one of the orders, we infer that indeed or . In the latter case we have that either and , or and , so again is smaller than in at least one of the orders.
It remains to prove the claim. For the sake of contradiction, suppose is not acyclic. Let be the shortest cycle in , where is an arc for (indices behave cyclically modulo ). Every pair of vertices in is bound by at most one arc by construction, so we have . Since is an arc, we have either or . Color the arc red if , and blue if ; in case both these assertions hold, choose any of these colors arbitrarily. Since both and are partial orders, it cannot happen that is entirely blue or entirely red. Then contains both a red and a blue arc. Without loss of generality, by swapping colors and shifting the cycle if necessary, we assume that is red and is blue. In particular, and .
Observe now that it cannot happen that , because then by the transitivity we would have , hence the arc would not be added to in the construction. Symmetrically, it cannot happen that , because then we would have , which contradicts the existence of the arc . This means that and , so the arc was added to in the construction. However, then the cycle could be shortcut by omitting vertex and using the arc instead, a contradiction with the minimality of . This concludes the proof. ∎
We remark that the statement of the Biranking Lemma (Lemma 17) for partial orders was used as Problem 5 in the second round of 68th Polish Mathematical Olympiad. We refer to official solutions [14] for an alternative inductive proof. A problem similar to the above lemma, but for more quasiorders, was stated by Sands, Sauer, and Woodrow in [15] and recently solved by Bousquet, Lochet, and Thomassé in [4].
Structure of minimal separators.
One of our key tools will be the following lemma describing the structure of interaction between a minimal separator and a component full to it. Intuitively, it says that one can always pick two vertices in the component so that every vertex of the separator that is not adjacent to or , behaves nicely in one of two possible ways: either is an endvertex of some sticking to the component, or the component is a mesh and the neighborhood of in the component is the union of a collection of proper strong modules of the component. This analysis was already implicitly present in [11], see the proof of Lemma 3.1 therein.
Lemma 18 (Neighborhood Decomposition Lemma).
Suppose is a graph and is a connected induced subgraph of with . Suppose further that vertices respectively belong to different elements of the modular partition such that and are adjacent in the quotient graph . Then, for each vertex at least one of the following conditions holds:

is such that there exists a of the form in ;

;

is a mesh and the neighborhood of in is the union of some collection of maximal proper strong modules in .
If is not a mesh, then the last condition cannot hold.
Proof.
Let be a vertex not satisfying (a) and (b). If there is no such vertex, the lemma holds. Let . Since does not satisfy (a), . Let be a connected component of and a vertex in . We argue that either or . Assume this is not the case. Then there exists an edge between a vertex in and a vertex in , because is connected. Then, is an induced contradicting our assumption that does not satisfy (a).
Observe that
is a modular partition of such that and belong to the same module (because is an edge). Since and are strong modules, . By Proposition 14, it follows that is not a prime graph, and since it is connected, it must be a clique by Proposition 13. In particular, this implies that is connected. Existence of a strong module containing would contradict maximality of or , since they are distinct and both containing an element from . Thus, every maximal strong module of is either contained in or disjoint from . It follows that the vertex satisfies (c). ∎
In our reasoning, it will be the vertices satisfying condition (c) that will cause the most problems. This justifies the following definition.
Definition 3.
We can now use the Neighborhood Decomposition Lemma to show that in a free graph, every minimal separator can be covered by the union of neighborhoods of six vertices lying outside of it. We will sometimes need to have a better understanding of how these six vertices can be chosen, which is encapsulated in the following general statement of the Separator Covering Lemma.
Lemma 19 (Separator Covering Lemma, general version).
Let be a free graph, and let be a minimal separator in with being two components full to . Suppose that each of has more than one vertex. Let be any two vertices of such that the modules of to which belong are different, but adjacent in . Similarly, let be any two vertices of such that the modules of to which belong are different, but adjacent in . Then the following holds:

If or is not a clique, then .

If both and are cliques, then there exist vertices and such that .
Proof.
Assume that is not a clique (the case when is not a clique is symmetric) and that there is a vertex . Then, by Lemma 18 there is an induced of the form .
Conder a shortest path from to or with internal vertices in . Such a path exists, since is connected and has a neighbor in (because is full to ). Moreover, the path is induced and its length is at least , because is not adjecent to and . The union of such a path with the of the form yields a path on at least vertices, contradicting freeness of .
Now, assume that both and are cliques and consider quasiorders and on vertices of defined as if and only if for . We show that these quasiorders satisfy assumptions of Lemma 17, in particular, that every two vertices are comparable either with respect to or with respect to . Suppose that it is not the case. Then, there are vertices and such that and are edges and and are nonedges for . Observe that by Lemma 18(c), and are adjacent to and and moreover, is an edge for . If , forms an induced . Otherwise, forms an induced . This contradicts freeness of . See Figure 1 for illustration.
Then, by Lemma 17, there exists a vertex of such that or for every . Recall that and are full to and therefore and are nonempty. Finally, observe that any vertices and satisfy . ∎
However, in most cases we can rely on the following simplified variant.
Lemma 20 (Separator Covering Lemma, simplified version).
Suppose is a free graph, and suppose is a minimal separator in with being two components full to . Then there exist and with and such that .
Proof.
If has one vertex, say for some vertex , then is complete to , since is complete to . Then we can pick and . Similarly if has one vertex. Therefore, let us assume that both and have more than one vertex. Then the modular partition has at least two modules and the quotient graph is connected, since is connected. Let us then pick any and , where and are modules of that are adjacent. Symmetrically, we can pick and , where and are modules of that are adjacent. Then, by Lemma 19, we either already have that , in which case we can set and , or there are vertices and such that , so we can set and . ∎
Basic tools on potential maximal cliques
Extending PMCs.
First, we recall the approach of lifting PMCs from induced subgraphs, due to Bouchitté and Todinca [3]. The following Lemma is implicit in [3], we give our proof for the sake of completeness.
Lemma 21.
Let be a graph, be a vertex in , and . Suppose is a PMC in . Then exactly one of the sets and is a PMC in .
Proof.
Observe that may be constructed from by taking all components that are adjacent to , and merging them (and ) into one connected component (if there are no such components in , then constitutes a new connected component). Denote by the connected component of that contains , and let be the set of connected components of that are contained in ; equivalently, comprises the connected components of that are adjacent to in . Then it follows that and .
Suppose first that is not a PMC in . Observe that if is a nonedge in , then since is a PMC in , there exists a component that covers this nonedge, that is, . If then is also a component of that covers , and otherwise, if , then covers . In either case, every nonedge within is covered by a component of , so is not a PMC in for the reason of not satisfying the first property: there is a component of whose neighborhood is equal to . For each