Enumerating minimal dominating sets in the (in)comparability graphs of bounded dimension posets
EEnumerating minimal dominating setsin the (in)comparability graphsof bounded dimension posets ∗ Marthe Bonamy , Oscar Defrain ,Piotr Micek , and Lhouari Nourine CNRS, LaBRI, Université de Bordeaux, France. LIMOS, Université Clermont Auvergne, France. Theoretical Computer Science Department,Faculty of Mathematics and Computer Science,Jagiellonian University, Kraków, Poland.
April 15, 2020
Abstract
Enumerating minimal transversals in a hypergraph is a notoriously hard problem.It can be reduced to enumerating minimal dominating sets in a graph, in fact evento enumerating minimal dominating sets in an incomparability graph.We provide an output-polynomial time algorithm for incomparability graphs whoseunderlying posets have bounded dimension. Through a different proof technique,we also provide an output-polynomial algorithm for their complements, i.e., forcomparability graphs of bounded dimension posets.Our algorithm for incomparability graphs is based on flashlight search and relieson the geometrical representation of incomparability graphs with bounded dimen-sion, as given by Golumbic et al. in 1983. It runs with polynomial delay and onlyneeds polynomial space. Our algorithm for comparability graphs is based on theflipping method introduced by Golovach et al. in 2015. It performs in incremental-polynomial time and requires exponential space.In addition, we show how to improve the flipping method so that it requires onlypolynomial space. Since the flipping method is a key tool for the best known al-gorithms enumerating minimal dominating sets in a number of graph classes, thisyields direct improvements on the state of the art.
Keywords: minimal dominating sets, algorithmic enumeration, comparability graphs,incomparability graphs ∗ The first author has been supported by the ANR project GrR ANR-18-CE40-0032 (2019-2023). The secondand last authors have been supported by the ANR project GraphEn ANR-15-CE40-0009. The third author hasbeen supported by the Polish National Science Center grant (BEETHOVEN; UMO-2018/31/G/ST1/03718). a r X i v : . [ c s . D M ] A p r Introduction
The problem we consider in this paper is the enumeration of all (inclusion-wise) minimal dom-inating sets of a graph, denoted by Dom-Enum. A dominating set in a graph G is a set of vertices D such that every vertex of G is either in D , or is adjacent to a vertex in D . It is (inclusion-wise) minimal if no strict subset of D is a dominating set. Due to its equivalence with theproblem of enumerating all (inclusion-wise) minimal transversals of a hypergraph, denotedby Trans-Enum, Dom-Enum has been widely studied this last decade. Latest publications onthe problem include [GHK +
18, KKP18, BDHR19, DN19, GKLS19].As an n -vertex graph G may contain a number |D ( G ) | of minimal dominating sets whichis exponential in n , one can only aim to provide algorithms running in time exponential in n , or, to provide algorithms whose running time is polynomial in n + |D ( G ) | . We only focushere on algorithms of the second type, and refer to [FGPS08, CHvHK13, GKLS19] for inputexponential-time algorithms for the problem we consider in this paper. An algorithm of thesecond type—running in polynomial time in the sizes of both the input and the output—iscalled output-polynomial . It is said to be running in incremental-polynomial time if it moreoveroutputs the i th solution in a time which is bounded by a polynomial in n plus i , for all i . Ifthe running times before the first output, between any two consecutive outputs, and after thelast output, are bounded by a polynomial in n only, then the algorithm is said to be runningwith polynomial delay . We refer the reader to [JYP88, CKP +
19, Str19] for a more detailedintroduction on the complexity of enumeration algorithms.The existence of an output-polynomial time algorithm for Dom-Enum (or Trans-Enum)is a long-standing open question [EG95, EMG08, KLMN14]. To date, the best known algo-rithm is due to Fredman and Khachiyan and comes from the dualization of monotone Booleanfunctions [FK96]. It runs in output quasi-polynomial time N o (log N ) where N = n + |D ( G ) | .Output-polynomial time algorithms are known for several classes of graphs, including log( n ) -degenerate graphs [EGM03] and triangle-free graphs [BDHR19], later extended to K t -free,paw-free, and diamond-free graphs in [BDH + + { C , C } -free bipartite graphs [KKP18],graphs of bounded conformality [BEGK04], and unit square graphs [GHK + + + + P -free chordalgraphs [KLMN14, DN19]. In terms of negative results, Dom-Enum is as hard in co-bipartitegraphs as in general [KLMN14].The graph classes we consider in the following are related to partially ordered sets, in shortposets. If P is a poset on the set of elements V , then the comparability graph of P is the graph G defined on vertex set V ( G ) = V and where two distinct vertices u and v are adjacent if theyare comparable in P . The incomparability graph of P is the complement: u and v are adjacentif they are incomparable in P . Note that every bipartite graph is a comparability graph, henceevery co-bipartite graph is an incomparability graph. The dimension, introduced in 1941 byDushnik and Miller [DM41], is a key measure of complexity of posets and an analogue of thechromatic number for graphs. The dimension of a poset P is the least integer d such thatelements of P can be embedded into R d in such a way that x (cid:54) y in P if and only if thepoint of x is below the point of y with respect to the product order of R d (the component-wisecomparison of coordinates). Alternatively, the dimension of a poset can be defined as the leastinteger d such that P is the intersection of d linear orders (cid:54) , . . . , (cid:54) d on same ground set, i.e., x (cid:54) y in P if and only if x (cid:54) y , . . . , x (cid:54) t y . 2ince Dom-Enum is as hard in incomparability graphs as in general, an output-polynomialalgorithm would be a major, albeit unlikely, breakthrough. Algorithms for natural subclassesof incomparability graphs, such as interval graphs (incomparability graphs of interval orders)and permutations graphs (incomparability graphs of -dimensional posets), were obtainedin [KLM + Theorem 1.1.
For any fixed integer d , there is a polynomial space, output-polynomial timealgorithm enumerating minimal dominating sets in the incomparability graphs of posets withdimension at most d , represented as the intersection of d linear orders. The algorithm for incomparability graphs is based on flashlight search and relies on thegeometrical representation of incomparability graphs of bounded dimension, which was givenby Golumbic et al. in [GRU83]. It runs with polynomial delay and needs polynomial space.Dom-Enum in comparability graphs is also widely open: only the subcase of bipartitegraphs (comparability graphs of posets of height at most ) has been solved recently [BDHR19].However, there is no reason to believe that Dom-Enum is as hard for comparability graphs asin general. We prove that it is tractable when the underlying poset has bounded dimension,as follows. Theorem 1.2.
For any fixed integer d , there is an output-polynomial time algorithm enumeratingminimal dominating sets in the comparability graphs of posets with dimension at most d . The algorithm for comparability graphs is based on the flipping method recently intro-ducted by Golovach et al. in [GHKV15]. It performs in incremental-polynomial time and re-quires exponential space, using as a blackbox the algorithm of Khachiyan et al. in [KBEG07]for the dualization in hypergraphs of bounded conformality. It also covers the comparabilitygraphs of S t -free posets.In addition to these contributions, we show with Lemma 3.3 how the flipping method canbe improved to work only using polynomial space. While this is not enough to make Theo-rem 1.2 run in polynomial space, it turns existing algorithms for line graphs [GHKV15], graphsof girth at least 7, chordal bipartite graphs [GHK + + The objects considered in this paper are finite. If A and B are sets, we denote by A the set ofall subsets of A , and by A × B the Cartesian product { ( a, b ) | a ∈ A, b ∈ B } .We start with some basic notions from graph theory. A graph G is a pair ( V ( G ) , E ( G )) with V ( G ) its set of vertices (or ground set ) and E ( G ) ⊆ {{ u, v } | u, v ∈ V ( G ) , u (cid:54) = v } itsset of edges. Edges are denoted by uv (or vu ) instead of { u, v } . Two vertices u, v of G arecalled adjacent if uv ∈ E ( G ) . A clique (respectively an independent set ) in a graph G is a set of3airwise adjacent (respectively non-adjacent) vertices. A biclique is a set of vertices that canbe partitioned into two independent sets A, B such that every vertex in A is adjacent to everyvertex in B . We denote K t to be the clique on t elements, and K t,t to be the biclique on t elements of partition A, B such that | A | = | B | = t . The subgraph of G induced by X ⊆ V ( G ) ,denoted by G [ X ] , is the graph ( X, E ( G ) ∩ {{ u, v } | u, v ∈ X, u (cid:54) = v } ) ; G − X is the graph G [ V ( G ) \ X ] . For every graph H , we say that G is H -free if no induced subgraph of G isisomorphic to H . Domination
Let G be a graph and u be a vertex of G . The neighborhood of u is the set N ( u ) = { v ∈ V ( G ) | uv ∈ E ( G ) } . The closed neighborhood of u is the set N [ u ] = N ( u ) ∪ { u } . For a subset X ⊆ V ( G ) we define N [ X ] = (cid:83) x ∈ X N [ x ] and N ( X ) = N [ X ] \ X . Let D, X ⊆ V ( G ) be twosubsets of vertices of G . We say that D dominates X if X ⊆ N [ D ] . It is (inclusion-wise)minimal if X (cid:54)⊆ N [ D \ { x } ] for any x ∈ D . A (minimal) dominating set of G is a (minimal)dominating set of V ( G ) . The set of all minimal dominating sets of G is denoted by D ( G ) . Theproblem of enumerating D ( G ) given G by Dom-Enum. For a graph G , we denote by MIS( G ) the set of all its (inclusion-wise) maximal independent sets, and by MIS-Enum the problemof generating MIS( G ) from G . It is easily observed that every maximal independent set isa minimal dominating set, hence that MIS( G ) ⊆ D ( G ) . However, MIS-Enum appears to bemuch more tractable than Dom-Enum, as witnessed by the many efficient algorithms that areknown for the problem [TIAS77, JYP88, MU04]. These last two observations are the startingpoint of the flipping method introduced in [GHKV15] which we describe at Section 3.Let u ∈ D . A vertex v that is adjacent only to u in D , i.e., for which N [ v ] ∩ D = { u } , is a private neighbor of u with respect to D . Note that u can be its own private neighbor (we saythat u is self-private ). The set of private neighbors of u ∈ D is denoted by Priv(
D, u ) . A set I ⊆ V ( G ) is called irredundant if Priv(
I, x ) (cid:54) = ∅ for all x ∈ I . Then D is a minimal dominatingset of G if and only if it is both a dominating set, and an irredundant set.A graph G together with two disjoint subsets R, B ⊆ V ( G ) constitutes a red-blue graph G ( R, B ) , where we consider vertices in R to be red and those in B to be blue . We do notrequire for R and B to partition V ( G ) . A red dominating set of G ( R, B ) is a red set D ⊆ R that dominates B , i.e., that is such that B ⊆ N [ D ] . It is (inclusion-wise) minimal if B (cid:54)⊆ N [ D \ { x } ] for any x ∈ D . We denote D G ( R, B ) to be the set of all minimal red dominatingsets of G ( R, B ) , and Red-Blue-Dom-Enum the problem of enumerating D G ( R, B ) given G , R and B . The index may be dropped when the graph G is clear from the context. In the contextof red-blue domination, we implicitly restrict our attention to the dominating sets that containonly red vertices, and to private neighbors that are blue. Posets A partially ordered set (or poset ) P = ( V, (cid:54) ) is a pair where V is a set and (cid:54) is a binary relationon V that is reflexive, anti-symmetric and transitive. Two elements u and v of P are said tobe comparable if u (cid:54) v or v (cid:54) u , otherwise they are said to be incomparable , denoted u (cid:107) v . A chain in a poset P is a set of pairwise comparable elements in P . An antichain in a poset P isa set of pairwise incomparable elements in P . A poset P is called a total order (or linear order )if V is a chain. Posets are represented by their Hasse diagram; see Figure 1.The comparability graph of a poset P = ( V, (cid:54) ) is the graph G defined on same ground set V ( G ) = V and where two vertices u and v are made adjacent if they are comparable in P . The4 x x x x x x x x x x x x x x x x x Figure 1: The Hasse diagram of a poset (left), its comparability graph (middle), and incompa-rability graph (right). incomparability graph (or co-comparability graph ) of P is the complement: u and v are madeadjacent if they are incomparable in P , see Figure 1.We now define notations from order theory that will be used in the context of a poset andits comparability graph only. Let G be the comparability graph of a poset P = ( V, (cid:54) ) . The ideal of u is the set ↓ u = { v ∈ V | v (cid:54) u } , and the filter of u is the dual ↑ u = { v ∈ V | u (cid:54) v } .Note that N [ u ] = ↓ u ∪ ↑ u . These notions extend to subsets S ⊆ V as follows: ↓ S = (cid:83) u ∈ S ↓ u , ↑ S = (cid:83) u ∈ S ↑ u . We note Min( S ) and Max( S ) the sets of minimal and maximal elements in S with respect to (cid:54) . Clearly, Min( S ) and Max( S ) define antichains of P for every S ⊆ V . In thiscontext, a (minimal) dominating set of G is a (minimal) set D ⊆ V such that ↑ D ∪ ↓ D = V ,and a (maximal) independent set of G is a (maximal) antichain of P .The dimension of a poset P = ( V, (cid:54) ) is the least integer t such that P is the intersectionof t linear orders (cid:54) , . . . , (cid:54) t on V , i.e., x (cid:54) y if and only if x (cid:54) y , . . . , x (cid:54) t y .We call the poset induced by X ⊆ V , denoted P [ X ] , the suborder restricted on the elementsof X only. A poset P = ( V, (cid:54) ) is bipartite if V can be partitioned into two sets A, B such that a < b implies a ∈ A and b ∈ B . We denote S t , the standard example of order t , to be a poset withbipartition A = { a , . . . , a t } and B = { b , . . . , b t } such that a i < b j for all i (cid:54) = j ∈ { , . . . , t } . SeeFigure 2 for an example of these posets. It is well known that S t has dimension t [DM41]. Notethat dimension is monotone under taking induced suborders. Therefore, posets containing alarge standard example as a suborder have large dimension. The converse is however not true,as there are posets of unbounded dimension with no S as an induced suborder, see [Tro92]for a comprehensive study and references. a a a a b b b b Figure 2: The standard example of order four.
Hypergraphs A hypergraph H is a pair ( V ( H ) , E ( H )) with V ( H ) its set of vertices (or ground set ) and E ( H ) ⊆ V ( H ) its set of edges (or hyperedges). A hypergraph H is called Sperner if E (cid:54)⊆ E for any two distinct hyperedges in H . A transversal of H is a set T ⊆ V ( H ) that intersectsevery hyperedge in H . It is (inclusion-wise) minimal if T \ { x } is not a transversal of H forany x ∈ T . The sets of all minimal transversals of H is denoted by Tr( H ) , and the problem ofenumerating Tr( H ) given H by Trans-Enum.5ote that Dom-Enum appears as a particular case of Trans-Enum when considering thehypergraph N ( G ) of closed neighborhoods of a given graph G , defined by V ( N ( G )) = V ( G ) and E ( N ( G )) = { N [ x ] | x ∈ V ( G ) } . Indeed, a minimal dominating set of G is a minimal setintersecting every neighborhood of G , and hence Tr( N ( G )) = D ( G ) . In fact, the two problemswere shown polynomially equivalent by Kanté et al. in [KLMN14] even when restricted to co-bipartite graphs. This in particular shows that Dom-Enum in co-bipartite graphs is as hard asfor general graphs. As for Trans-Enum and Red-Blue-Dom-Enum, it is easily seen that theyare polynomially equivalent even when restricted to red-blue bipartite graphs of bipartitionred and blue. First, every red-blue graph G ( R, B ) corresponds to a hypergraph H , definedby V ( H ) = R and E ( H ) = { N ( x ) ∩ R | x ∈ B } , satisfying Tr( H ) = D ( R, B ) . Then, everyinstance H of Trans-Enum corresponds to a bipartite instance G ( R, B ) of Red-Blue-Dom-Enum, defined by R = V ( H ) , B = { y E | E ∈ E ( H ) } , with an edge xy E if and only if x ∈ E ,which satisfies D ( R, B ) = Tr( H ) . Golovach, Heggernes, Kratsch and Villanger introduced in [GHKV15] the so-called flippingmethod to efficiently enumerate minimal dominating sets in line graphs. This method waslater used with much success [GHK +
16, GHK +
18, KKP18]. A key step in this method is the flipping operation . We recall it below and in the process, we show that the flipping method canbe improved to run with polynomial space (in contrast to exponential space from the originalversion).
Let G be an n -vertex graph and v , . . . , v n be any ordering of vertices in G . We note that thisorder induces a lexicographical order on the family V ( G ) . Let D be a minimal dominating set of G such that G [ D ] contains at least one edge incident to some vertex u . The following procedureis illustrated in Figure 3. Since D is a minimal dominating set, the set Priv(
D, u ) is not empty.Let v ∈ Priv(
D, u ) . Since u is adjacent with another vertex from D , we have u (cid:54)∈ Priv(
D, u ) ,so v (cid:54) = u . We want to replace u with v ( flip u, v ) and obtain another minimal dominatingset. Let X uv ⊆ Priv(
D, u ) \ N [ v ] be the lexicographically smallest maximal independent setin G [Priv( D, u ) \ N [ v ]] . In other words, X uv is obtained from the empty set by iterativelyadding a vertex of smallest index in Priv(
D, u ) \ N [ { v } ∪ X uv ] , until no such vertex exists.Consider the set D (cid:48) = ( D \ { u } ) ∪ X uv ∪ { v } . Note that D (cid:48) is a (not necessarily minimal)dominating set of G . Some vertices of D (cid:48) may have no private neighbors, however everyvertex of X uv ∪ { v } is self-private. Let Z uv be the lexicographically smallest set which has tobe removed from D (cid:48) in order to make it minimal. In other words, Z uv is obtained from theempty set by iteratively adding a vertex z of smallest index in D (cid:48) \ Z uv such that z has noprivate neighbor with respect to D (cid:48) \ Z uv , until no such vertex exists. Since the elements of X uv ∪ { v } are self-private in D (cid:48) , the sets X uv ∪ { v } and Z uv are disjoint, and non-adjacent.Let us finally set D ∗ = (( D \ { u } ) ∪ X uv ∪ { v } ) \ Z uv . Then D ∗ is a minimal dominating setof G .Observe that since X uv and Z uv are selected greedily with respect to v , . . . , v n , this pro-cedure is deterministic. Therefore, the procedure assigns to every minimal dominating set Two enumeration problems Π A and Π B are said to be polynomially equivalent when there is an output-polynomial time algorithm solving Π A if and only if there is one solving Π B . If there is an output-polynomialtime algorithm solving Π A whenever there is one solving Π B , then we say that Π A is (at least) as hard as Π B . w v X uv Z uv Priv(
D, u ) Figure 3: An illustration of the flipping operation on a dominating set D such that G [ D ] con-tains at least one edge incident to some vertex u , here depicted by uw . Black vertices areelements of D , white vertices are some elements of Priv(
D, u ) . Dashed discs represent closedneighborhoods, and plain disks represent private neighborhoods. D of G , and to every two vertices u, v such that u is in D and is not isolated in G [ D ] , and v ∈ Priv(
D, u ) , a unique set D ∗ . We call D ∗ the parent of D with respect to flipping u and v ,and denote it by Parent uv ( D ) . Conversely, we denote by Children( D ∗ ) the set of all minimaldominating sets D such that D ∗ = Parent uv ( D ) for some edge uv , and call child of D ∗ anyelement of Children( D ∗ ) . Note that, in the procedure, every edge in G [ D ∗ ] is also an edge in G [ D ] , while there is at least one edge incident with u that appears in G [ D ] and not in G [ D ∗ ] .This simple but important observation was formalized as follows. Proposition 3.1 ([GHKV15]) . Let
D, D ∗ ∈ D ( G ) be such that D ∗ = Parent uv ( D ) for someedge uv . Then E ( G [ D ∗ ]) (cid:40) E ( G [ D ]) and v is an isolated vertex of G [ D ∗ ] . The flipping operation is then defined to be the reverse of how D ∗ = Parent uv ( D ) wasgenerated from D . This means, given D ∗ with an isolated element v ∈ D ∗ and u a neighborof v , the operation removes X uv and adds back Z uv , to obtain a child D of D ∗ with respect toflipping u and v . Obviously, the difficulty is to guess appropriate sets for X uv and Z uv whenwe are given only D ∗ , u , and v . We now describe the flipping method as originally introduced in [GHKV15]. Assume that thereexists an algorithm A that, given D ∗ ∈ D ( G ) , enumerates a family D of minimal dominatingsets of G such that Children( D ∗ ) ⊆ D ⊆ D ( G ) . We stress the fact that D may contain minimaldominating sets that are not actual children of D ∗ . The flipping method , then, consists of adepth-first search (DFS) on a directed supergraph G whose nodes are minimal dominatingsets of G , with one additional special node r , called the root, which has no in-neighbors.The out-neighbors of the root are the maximal independent sets of G (which are minimaldominating sets), and there is an arc from a minimal dominating set D ∗ ∈ V ( G ) to another one D ∈ V ( G ) if A generates D from D ∗ . At first, the DFS is initiated at the root. Its out-neighborsare generated with polynomial delay using the algorithm of Tsukiyama et al. [TIAS77]. Theout-neighbors of the other nodes are generated using A . Since A outputs (in particular) everychild of a given node, we can argue using Proposition 3.1 that every minimal dominating set While this is the standard term in this context, one may be more comfortable thinking of it as an “auxiliarygraph”.
7s reachable from r . More solutions may however be output by A , and all the difficulty lies inhandling the inherent repetitions.In [GHKV15] and later papers [GHK +
16, GHK + G ismaintained in order to handle repetitions, inexorably requiring space that is linear in D ( G ) ,thus potentially exponential in n . The stack of an arbitrary DFS from the root r to the currentvisited node D may also require exponential space. The achieved time complexity, on theother hand, is incremental-polynomial. Lemma 3.2 ([GHKV15]) . Let G be a graph. Suppose that there is an algorithm A that, given D ∗ ∈ D ( G ) , enumerates with polynomial delay a family D of minimal dominating sets of G suchthat Children( D ∗ ) ⊆ D ⊆ D ( G ) . Then there is an algorithm that enumerates with incrementaldelay the set D ( G ) of all minimal dominating sets of G . We would like to mention that a similar proof allows for “incremental delay” instead of“polynomial delay” in the hypothesis of this statement. We further strengthen the statementin the following.
We show here that guiding the DFS toward the children, together with a folklore trick (seee.g. [BDH +
19, Lemma 5.1]) on running the algorithm again at each output, allows us to han-dle repetitions with polynomial space at the cost of an increased—but still incremental-poly-nomial—complexity.The next lemma is central to the next section and may be regarded as a space improvementof Lemma 3.2. It is also of general interest as far as the flipping method is concerned.
Lemma 3.3.
Let G be an n -vertex graph, let p : N → N and s ∈ N . Suppose that there is analgorithm A that, given D ∗ ∈ D ( G ) , enumerates a family D with delay p ( t ) and space s , where Children( D ∗ ) ⊆ D ⊆ D ( G ) , p is a non-decreasing function, and t is the number of elements of D already generated. Then there is an algorithm that enumerates the set D ( G ) of all minimaldominating sets of G with delay O ( n ) · i · p ( i ) and space O ( n ) · s , where i is the number of already generated minimal dominating sets.Proof. In the following, let G (cid:48) be the directed graph on vertex set V ( G (cid:48) ) = D ( G ) ∪ { r } andedge set E ( G (cid:48) ) = { ( r, D ) | D ∈ MIS( G ) }∪{ ( D ∗ , D ) | D ∈ Children( D ∗ ) } , where r is a specialvertex referred to as the root .Let us first argue that every minimal dominating set D is reachable from r in G (cid:48) , by induc-tion on the number of edges in it. If D contains no edge, it is a maximal independent set, thusan out-neighbor of r . If D contains an edge uw , we can flip u and one of its private neighbors v . Let D ∗ = Parent uv ( D ) . By Proposition 3.1, D ∗ has fewer edges than D and is thus reach-able from r . There is an arc from D ∗ to D in G (cid:48) , hence the conclusion. Therefore, a DFS of G (cid:48) initiated at r visits all minimal dominating sets of G .Furthermore, for every minimal dominating set D and every directed path from r to D thelength of the path is at most | E ( G [ D ]) | (cid:54) n . This forms a subgraph of G as defined in Section 3.2: Informally, the directed graph G (cid:48) is what G would be if A was reliable, i.e., only generated children of D ∗ .
8e now describe an algorithm B that enumerates, possibly with repetitions, the set D ( G ) of all minimal dominating sets of G . When B outputs a set that was not output before we callthis output a first occurrence . The algorithm B will output first occurrences with a delay O ( n ) · i · p ( i ) and space O ( n ) · s , where i is the number of first occurrences output so far. Algorithm B proceeds as follows. First, it outputs every out-neighbor of r without duplication using thealgorithm of Tsukiyama et al. in [TIAS77]. Then, it proceeds with what boils down to a DFSof G (cid:48) initiated at r , as follows. When visiting a node D ∗ ∈ V ( G (cid:48) ) , B seeks the children of D ∗ by running A . Each set D returned by A is then output by B . Then B checks if D is a child of D ∗ . If so, B “pauses” the execution of A on D ∗ , and launches A on D . When the execution of A on D is complete, B “resumes” the execution of A on D ∗ .Before, we discuss the delays between consecutive first occurrences output by B , we takea pause to determine the following: given D and D ∗ in G (cid:48) , how fast can we determine in D is a child of D ∗ ? The brute force approach we choose goes as follows: (1) guess the vertex u in D (such that there is an edge incident to u in G [ D ] ); (2) guess the vertex v in Priv(
D, u ) ;(3) perform the flipping operation along the uv edge; (4) check if the resulting set is D ∗ . Notethat the number of possible guesses in (1) and (2) is at most n . In order to make a flip when u and v are fixed, we need to compute the sets X uv and Z uv . The straightforward approach doesit in O ( n ) time. Therefore, we can determine if D is a child of D ∗ in O ( n ) time and O ( n ) space (as for convenience, we work with the adjacency matrix).We now examine the delay of B between two consecutive first occurrences. The outputsgenerated by the algorithm of Tsukiyama et al., so the maximal independent sets of G , areproduced within O ( n ) time and O ( n ) space, see [TIAS77].Let D be a first occurrence output by B that is produced by a call of A on a node D ∗ in G (cid:48) .Say that D is the i -th first occurrence in order output by B . Thus D is a child of D ∗ . To obtainthe next first occurrence output by B , we consider the path from r to D in G (cid:48) . The algorithm B continues launching A on D and for each node of the path, except r and D , B has on thestack a paused execution of A called on the node. In the worst case scenario, all the executionswill be resumed and each of them will output at most i sets, all of them being already outputby B before. Since the length of the path from r to D ∗ is bounded by n and since p is a non-decreasing function, there are at most n · i · p ( i ) sets output by the executions of A . Each setis checked by B to see if it is a child of the respective node of G (cid:48) . A single check takes O ( n ) time, so in total in O ( n ) · i · p ( i ) time the algorithm B outputs the next first occurrence.We note that since the time spent between the i -th and ( i + 1) -th first occurrence producedby B is O ( n ) · i · p ( i ) , and since the total number of first occurrences is |D ( G ) | (cid:54) n , there isa small constant c such that B runs for at most poly( n + 2 n ) (cid:54) cn time.The space consumed by B is dominated by the space taken by at most n paused executionsof A and the adjacency matrix of G . Thus B runs in O ( n ) · s space.We are now ready to describe an algorithm C that enumerates D ( G ) without repetitionsand within the desired time and space constraints. Algorithm C proceeds as follows. First, itlaunches a master instance of B . It also maintains a counter keeping track of the number ofsteps (i.e., elementary steps counted by the time complexity) of the master instance of B . Since B runs for at most cn steps, a cn -bits long counter suffices. Whenever the master instanceoutputs a new set D , and the counter of steps indicates i , the algorithm C launches a newinstance of B , runs it for i − steps, and compares each of its output with D . The new instanceof B is killed after exactly i − steps. If D did not appear as the output of the new instance, thenwe conclude that it is a first occurrence of the master instance, and the algorithm C outputs D .9f D has appeared as one of the outputs of the new instance, then C ignores it and continuesthe simulation of the master instance. In that way, every set of D ( G ) is output by C withoutrepetitions.We now examine the delay of C between the output of the i -th and ( i + 1) -th minimaldominating sets. Consider the simulation of the master instance of B from the i -th to the ( i + 1) -th first appearance. During that time, recall that at most n · i · p ( i ) sets are output bythe executions of A . Thus, the number of new instances of B launched by C between the twooutputs is bounded by n · i · p ( i ) . Every such instance runs for at most i · O ( n ) · i · p ( i ) time(as p is non-decreasing). In total, C runs for at most n · i · p ( i ) · i · O ( n ) · i · p ( i ) = O ( n ) · i · p ( i ) time steps.The space consumed by C is determined by the space required by at most two independentinstances of B running in the same time which is · O ( n ) · s , and the size of the counter whichis O ( n ) . Thus C runs in O ( n ) · s space.The algorithms given in [GHKV15, GHK +
16, GHK +
18] for line graphs, graphs of girth atleast 7, chordal bipartite graphs, and unit-square graphs rely on the flipping method and runin incremental-polynomial time and exponential space. By directly plugging in Lemma 3.3instead of Lemma 3.2 in the procedure, we obtain the following.
Corollary 3.4.
There is an incremental-polynomial time and polynomial-space algorithm enu-merating minimal dominating sets in line graphs, graphs of girth at least 7, chordal bipartitegraphs, and unit-square graphs.
We now show how the flipping method, and more particularly the existence of an algorithmas required in Lemma 3.3, can be reduced to red-blue domination in comparability graphs.Recall that Lemma 3.3 is stated for general graphs and that the family D to be constructedcan contain arbitrarily many solutions that are not actual children. In [GHKV15], [GHK + + A in line graphs, graphsof girth seven, chordal bipartite graphs and unit square graphs. In these last two cases, theyproved that to obtain an efficient A , it suffices to design an efficient algorithm that enumeratesall the minimal red dominating sets of an appropriate subgraph within the same class. Weconduct a similar analysis to show that, in comparability graphs, it suffices to design an effi-cient algorithm that enumerates all the minimal red dominating sets of a subgraph in whichblue vertices are minimal with respect to the associated poset. Lemma 4.1.
Let G be the comparability graph of a poset P = ( V, (cid:54) ) . Suppose that there is analgorithm B that, given an antichain B of P and a set R ⊆ ↑ B \ B , enumerates with polynomialdelay and polynomial space the set D ( R, B ) of minimal red dominating sets of G ( R, B ) . Thenthere is an algorithm A (cid:48) that, given D ∗ ∈ D ( G ) and u, v ∈ V ( G ) , enumerates with polynomialdelay a family D ⊆ D ( G ) of minimal dominating sets of G with the property that D contains allminimal dominating sets D such that D ∗ = Parent uv ( D ) .Proof. The proof is conducted in the fashion of [GHK + D ∗ of G , an isolated vertex v of G [ D ∗ ] , and a neighbor u of v . Let us assume in thefollowing that u (cid:54) v in P . The dual situation is handled by flipping upside-down the poset.10 w vX uv Z uv uw vR R B Figure 4: A minimal dominating set D (on the left) and its parent D ∗ = Parent uv ( D ) (on theright) represented by black vertices in the underlying poset of a comparability graph. Theedge induced by D and incident to u is depicted by uw .This situation is depicted in Figure 4 (right). We aim to compute using B a family of sets D such that { D ∈ D ( G ) | D ∗ = Parent uv ( D ) } ⊆ D ⊆ D ( G ) .Let R ⊆ ↑ u ∩ D ∗ be the set of upper-neighbors x of u in D ∗ such that x ∈ Priv( D ∗ , x ) ,i.e., these vertices are self-private in D ∗ . Note that in particular, R is an antichain of P , and itcontains v . Let B = V ( G ) \ N [( D ∗ \ R ) ∪ { u } ] be the set of all vertices that are not dominatedanymore when replacing R with u in D ∗ . Note that B ⊆ ↓ R \ R . Finally, let R = ↑ B \ N [ R ] .In particular, there are no edges between R and R . Let us finally set R = ( R \ { v } ) ∪ R .Informally, R forms the set of vertices we can use to dominate B . We exclude v from thatset, since the whole point of the operation is to delete v . We obtain R ⊆ ↑ B \ B , and in fact B ⊆ ↓ R \ R . Note that B is not necessarily an antichain, so we restrict our attention to themaximal elements of B .The notation D ( R ∩ ↑ Max( B ) , Max( B )) is blatantly cumbersome. To simplify the up-coming arguments, we first prove that D ( R ∩ ↑ Max( B ) , Max( B )) is in fact equal to the con-ceptually simpler D ( R, B ) . Claim 4.2.
The sets D ( R, B ) and D ( R ∩ ↑ Max( B ) , Max( B )) are equal.Proof. We recall that B ⊆ ↓ R \ R . As a consequence, R ⊆ ↑ Max( B ) , and it suffices to arguethat D ( R, B ) = D ( R, Max( B )) .We first note that every dominating set of Max( B ) in ↑ Max( B ) is a dominating set of B .Indeed, for any x ∈ B , y ∈ Max( B ) , and z ∈ ↑ Max( B ) , if xy and yz are both edges, then x (cid:54) y and y (cid:54) z , so that xz is an edge. This guarantees D ( R, Max( B )) ⊆ D ( R, B ) .The converse is straightforward in the sense that every dominating set of B is in particu-lar a dominating set of Max( B ) . As we argued above, any subset that dominates Max( B ) dominates B . Therefore, by minimality, no proper subset of a set in D ( R, B ) dominates Max( B ) . Every minimal dominating set of B in R is a minimal dominating of Max( B ) , hence D ( R, B ) ⊆ D ( R, Max( B )) and the conclusion. (cid:121) Let us now describe A (cid:48) . We enumerate all minimal red dominating sets in D ( R, B ) using B with Claim 4.2. For each minimal red dominating set X ∈ D ( R, B ) , we consider the set D (cid:48) = ( D ∗ \ R ) ∪ { u } ∪ X of vertices of G . Note that X may be empty, in which case B = ∅ and D ( R, B ) = {∅} ; that is not an issue. We greedily reduce D (cid:48) into an irredundant set D of G , and output D .This may seem counter-intuitive in an enumeration context, as a greedy reduction typicallydoes not explore all options. However, we will argue later (see Claim 4.6) that D (cid:48) is already11rredundant in all relevant cases, so D = D (cid:48) and the greedy reduction does not affect the poolof children.Let D be the set of all generated sets; we prove in the following four claims that D has thedesired properties. Namely, the correctness of A (cid:48) follows from Claims 4.3 and 4.6. We concludethe proof with the complexity analysis of A (cid:48) . Claim 4.3.
All elements of D are minimal dominating sets of G . Furthermore, there is no repe-titions in D , and |D| = |D ( R, B ) | .Proof. There is a natural bijection between minimal red dominating sets D ( R, B ) and outputs D (taken with multiplicity). We only need to argue two things: that every output is a minimaldominating set, and that there is no repetitions.There is nothing to argue in the case where D ( R, B ) = ∅ , and we assume from now onthat D ( R, B ) is non-empty. Let X ∈ D ( R, B ) . To argue that its corresponding output is aminimal dominating set, it suffices to argue that ( D ∗ \ R ) ∪ { u } ∪ X is a dominating set. Let w be a vertex not dominated by ( D ∗ \ R ) ∪ { u } . By definition, it belongs to B , so w ∈ N [ X ] .Therefore, ( D ∗ \ R ) ∪ { u } ∪ X is a dominating set. Since we output an irredundant subsetof ( D ∗ \ R ) ∪ { u } ∪ X , it follows that the output is a minimal dominating set.Finally, observe that when greedily reducing ( D ∗ \ R ) ∪{ u }∪ X into a minimal dominatingset D , we maintain X ⊆ D as each element of X has a private neighbor in B . In fact, we have D ∩ R = X , which guarantees that a different choice of X would yield a different output D . (cid:121) Claim 4.4.
For any set D ∈ D ( G ) such that D ∗ = Parent uv ( D ) , let X uv and Z uv be the disjointsets defined in the Parent relation, so that D = ( D ∗ ∪ { u } ∪ Z uv ) \ ( X uv ∪ { v } ) . We have X uv ⊆ R \ { v } and Z uv ⊆ R . Additionally, for Y uv = (cid:83) z ∈ Z uv Priv(
D, z ) , we have Y uv ⊆ B .Proof. Recall that Z uv is defined as a set of vertices that lose their private neighbors withrespect to D when adding X uv ∪ { v } to D \ { u } . These private neighbors are the elements ofthe set Y uv .By definition of the Parent relation, G [ D ] contains an edge uw , and v is selected in theset Priv(
D, u ) . Since uw is an edge, one of u (cid:54) w and w (cid:54) u holds. As v ∈ Priv(
D, u ) and w ∈ D , the vertices v and w are incomparable. Since u (cid:54) v , the case w (cid:54) u would lead to acontradiction, and we derive u (cid:54) w .Let us first argue that X uv ⊆ R \ { v } . We have v (cid:54)∈ X uv , so we focus on proving X uv ⊆ R .Recall that X uv ⊆ Priv(
D, u ) \ N [ v ] by definition. Since u (cid:54) v , we derive X uv ⊆ ↑ u ∩ D ∗ . Itremains to argue that x ∈ Priv( D ∗ , x ) for every x ∈ X uv . Since X uv is an independent set byconstruction, we have x ∈ Priv( X uv , x ) . Since X uv ∩ N [ v ] = ∅ , we have x ∈ Priv( X uv ∪{ v } , x ) .Since X uv ⊆ Priv(
D, u ) , we derive x ∈ Priv( X uv ∪{ v }∪ ( D \{ u } ) , x ) , hence x ∈ R . It followsthat X uv ⊆ R .Let us now argue that Z uv ⊆ R and Y uv ⊆ B . Consider z ∈ Z uv , and a private neighbor y of z with respect to D . Note that y ∈ Y uv and that y is considered without loss of generalitysince every element of Y uv is the private neighbor of some element in Z uv with respect to D .Therefore, it suffices to argue that z ∈ R and y ∈ B . Recall that z has no private neighborwith respect to ( D \ { u } ) ∪ X uv ∪ { v } , though y is a private neighbor of z with respectto D , which contains u . It follows that y is in the neighborhood of X uv ∪ { v } , but not inthat of u . Since X uv ∪ { v } ⊆ ↑ u and y (cid:54)∈ ↑ u , we have y (cid:54)∈ ↑ ( X uv ∪ { v } ) . We derive that y ∈ ↓ ( X uv ∪ { v } ) \ N [ u ] . If y (cid:62) z , then z ∈ ↓ ( X uv ∪ { v } ) , which contradicts the fact that thevertices in X uv ∪ { v } are private neighbors of u with respect to D . Consequently, y (cid:54) z . Notethat z (cid:54)∈ N [ R ] . Since R = ↑ B \ N [ R ] , the fact that z ∈ R follows from y ∈ B , which weargue below. 12e have N ( y ) ∩ D ∗ ⊆ X uv ∪ { v } , as the only neighbor of y in D is z . As shown earlier, X uv ⊆ R , hence N ( y ) ∩ D ∗ ⊆ R . Since u (cid:54)∈ N ( y ) and B = V ( G ) \ N [( D ∗ \ R ) ∪ { u } ] , wederive y ∈ B , as desired. It follows that Y uv ⊆ B and Z uv ⊆ R . (cid:121) Claim 4.5.
For any set D ∈ D ( G ) such that D ∗ = Parent uv ( D ) , let X uv and Z uv be the disjointsets defined in the Parent relation, so that D = ( D ∗ ∪ { u } ∪ Z uv ) \ ( X uv ∪ { v } ) . Then the set R ∪ Z uv \ ( X uv ∪ { v } ) is a minimal red dominating set of G ( R, B ) .Proof. Let X = R ∪ Z uv \ ( X uv ∪ { v } ) . By Claim 4.4, we obtain that X ⊆ ( R \ { v } ) ∪ R = R .Therefore, it only remains to argue two things: that X dominates B , and that X is minimal,i.e., that every vertex in X has a private neighbor in B with respect to X .Let y ∈ B . By definition of B , we have N ( y ) ∩ D ∗ ⊆ R ∪ { v } and y (cid:54)∈ N [ u ] . Since D is a dominating set and given how D and D ∗ relate, the vertex y has a neighbor either in R \ ( X uv ∪ { v } ) or in Z uv . In either case, the vertex y has a neighbor in X . We conclude that X dominates B .Let us now argue that every vertex x in X has a private neighbor in B with respect to X .Note that x ∈ D and Priv(
D, x ) (cid:54) = ∅ .Let us first consider the case x ∈ R \ ( X uv ∪ { v } ) . Since u ∈ D , we have Priv(
D, x ) ⊆ N [ x ] \ N [ u ] . Since moreover x ∈ ↑ u we have that Priv(
D, x ) ⊆ ↓ x \ N [ u ] . In particular x (cid:54)∈ Priv(
D, x ) . Let y ∈ Priv(
D, x ) . Then N ( y ) ∩ D = { x } and so N ( y ) ∩ D ∗ ⊆ { x } ∪ X uv ∪{ v } ⊆ R ∪ { v } . Hence y ∈ B . Therefore, every vertex in X ∩ ( R \ ( X uv ∪ { v } )) has a privateneighbor in B with respect to X .We now consider the case x ∈ Z uv . Let y ∈ Priv(
D, x ) . Recall that X uv ∪ { v } and Z uv are non-adjacent. Also y is dominated by D ∗ but not by D ∗ \ ( X uv ∪ { v } ) , and so y (cid:54) = x .Hence y ∈ N ( X uv ∪ { v } ) and so y ∈ N ( R ∪ { v } ) . As N ( y ) ∩ D = { x } and x (cid:54)∈ D ∗ , we have N ( y ) ∩ D ∗ ⊆ X uv ∪ { v } ⊆ R ∪ { v } . Hence y ∈ B . Consequently every x ∈ X has a privateneighbor in B , and so X ∈ D ( R, B ) . (cid:121) The core statement now follows easily.
Claim 4.6.
The set D contains every D ∈ D ( G ) such that D ∗ = Parent uv ( D ) .Proof. Let D ∈ D ( G ) be such that D ∗ = Parent uv ( D ) . Then D ∗ = (( D \ { u } ) ∪ X uv ∪ { v } ) \ Z uv , where X uv and Z uv are the disjoint sets defined in the Parent relation. Consider the set Y uv = (cid:83) z ∈ Z uv Priv(
D, z ) .From Claim 4.5, we obtain that R ∪ Z uv \ ( X uv ∪ { v } ) is a minimal dominating set of G ( R, B ) . Consequently, B outputs R ∪ Z uv \ ( X uv ∪ { v } ) , which prompts A (cid:48) to consider theset ( D ∗ \ R ) ∪ { u } ∪ ( R ∪ Z uv \ ( X uv ∪ { v } )) = ( D ∗ ∪ { u } ∪ Z uv ) \ ( X uv ∪ { v } ) = D as acandidate to be output after being greedily reduced into an irredundant set. Note that the setis already irredundant, so D is generated. In other words, we have D ∈ D as desired. (cid:121) Each of the sets R , R , R and B can be constructed in polynomial time in n . The same goesfor computing and reducing D (cid:48) into a minimal dominating set given X ∈ D ( R, B ) . In addition, R ∩ ↑ Max( B ) and Max( B ) can be computed in polynomial time in n , and by Claim 4.2 theset D ( R, B ) can be generated with polynomial delay using B .This concludes the proof.We conclude this section with the following corollary of Lemma 3.3 and Lemma 4.1, ob-serving that the antichain B of a poset P is minimal in P [ ↑ B ] . Note that while the algorithm A (cid:48) only computes the children for a fixed pair u, v , there are at most n such pairs. By running A (cid:48) for every pair consecutively, we output all children, with each child being repeated possibly13 times. We repeat the trick of Section 3.3 and get rid of repetitions, to the cost of squaringthe time complexity. The obtained algorithm now performs in incremental-polynomial timeand polynomial space, as desired. Theorem 4.7.
Let G be a graph class where every graph is comparability. If there is an incre-mental-polynomial time and polynomial-space algorithm enumerating minimal red dominatingsets in red-blue graphs of G whose blue vertices are minimal with respect to the associated poset,then there is one enumerating minimal dominating sets in graphs of G . We mentioned in Section 2 that Red-Blue-Dom-Enum is already as hard as Trans-Enum evenrestricted to bipartite graphs, hence to comparability graphs. We show nevertheless that theproblem can be solved in incremental-polynomial time under various restrictions on the redand blue sets (satisfying those of Lemma 4.1), as well as on the underlying poset. More pre-cisely, we show that, for any fixed integer t , Red-Blue-Dom-Enum is tractable in the compa-rability graph of S t -free posets, whenever the blue elements are minimal in the poset. Sinceposets of bounded dimension do not contain any S p for some large enough p , we can derivethe same for bounded dimension posets.The key observation is that instances of red-blue domination in that case are of boundedconformality. As a corollary, we can use the algorithm of Khachiyan et al. in [KBEG07] to solvethem in incremental-polynomial time. This yields by Theorem 4.7 an incremental-polynomialtime algorithm enumerating minimal dominating sets in the comparability graphs of theseposets.Let us recall the notion of conformality introduced by Berge in [Ber84]. Informally, ahypergraph has small conformality when the property of not being contained in a hyperedgeis witnessed by small subsets, in the sense that if a set is not contained in any hyperedge, thensome small subset of it is not either. More formally, let c be an integer and H be a hypergraph.We say that H is of conformality c if the following property holds for every subset X ⊆ V ( H ) : X is contained in a hyperedge of H whenever each subset of X of cardinality at most c iscontained in a hyperedge of H . Remember from Section 2 that a hypergraph H is Sperner if E (cid:54)⊆ E for any two distinct hyperedges E , E in H .Khachiyan, Boros, Elbassioni, and Gurvich proved the following. Theorem 5.1 ([KBEG07]) . The minimal transversals can be enumerated in incremental-poly-nomial time but using exponential space in Sperner hypergraphs of bounded conformality.
Our result is a corollary of the following, which basically says that in our setting, hyper-graphs with large conformality induce large S t in the underlying poset. Lemma 5.2.
Let P = ( V, (cid:54) ) be a poset and B = Min( P ) . Let H be the Sperner hypergraphdefined by V ( H ) = P − B and E ( H ) = Min ⊆ {↑ x \ { x } | x ∈ B } . If H is not of conformality t − for some integer t , then P contains S t as a suborder.Proof. Assume that H is not of conformality t − , i.e., there is a red subset X ⊆ V ( H ) that isnot contained in a hyperedge of H , and such that every subset Y ⊆ X of size at most t − iscontained in a hyperedge of H . We consider X = { x , . . . , x p } of minimum cardinality. Then p (cid:62) t and to every x i ∈ X corresponds a hyperedge E i of H such that E i ∩ X = { X \ { x i }} .Indeed, if no such E i exists for some x i ∈ X , then X (cid:48) = X \{ x i } is not contained in a hyperedgeof H , and still every subset Y ⊆ X (cid:48) of size at most t − is, contradicting the minimality of X .14et us show that X is an antichain of P . Suppose toward a contradiction that X is not anantichain and contains two elements x i , x j such that x i < x j . As R ⊆ ↑ B \ B , every hyperedgeof H that contains x i contains x j . We conclude that X ⊆ E i , a contradiction. Hence X is anantichain.Consider now the antichain { e , . . . , e p } ⊆ B corresponding to E , . . . , E p in the poset P ,i.e., such that E i = ↑ e i \ { e i } for i ∈ { , . . . , p } . Then the set { e , x , . . . , e p , x p } induces S p as suborder, p (cid:62) t .Lemmas 3.3, 4.1, and 5.2 together yield the following corollary. Corollary 5.3.
There is an algorithm enumerating, for every fixed integer t , the minimal domi-nating sets in comparability graphs of S t -free posets. Theorem 1.2 follows from Corollary 5.3 and the observation that a poset containing S t hasdimension at least t . Unfortunately, as the algorithm in [KBEG07] requires exponential space,Corollary 5.3 does not yield a polynomial-space algorithm.Finally, we note that while it is not clear whether the comparability graphs of bounded di-mension posets are of bounded LMIM-width (and hence covered by the algorithm in [GHK + S t -free posets are not. We give a polynomial-delay algorithm enumerating minimal dominating sets in the incom-parability graphs of bounded dimension posets, given with linear extensions witnessing thedimension. Although it is not necessary, we present a geometrical representation of the in-comparability graphs that we find useful while working with them.Let P = ( V, (cid:54) ) be a poset on n elements and of dimension at most d . Let (cid:54) , . . . , (cid:54) d bea sequence of linear orders witnessing it. Thus, we have x (cid:54) y in P if and only if x (cid:54) i y for each i ∈ { , . . . , d } . Consider d distinct vertical lines L , . . . , L d in the plane, sorted fromleft to right in that order. For each i ∈ { , . . . , d } , we distinguish n points on L i and labelthem bottom-up with elements of P sorted by (cid:54) i . Now for each element v in P , we definea piecewise linear curve v consisting of d − segments and connecting points labelled v onconsecutive lines. It is a folklore observation, see e.g. [GRU83], that the incomparability graphof P is the intersection graph of this family of curves. An example for d = 4 is given in Figure 5.In the remaining of this section, we assume that a poset P = ( V, (cid:54) ) of dimension d is givenand we are also given the total orders (cid:54) , . . . , (cid:54) d witnessing the dimension of P . As describedabove we fix the lines L , . . . , L d , and the piecewise linear curves representing each elementof P . Let G be the incomparability graph of P .For a non-empty subset S of elements of P and i ∈ { , . . . , d } , we define L i ( S ) to be themaximum element of S in (cid:54) i . We call vertices upwards from S the elements of the set U ( S ) = { v ∈ V \ S | L i ( S ) < i v for some i ∈ { , . . . , d }} . A set D is an upward extension of S if S ⊆ D and D \ S ⊆ U ( S ) .Let S be a subset of elements of P of size at least d . We call the first layer of S the tuple A ( S ) = ( a , . . . , a d ) so that a = L ( S ) , and for every i ∈ { , . . . , d } , a i = L i ( S \ { a , . . . , a i − } ) . Note that by this definition it might happen that a i (cid:54) = L i ( S ) . This is in particular the case if L i ( S ) = L j ( S ) for some i, j ∈ { , . . . , d } with j < i . The second layer of S is the set B ( S ) = L L L P G Figure 5: A poset P and its incomparability graph G as an intersection graph of curves inducedby four linear extensions witnessing the dimension. A ( S \ A ( S )) . The third layer of S is the set C ( S ) = A ( S \ ( A ( S ) ∪ B ( S )) . Note that since | S | (cid:62) d , the three layers are well-defined. We call the border of S the concatenation T ( I ) = ( a , . . . , a d , b , . . . , b d , c , . . . , c d ) of these three layers.We say that I can be extended upwards into a minimal dominating set whenever there is anupward extension of I that is a minimal dominating set of G . In the following, we aim to decidein polynomial time whether a given irredundant set I in G can be extended upwards into aminimal dominating set. When the given set I is of size at most d , say I = { x , . . . , x p } and p (cid:54) d , then this can be done efficiently by checking for all the tuples ( y , . . . , y p ) ∈ Priv(
I, x ) × · · · × Priv(
I, x p ) whether U ( I ) \ N [ y , . . . , y p ] dominates G − N [ I ] or not. Asingle tuple like that could be verified in O ( n ) time. Since the number of tuples is no morethan n p , the total time is O ( n d +2 ) . If there is such a tuple ( y , . . . , y p ) , then U ( I ) \ N [ y , . . . , y p ] can be greedily reduced into a minimal set X so that I ∪ X is a minimal dominating set of G . Otherwise, we know that I cannot be extended as we explored all the possibilities for I to keep its private neighbors in an upward extension. We show that the same technique canbe applied for irredundant sets of arbitrary size. The key insight is that it is enough to checkwhether we can extend I into a dominating set so that all elements in the border T ( I ) keep aprivate neighbor. Theorem 6.1.
Let I be an irredundant set of G of size at least d and let T ( I ) = ( t , . . . , t d ) .Then I can be extended upwards into a minimal dominating set of G if and only if there existsa tuple ( w , . . . , w d ) ∈ Priv(
I, t ) × · · · × Priv(
I, t d ) such that U ( I ) \ N [ w , . . . , w d ] is adominating set of G − N [ I ] .Proof. First, we prove the forward implication. Suppose that I can be extended upwards intoa minimal dominating set of G and let X be an upward extension of I such that D = I ∪ X is a minimal dominating set of G . Then X dominates G − N [ I ] and Priv(
D, u ) (cid:54) = ∅ for every u ∈ D . Since D is a minimal dominating set there exists ( w , . . . , w d ) in Priv(
D, t ) × · · · × riv( D, t d ) . Note that Priv(
D, t i ) ⊆ Priv(
I, t i ) for each i ∈ { , . . . , d } . This completes theproof of the forward implication.We turn to argue the backward implication. Suppose that there exists ( w , . . . , w d ) ∈ Priv(
I, t ) × · · · × Priv(
I, t d ) such that X := U ( I ) \ N [ w , . . . , w d ] dominates G − N [ I ] .Thus D = I ∪ X dominates G . In order to conclude that I extends upwards into a minimaldominating set of G , all we need to see is that each element u in I has a private neighbor withrespect to D , i.e., Priv(
D, u ) (cid:54) = ∅ . Since X avoids N [ w , . . . , w d ] , we have that w i ∈ Priv(
D, t i ) for each i ∈ { , . . . , d } . Consider any element u in I \ T ( I ) . Since I is irredundant, we canfix v ∈ Priv(
I, u ) . We shall show that v ∈ Priv(
D, u ) .For convenience, we split the sequence ( t , . . . , t d ) into ( a , . . . , a d ) , ( b , . . . , b d ) , and ( c , . . . , c d ) , so it relates to the initial layers A ( I ) , B ( I ) , and C ( I ) , respectively.In order to get a contradiction, suppose that there is x ∈ X such that x and v are adjacentin G , i.e., x and v intersect. In particular, there is some q ∈ { , . . . , d } such that x < q v .We claim that v < b k in P for every k ∈ { , . . . , d } .Since v ∈ Priv(
I, u ) and b k ∈ I , v and b k do not intersect. Therefore, either v < b k in P or v > b k in P . Assume toward a contradiction that b k < v in P . Since u and v intersect, we canfix p ∈ { , . . . , d } such that v < p u . Recall that u ∈ I \ T ( I ) . Thus, by the definition of thethird layer C ( I ) we have u < p c p . Hence v < p u < p c p . Since v ∈ Priv(
I, u ) and c ∈ I , wehave that c p and v stay disjoint. We deduce that v < c p in P . This contradicts our assumptionas b k < v < c p in P but no element of the second layer can be below an element of the thirdlayer. This completes the proof of the claim.In particular, we have x < q v < q b k for every k ∈ { , . . . , d } .Consider the tuple ( s , . . . , s d ) = ( w d +1 , . . . , w d ) of private neighbors of the elements of ( b , . . . , b d ) . We claim that there exist indices α, β ∈ { , . . . , d } such that b α < q s β . Towards the contradiction, assume that s i < q b j for all i, j ∈ { , . . . , d } . Since s i stays disjointfrom b j for i (cid:54) = j , we conclude that s i < b j in P for every i (cid:54) = j . Since s i intersects b i , thereis an index t ( i ) so that b i < t ( i ) s i , for each i ∈ { , . . . , d } . Clearly, the values t ( i ) must be alldistinct for i ∈ { , . . . , d } . This way, we need to take d distinct values for t i ’s and because ofour assumption all of them are in { , . . . , d } \ { q } , a contradiction. This proves the claim.We concluded so far that x < q v < q b α < q s β . Now recall that x ∈ X ⊆ U ( I ) . Thus, there must be some p ∈ { , . . . , d } with L p ( I ) < p x. Recall also that s β intersects b β , so we can fix t ∈ { , . . . , d } such that s β < t b β . By the definitionof the first two layers, we have that b β < t a t . Thus, s β < t a t . Since s β ∈ Priv(
I, b β ) and a t ∈ I ,we get that s β and a t are disjoint. Therefore, s β < a t in P . In particular, we get s β < p a t and s β < p a t (cid:54) p L p ( I ) < p x. The two inequalities s β > q x and s β < p x imply that x intersects s β . Thus x and s β areadjacent in G . This contradicts the assumption that X ⊆ U ( I ) \ N [ s β ] and completes the proofof the backward implication. 17e deduce the next corollary, by guessing a good tuple ( w , . . . , w d ) as in Theorem 6.1 incase when | I | (cid:62) d , and checking for such a tuple whether the set U ( I ) \ N [ w , . . . , w d ] is adominating set of G − N [ I ] . Space is polynomial as we only iterate through neighborhoods. Corollary 6.2.
There is an algorithm that, given an irredundant set I of G , decides in O ( n d +2 ) time and polynomial space whether I can be extended upwards into a minimal dominating set. We are now ready to describe an algorithm based on flashlight search enumerating minimaldominating sets in the incomparability graphs of bounded dimension posets. We refer thereader to [CS18, SM19] for more details on this classical technique. The following
Parent relation will be used by the algorithm to construct the minimal dominating sets one vertex ata time, starting from the emptyset.
Definition 6.3.
Let I be a non-empty irredundant set of G that can be extended upwards into aminimal dominating set. We call parent of I the unique irredundant set I ∗ = Parent( I ) obtainedby removing vertex L ( I ) from I , i.e., the greatest vertex v in I with respect to < . Observe that every minimal dominating set D of G is an irredundant set of G that can beextended upwards into a minimal dominating set (the extension being D itself), with no chil-dren. Conversely, an irredundant set that can be extended upwards into a minimal dominatingset, with no children, is necessarily a minimal dominating set.Consequently, the Parent relation as introduced in Definition 6.3 defines a tree T whosenodes are irredundant sets of G that can be extended upwards into minimal dominating sets,root is the empty set, leaves are minimal dominating sets of G , and where there is an edgebetween two irredundant sets I ∗ and I if I ∗ = Parent( I ) . As in Section 3, the enumerationproceeds with what boils down to a DFS of T initiated at the empty set. When visiting a node I ∗ ∈ V ( T ) , the algorithm seeks the children of I as follows. It checks for every candidate vertex v ∈ U ( I ∗ ) whether I ∗ ∪ { v } can be extended upwards into a minimal dominating set, usingCorollary 6.2, and whether the obtained set is a child of I ∗ , using Definition 6.3. Whenever itis the case, the algorithm “pauses” the generation of children of I ∗ , and generates children of I ∗ ∪{ v } . When the generation on I ∗ ∪{ v } is complete, the algorithm “resumes” the generationon I ∗ . During this procedure, only the leaves of T , hence the minimal dominating sets of G ,are output by the algorithm. Duplications are implicitly avoided by the structure of T .The delay time complexity is bounded by twice the depth of the tree (the maximal distancebetween two leaves in T ), times the time complexity of solving the extension problem andchecking the Parent relation for every candidate vertex v . This sums up to n · O ( n d +2 + n ) · n = O ( n d +4 ) Space complexity is polynomial as we only need to store for each node W ∈ T from the rootto the current node I ∗ ∈ T the data of the (paused) execution of the children generation onnode W .We conclude to Theorem 1.1 that we restate here with the complexity. Theorem 6.4.
There is an algorithm that, given the incomparability graph G of an n -elementposet P of dimension d , together with d linear orders witnessing the dimension of P , enumeratesall minimal dominating sets of G with delay O ( n d +4 ) and using polynomial space. Discussions
We provided an incremental-polynomial (resp. polynomial-delay) algorithm enumerating theminimal dominating sets in the comparability (resp. incomparability) graphs of bounded di-mension posets. Recall that the complexity of Trans-Enum, which reduces to Dom-Enumin co-bipartite graphs, remains widely open. As incomparability graphs include co-bipartitegraphs, dropping the dimension in Theorem 1.1 is one of the most important algorithmic chal-lenges in enumeration. On the other hand, dropping the dimension in Theorem 1.2 seems amore tractable, though fascinating challenge.The algorithm provided by Corollary 5.3 covers in fact all comparability graphs of S t -freeposets, not just those of bounded dimension. The two first authors initiated in [BDH + H -free graphs. Despite the fact thatthey encapsulate all the hardness of Dom-Enum, incomparability graphs have a restrictivestructure. What can we say about H -free incomparability graphs? Due to co-bipartite graphs,this question is only interesting for a co-bipartite H . To match Theorem 1.2, it is temptingto wonder what happens for incomparability graphs of S t -free posets. Our proof clearly doesnot extend naturally, as it crucially relies on the bounded dimension representation—recall thatnot all S t -free posets have small dimension [Tro92]. However, we believe that an extensionwould be possible with different tools. Conjecture 7.1.
For every t , there is an output-polynomial time algorithm for Dom-Enum inincomparability graphs of S t -free posets. A directly easier conjecture is the following:
Conjecture 7.2.
For every p , there is an output-polynomial time algorithm for Dom-Enum in K p -free incomparability graphs. Indeed, note that an S p suborder in a poset yields a K p in the corresponding incom-parability graph. Symmetrically, Corollary 5.3 implies that for every p , there is an output-polynomial time algorithm for Dom-Enum in K p,p -free comparability graphs. Conjecture 7.2holds trivially for p = 1 (all such graphs are cliques). It is in fact also true for p = 2 , as K -freegraphs admit an output-polynomial time algorithm [BDH + p = 3 is widely openwithout the incomparability assumption [BDH + H . The case H = C is the smallest open case for general graphs, but C -freeincomparability graphs are interval graphs [GH64]; there Dom-Enum admits a linear delayalgorithm [KLM + H being two cliques witha matching between them, or H being a clique minus a matching. Instead of debating whichgeneralizations are most sensible, we state the following bold conjecture: Conjecture 7.3.
For any co-bipartite H , there is an output-polynomial time algorithm for Dom-Enum in H -free incomparability graphs. There is in fact no blatant reason why the incomparability condition would be necessaryhere. Other natural parameters for the classes considered in this paper concern the height andwidth of the poset. The height (resp. width ) of a poset is the size of its maximum chain (resp. an-tichain). Since those are related to the largest size of a clique, the algorithm in [BDH +
19] cov-ers the comparability graphs of posets of bounded height and the incomparability graphs ofposets of bounded width. We can show easily that Dom-Enum is tractable in the comparabilitygraphs of posets of bounded width. 19 roposition 7.4.
Let G be the comparability graph of a poset P = ( V, (cid:54) ) of width α , and D bea minimal dominating set of G . Then | D | (cid:54) α .Proof. Consider for a contradiction a minimal dominating set D of G with | D | > α . Then D contains three elements x, y, z such that x < y < z . As a consequence, N [ y ] ⊆ N [ x ] ∪ N [ z ] ,which contradicts Priv(
D, y ) (cid:54) = ∅ .Proposition 7.4 guarantees that a brute-force test of all small subsets yields a polynomial-time algorithm enumerating minimal dominating sets in the comparability graph of posets ofbounded width.As for incomparability graphs of posets of height , we consider the incompatibilities of abipartite order and observe that all co-bipartite graphs can be represented as incomparabilitygraphs of a poset of height at most . Therefore, bounded height is not a helpful parameter forincomparability graphs. A more interesting question is perhaps whether restricting posets tolattices yields efficient algorithms, both for comparability and incomparability graphs.Our algorithm for incomparability graphs of bounded dimension relies heavily on theirgeometric representation. Geometric graphs seem to be understudied in this context, and thesmallest open case is presumably that of unit disk graphs. References [BDH +
19] Marthe Bonamy, Oscar Defrain, Marc Heinrich, Michał Pilipczuk, and Jean-Florent Raymond. Enumerating minimal dominating sets in K t -free graphs andvariants. arXiv preprint arXiv:1810.00789, to appear in ACM Transactions on Algo-rithms , 2019.[BDHR19] Marthe Bonamy, Oscar Defrain, Marc Heinrich, and Jean-Florent Raymond. Enu-merating minimal dominating sets in triangle-free graphs. In . Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, 2019.[BEGK04] Endre Boros, Khaled Elbassioni, Vladimir Gurvich, and Leonid Khachiyan.Generating maximal independent sets for hypergraphs with bounded edge-intersections. In Latin American Symposium on Theoretical Informatics , pages488–498. Springer, 2004.[Ber84] Claude Berge.
Hypergraphs: combinatorics of finite sets , volume 45. Elsevier, 1984.[CHvHK13] Jean-François Couturier, Pinar Heggernes, Pim van’t Hof, and Dieter Kratsch.Minimal dominating sets in graph classes: combinatorial bounds and enumera-tion.
Theoretical Computer Science , 487:82–94, 2013.[CKP +
19] Nadia Creignou, Markus Kröll, Reinhard Pichler, Sebastian Skritek, and HeribertVollmer. A complexity theory for hard enumeration problems.
Discrete AppliedMathematics , 2019.[Cou09] Bruno Courcelle. Linear delay enumeration and monadic second-order logic.
Dis-crete Applied Mathematics , 157(12):2675–2700, 2009.[CS18] Florent Capelli and Yann Strozecki. Enumerating models of dnf faster: breakingthe dependency on the formula size. arXiv preprint arXiv:1810.04006 , 2018.20DM41] Ben Dushnik and Edwin W. Miller. Partially ordered sets.
American journal ofmathematics , 63(3):600–610, 1941.[DN19] Oscar Defrain and Lhouari Nourine. Neighborhood inclusions for minimal dom-inating sets enumeration: Linear and polynomial delay algorithms in P -free and P -free chordal graphs. In . Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, 2019.[EG95] Thomas Eiter and Georg Gottlob. Identifying the minimal transversals of a hy-pergraph and related problems. SIAM Journal on Computing , 24(6):1278–1304,1995.[EGM03] Thomas Eiter, Georg Gottlob, and Kazuhisa Makino. New results on monotonedualization and generating hypergraph transversals.
SIAM Journal on Computing ,32(2):514–537, 2003.[EMG08] Thomas Eiter, Kazuhisa Makino, and Georg Gottlob. Computational as-pects of monotone dualization: A brief survey.
Discrete Applied Mathematics ,156(11):2035–2049, 2008.[FGPS08] Fedor V. Fomin, Fabrizio Grandoni, Artem V. Pyatkin, and Alexey A. Stepanov.Combinatorial bounds via measure and conquer: Bounding minimal dominatingsets and applications.
ACM Transactions on Algorithms , 5(1):9, 2008.[FK96] Michael L. Fredman and Leonid Khachiyan. On the complexity of dualization ofmonotone disjunctive normal forms.
Journal of Algorithms , 21(3):618–628, 1996.[GH64] Paul C. Gilmore and Alan J. Hoffman. A characterization of comparability graphsand of interval graphs.
Canadian Journal of Mathematics , 16:539–548, 1964.[GHK +
16] Petr A. Golovach, Pinar Heggernes, Mamadou M. Kanté, Dieter Kratsch, and Yn-gve Villanger. Enumerating minimal dominating sets in chordal bipartite graphs.
Discrete Applied Mathematics , 199:30–36, 2016.[GHK +
18] Petr A. Golovach, Pinar Heggernes, Mamadou M. Kanté, Dieter Kratsch, Sigve H.Sæther, and Yngve Villanger. Output-polynomial enumeration on graphs ofbounded (local) linear MIM-width.
Algorithmica , 80(2):714–741, 2018.[GHKV15] Petr A. Golovach, Pinar Heggernes, Dieter Kratsch, and Yngve Villanger. An in-cremental polynomial time algorithm to enumerate all minimal edge dominatingsets.
Algorithmica , 72(3):836–859, 2015.[GKLS19] Petr A. Golovach, Dieter Kratsch, Mathieu Liedloff, and Mohamed Yosri Sayadi.Enumeration and maximum number of minimal dominating sets for chordalgraphs.
Theoretical Computer Science , 783:41–52, 2019.[GRU83] Martin C. Golumbic, Doron Rotem, and Jorge Urrutia. Comparability graphs andintersection graphs.
Discrete Mathematics , 43(1):37–46, 1983.[JYP88] David S. Johnson, Mihalis Yannakakis, and Christos H. Papadimitriou. On gener-ating all maximal independent sets.
Information Processing Letters , 27(3):119–123,1988. 21KBEG07] Leonid Khachiyan, Endre Boros, Khaled Elbassioni, and Vladimir Gurvich. On thedualization of hypergraphs with bounded edge-intersections and other relatedclasses of hypergraphs.
Theoretical Computer Science , 382(2):139–150, 2007.[KKP18] Mamadou M. Kanté, Kaveh Khoshkhah, and Mozhgan Pourmoradnasseri. Enu-merating minimal transversals of hypergraphs without small holes. In . SchlossDagstuhl-Leibniz-Zentrum fuer Informatik, 2018.[KLM +
13] Mamadou M. Kanté, Vincent Limouzy, Arnaud Mary, Lhouari Nourine, andTakeaki Uno. On the enumeration and counting of minimal dominating sets ininterval and permutation graphs. In
International Symposium on Algorithms andComputation , pages 339–349. Springer, 2013.[KLM + International Workshop on Graph-Theoretic Conceptsin Computer Science , pages 138–153. Springer, 2015.[KLM + Workshop on Algorithms and Data Structures , pages 446–457.Springer, 2015.[KLMN14] Mamadou M. Kanté, Vincent Limouzy, Arnaud Mary, and Lhouari Nourine. Onthe enumeration of minimal dominating sets and related notions.
SIAM Journalon Discrete Mathematics , 28(4):1916–1929, 2014.[MU04] Kazuhisa Makino and Takeaki Uno. New algorithms for enumerating all maximalcliques. In
Scandinavian workshop on algorithm theory , pages 260–272. Springer,2004.[SM19] Yann Strozecki and Arnaud Mary. Efficient enumeration of solutions producedby closure operations.
Discrete Mathematics & Theoretical Computer Science , 21,2019.[Str19] Yann Strozecki. Enumeration complexity.
Bulletin of EATCS , 1(129), 2019.[TIAS77] Shuji Tsukiyama, Mikio Ide, Hiromu Ariyoshi, and Isao Shirakawa. A new algo-rithm for generating all the maximal independent sets.
SIAM Journal on Comput-ing , 6(3):505–517, 1977.[Tro92] William T. Trotter.