Finding Optimal Triangulations Parameterized by Edge Clique Cover

We consider problems that can be formulated as a task of finding an optimal triangulation of a graph w.r.t. some notion of optimality. We present algorithms parameterized by the size of a minimum edge clique cover ($cc$) to such problems. This parameterization occurs naturally in many problems in this setting, e.g., in the perfect phylogeny problem $cc$ is at most the number of taxa, in fractional hypertreewidth $cc$ is at most the number of hyperedges, and in treewidth of Bayesian networks $cc$ is at most the number of non-root nodes. We show that the number of minimal separators of graphs is at most $2^{cc}$, the number of potential maximal cliques is at most $3^{cc}$, and these objects can be listed in times $O^*(2^{cc})$ and $O^*(3^{cc})$, respectively, even when no edge clique cover is given as input; the $O^*(\cdot)$ notation omits factors polynomial in the input size. These enumeration algorithms imply $O^*(3^{cc})$ time algorithms for problems such as treewidth, weighted minimum fill-in, and feedback vertex set. For generalized and fractional hypertreewidth we give $O^*(4^m)$ time and $O^*(3^m)$ time algorithms, respectively, where $m$ is the number of hyperedges. When an edge clique cover of size $cc'$ is given as a part of the input we give $O^*(2^{cc'})$ time algorithms for treewidth, minimum fill-in, and chordal sandwich. This implies an $O^*(2^n)$ time algorithm for perfect phylogeny, where $n$ is the number of taxa. We also give polynomial space algorithms with time complexities $O^*(9^{cc'})$ and $O^*(9^{cc + O(\log^2 cc)})$ for problems in this framework.


Introduction
A graph is chordal if it has no induced cycle of length at least four. A triangulation of a graph G is a chordal supergraph of G on the same vertex set. Many graph problems can be formulated as a problem of finding an optimal triangulation of the graph with respect to some notion of optimality. For example, computing the treewidth of a graph corresponds to finding a triangulation with the smallest size of a maximum clique, and computing the minimum fill-in corresponds to finding a triangulation with the least number of edges.
An edge clique cover of a graph G is a set of cliques of G such that each edge of G is contained in at least one of the cliques. In this article, we give fixed-parameter algorithms for optimal triangulation problems parameterized by the size of a minimum edge clique cover of the graph, denoted by cc, and by the size of an edge clique cover given as an input, denoted by cc . Our algorithms are based on the framework of potential maximal cliques [5,15,17,21,35].
A minimal triangulation of a graph G is a triangulation of G that has no subgraph that is a triangulation of G. A potential maximal clique (PMC) of a graph G is a set of vertices Ω ⊆ V (G) such that there exists a minimal triangulation H of G where Ω is a maximal clique. By the results of Bouchitté and Todinca [5] and Fomin, Kratsch, Todinca, and Villanger [15], a large class of optimal triangulation problems can be solved by first enumerating all PMCs of the graph and then performing dynamic programming over them, with time complexity that is linear in the number of PMCs and polynomial in the size of the graph. Therefore the main focus of this article is on bounding the number of PMCs based on edge clique cover and giving a corresponding enumeration algorithm.

Interpretations of cc
While in general the parameter cc could be considered non-standard, it has natural interpretations in at least three settings in which algorithms for finding optimal triangulations are applied: width parameters of hypergraphs, phylogenetics, and probabilistic inference. The reason that cc is a natural choice in these settings is that the input graph is constructed as a union of cliques, with the goal of each clique W representing a constraint of type "the triangulation must contain a maximal clique Ω with W ⊆ Ω ". Maximal cliques of a triangulation in turn correspond to bags of a tree decomposition. Next we discuss these three settings in more detail. The discussion is summarized in Table 1.
A hypergraph is a structure like a graph, but instead of edges that are sets of two vertices, a hypergraph has hyperedges that are arbitrary subsets of the vertex set. Width parameters of hypergraphs, including primal treewidth, generalized hypertreewidth, and fractional hypertreewidth are central structural parameters of constraint satisfaction problems (CSPs) [19,20]. In particular, they measure how well a hypergraph can be decomposed by cuts whose intersection with a solution has a simple characterization, allowing dynamic programming. The computation of each of these parameters can be formulated as an optimal triangulation problem on the Problem Parameter Relation Computing width parameters of hypergraphs: primal treewidth, generalized hypertreewidth, and fractional hypertreewidth Number of hyperedges m cc ≤ m Perfect phylogeny problem and its optimization variant Number of taxa n cc ≤ n Computing treewidth of a moral graph of Bayesian network Number of non-root nodes n cc ≤ n Table 1 Relationships between the parameter minimum edge clique cover (cc) and natural parameters in optimal triangulation problems.
primal graph of the hypergraph [35]. The primal graph of a hypergraph is a graph constructed by inducing a clique on each hyperedge, and therefore the size of its minimum edge clique cover is at most m, the number of hyperedges. For example, the primal treewidth of a hypergraph is the treewidth of the primal graph. Generalized and fractional hypertreewidth are more general parameters, but their definitions are technical and postponed to Section 2.3.
In phylogenetics a central problem is to construct an evolutionary tree of a set of n taxa (i.e. species) based on k characters (i.e. attributes) describing them [39]. For example, when the character data is drawn from molecular sequences, the number of characters k can be much larger than the number of taxa n [27]. In the weighted minimum fill-in problem the input is a graph G and a weight function on pairs of vertices of G, and the task is to find a triangulation H of G so that the total weight of edges in E(H) \ E(G) is minimized. Deciding if the taxa admit a perfect phylogeny and an optimization version of it can be reduced to the weighted minimum fill-in problem on the partition intersection graph of the characters [4,21,39]. The partition intersection graph has a vertex for each character-state pair, and its edges are constructed by inducing a clique corresponding to each taxon [39]. Hence the size of its minimum edge clique cover is at most n, the number of taxa.
A third setting in which parameterization by cc is motivated is probabilistic inference. Given a Bayesian network, the first step of efficient probabilistic inference algorithms is to compute a tree decomposition of small width of the moral graph of the Bayesian network [25,26]. The moral graph is constructed as a union of n cliques, where n is the number of non-root nodes of the Bayesian network [26], and thus the size of its minimum edge clique cover is at most n .

Connections to Practice
This article is also directly motivated by observations in practice. Starting from the Second Parameterized Algorithms and Computational Experiments challenge (PACE 2017) [11], algorithm implementations based on potential maximal cliques have been observed to outperform other exact algorithm implementations on problems formulated as finding optimal triangulations [28,30,31,36,41,42]. In particular, this work is motivated by experimental observations of the usefulness of potential maximal cliques in computing hypergraph parameters [28,30] and in phylogenetics [28,31].
Our parameterization can be justified by real-world instances with small edge clique covers. In the context of hypergraph parameters, 708 of the 3072 hypergraphs in the standard HyperBench library [12] have m < n/2, where n is the number of vertices and m is the number of hyperedges. In the context of phylogenetics, an instance describing mammal mitochondrial sequences [22] has 7 taxa while its partition intersection graph has 245 vertices and an instance describing Indo-European languages [37] has 24 taxa while its partition intersection graph has 864 vertices. In the context of Bayesian networks, the Bayesian network "Andes" [9], accessed from the standard BNlearn repository [38], has 223 nodes of which 134 are non-root.
To study the exact values of cc on well-known treewidth and minimum fillin benchmarks, we computed minimum edge clique covers of graphs from PACE 2017 [11], which had tracks for both treewidth and minimum fill-in. The treewidth track had 200 available test instances and the minimum fill-in track 100. All of the instances are based on real-world applications [11]. We attempted to compute minimum edge clique covers of all of the 300 instances using Bron-Kerbosch algorithm [7] for maximal clique enumeration and CPLEX [24] for solving the resulting set cover problem. We managed to compute the minimum edge clique cover of 294 of the instances. Figure 1 shows the relations of minimum edge clique cover and the number of vertices in these instances. Most of the instances have minimum edge clique cover between n/2 and n, where n is the number of vertices. In 75 of the instances cc < n/2, which is roughly the asymptotic threshold where our bounds for minimal separators and potential maximal cliques are better than known bounds by n [17].

Techniques
The algorithms that we design in this article are based on the framework of potential maximal cliques (PMCs) [5,15]. Algorithms in this framework typically consist of two phases. In the first phase the set Π (G) of PMCs of the input graph G is enumerated, and in the second phase dynamic programming over the PMCs is performed in time O * (|Π (G)|). The second phase of the PMC framework has already been formulated for all of the problems that we consider [15,17,18,21,35], so our O * (3 cc ) time algorithms follow from an O * (3 cc ) time PMC enumeration algorithm that we give. This algorithm is based on the Bouchitté-Todinca algorithm [6]. We achieve the O * (3 cc ) bound by novel characterizations of minimal separators and PMCs with respect to an edge clique cover. In particular, we show that minimal separators correspond to bipartitions of an edge clique cover and almost all potential maximal cliques correspond to tripartitions of an edge clique cover. On some of the problems we improve the time complexity to O * (2 cc ), where cc is the size of an edge clique cover given as an input. The O * (2 cc ) time algorithms use the same dynamic programming states as the standard PMC framework, but instead of using PMCs for transitions we use fast subset convolution [2]. The application of fast subset convolution requires ad-hoc techniques for each problem to take into account the cost caused by the PMC implicitly selected by the convolution.
We also give algorithms that work in polynomial space and in times O * (9 cc ) and O * (9 cc+O(log 2 cc) ). These algorithms are based on a polynomial space and O * (9 cc ) time algorithm for enumerating PMCs and on a lemma asserting that every minimal triangulation of a graph G has a maximal clique that is in a sense a balanced separator with respect to an edge clique cover of G.

Contributions
Combinatorial bounds and enumeration algorithms. We start by giving bounds for the numbers of minimal separators and PMCs. We use S(n, k) to denote the Stirling numbers of the second kind, i.e., the number of ways to partition an n-element set into k non-empty subsets. Theorem 1. If G is a graph with an edge clique cover of size cc, then the number of minimal separators of G is at most S(cc, 2) and the number of potential maximal cliques of G is at most S(cc, 3) + cc.
We also show that these bounds are exactly tight for all values of cc. Note that S(cc, 2) ≤ 2 cc and S(cc, 3) + cc ≤ 3 cc .
We use ∆ (G) to denote the set of minimal separators of a graph G. There are O * (|∆ (G)|) time algorithms for enumerating the minimal separators of G [1,40], so it follows that the minimal separators of a graph can be enumerated in O * (2 cc ) time. For enumerating the PMCs Π (G) of a graph G no algorithms that are linear in the size of the output |Π (G)| and polynomial in the size of the input are known 1 . Despite that, we are able to design an efficient algorithm for enumerating PMCs parameterized by cc, even when no edge clique cover is given as input. The fact that the algorithm works even when no edge clique cover is given as input is crucial because there is no Problem Parameter Time complexity Computing treewidth [15] Minimum edge clique cover cc Computing (weighted) minimum fill-in [15] Minimum edge clique cover cc Finding an induced subgraph with treewidth ≤ t satisfying a CMSO formula φ [17] Minimum edge clique cover cc Computing fractional hypertreewidth of a hypergraph [35] Number of hyperedges m O * (3 m ) O * (2 2 o(cc) ) time parameterized algorithm for minimum edge clique cover assuming the exponential time hypothesis [10].
There is an algorithm that given a graph G whose minimum edge clique cover has size cc enumerates the potential maximal cliques of G in O * (3 cc ) time.
Corollaries of Theorem 2. From Theorem 2 it follows that all problems that admit O * (|Π (G)|) time algorithms when the set Π (G) of PMCs of the input graph G is given can be solved in O * (3 cc ) time, even when no edge clique cover is given as an input. Next we briefly discuss these corollaries, summarized in Table 2.
Computing treewidth and minimum fill-in are classical triangulation problems [5]. The treewidth of a graph is the minimum possible maximum clique size in a triangulation of the graph, minus one. The minimum fill-in of a graph is the minimum number of edges to add to make a graph chordal. In weighted minimum fill-in, the input, in addition to the graph, includes a weight function assigning non-negative weights to the potential edges to add, and the task is to minimize the sum of the weights of the edges added. Our O * (3 cc ) time algorithms for treewidth and (weighted) minimum fill-in follow from Theorem 2 and the dynamic programming of Fomin et al. [15].
Theorem 2 implies corollaries for all problems in a framework called maximum induced subgraph of bounded treewidth, including for example the problems maximum independent set, minimum feedback vertex set, and longest induced path [17]. In particular, using the dynamic programming of [17] as a black box, we obtain O * (3 cc · f (t, φ )) time algorithms for problems that can be expressed in a following form, where t is an integer and φ is a counting monadic second order logic formula: Given a graph G, find a maximum size vertex subset X so that there exists a vertex subset F with X ⊆ F ⊆ V (G), the treewidth of the induced subgraph G[F] is at most t, and it holds that (G[F], X) |= φ .
Computing the fractional hypertreewidth of a hypergraph corresponds to finding a triangulation of its primal graph, minimizing the maximum fractional edge cover of a maximal clique in the triangulation (see Section 2.3 for a complete definition). By combining the fact that a primal graph of a hypergraph has edge clique cover of size m, the number of hyperedges, with Theorem 2 and the dynamic programming algorithm of [35], we obtain an O * (3 m ) time algorithm for fractional hypertreewidth.
Optimizing the results in special cases. For some triangulation problems we obtain better results than would directly follow from Theorem 2.
A straightforward application of Theorem 2 would result in an O * (6 m ) time algorithm for generalized hypertreewidth (see definition in Section 2.3). We optimize this a bit.
Theorem 3. Given a hypergraph with m hyperedges, its generalized hypertreewidth can be computed in O * (4 m ) time.
When an edge clique cover of size cc is given as an input, some of the algorithms can be optimized to O * (2 cc ) time. Chordal sandwich is a special case of the weighted minimum fill-in problem, where the task is to decide if there exists a fill-in with weight zero. We pay attention to it because it has application to the perfect phylogeny problem [4,21,39]. Corollary 1 (See [21]). The perfect phylogeny problem can be solved in O * (2 n ) time, where n is the number of taxa.
A previous parameterized algorithm for perfect phylogeny works in time O * (4 r ), where r ≤ n is the arity of characters [27]. Our O * (2 n ) time algorithm improves over it in the case when r > n/2. This case is motivated by the fact that the O * (4 r ) algorithm works for partial characters only via a reduction that sets r ≥ n f for a fraction f of missing data [39].
Polynomial space algorithms. We also give polynomial space algorithms for some of the problems. The algorithms work in O * (9 cc ) time when an edge clique cover of size cc is given as an input and in O * (9 cc+O(log 2 cc) ) time when the parameter cc is given as an input.
Theorem 5. There is a polynomial space O * (9 cc ) time algorithm for treewidth and weighted minimum fill-in, where cc is the size of an edge clique cover given as an input. There are also polynomial space O * (9 m ) time algorithms for both generalized and fractional hypertreewidth, where m is the number of hyperedges.
Our polynomial space result for the parameter cc is weaker than Theorem 2 in the sense that it requires the integer cc as an input. Theorem 6. There is a polynomial space O * (9 cc+O(log 2 cc) ) time algorithm for treewidth and minimum fill-in, where cc is an integer given as an input that is at least the size of a minimum edge clique cover of the input graph.
The present article extends the preliminary work [29] in three ways. First, Theorem 1 has been improved so that we have lower and upper bounds that match exactly on all values of cc. Second, Theorem 3 which provides a non-trivial extension of our results to generalized hypertreewidth has been added. Third, data on minimum edge clique covers of PACE 2017 instances has been added to Section 1.2.

Related Work
The prior fixed-parameter (FPT) algorithms for PMC enumeration include an O * (4 vc ) time algorithm, where vc is the size of a minimum vertex cover, and an O * (1.7347 mw ) time algorithm, where mw is the modular width [16], extending the O(1.7347 n ) time algorithm, where n is the number of vertices [17]. One can see that edge clique cover and vertex cover are orthogonal parameters by considering complete graphs and star graphs. For modular width we show in Section 9 that the relation mw ≤ 2 cc − 2 holds, but there are graphs with mw = 2 cc − 2. In the conclusion of [16] the authors mentioned that they are not aware of other FPT parameters than vc and mw for PMCs and asked whether more parameterizations could be obtained.
Other parameterized approaches on the PMC framework include an FPT modulator parameter [32] and a slicewise polynomial (XP) bound for minimal separators in H-graphs [14]. The modulator parameter is orthogonal to edge clique cover. On Hgraphs, the graphs with edge clique cover of size cc are K cc -graphs, so the H-graph parameterization implies an n O(cc 2 ) time algorithm for enumerating PMCs.
In addition to the O * (4 r ) time algorithm for perfect phylogeny [27] that we discussed in Section 1.4, we are not aware of prior single-exponential FPT algorithms with the same parameters as our algorithms. For fractional hypertreewidth there are parameterized algorithms whose parameters depend on the sizes of intersections of hyperedges [13]. For treewidth and chordal sandwich, different techniques have been used to obtain an O * (3 vc ) time algorithm for treewidth [8] and an O * (2 vc ) time algorithm for chordal sandwich, where vc is the size of a minimum vertex cover of the admissible edge set [23].

Organization of the Article
In Section 2 we give necessary definitions and background on minimal triangulations and PMCs. In Section 3 we characterize minimal separators and PMCs based on edge clique cover, proving Theorem 1. In Section 4 we give enumeration algorithms for PMCs, proving Theorem 2. In Section 5 we give the algorithm for generalized hypertreewidth, proving Theorem 3. In Section 6 we give faster algorithms for the case when an edge clique cover is given as an input, proving Theorem 4. In Section 7 we give polynomial space algorithms, proving Theorems 5 and 6. In Section 8 we show that our combinatorial bounds are tight. In Section 9 we prove the relation of edge clique cover and modular width claimed in Section 1.5. We conclude in Section 10.

Preliminaries
We recall the standard graph notation that we use and preliminaries on minimal triangulations. We also give formal definitions of the problems that we consider and introduce our notation related to edge clique cover.

Notation on Graphs
We consider graphs that are finite, simple, and undirected. We assume that the graphs given as input are connected. For graphs with multiple connected components, the algorithms can be applied to each connected component independently. The sets of vertices and edges of a graph G are denoted by V (G) and E(G), respectively. The set of edges of a complete graph with vertex set X is denoted as X 2 . The subgraph The vertex sets of connected components of a graph G are C(G). The set of neighbors of a vertex v is denoted by N(v) and the set of neighbors of a vertex set X by N( The set of inclusion maximal cliques of G is denoted by MC(G).

Minimal Triangulations
A graph is chordal if it has no induced cycle of four or more vertices.
We note that S is a minimal a, b-separator if and only if S has distinct full components containing a and b. A vertex set S is a minimal separator if it is a minimal a, bseparator for some pair a, b, i.e., it has at least two full components. We denote the set of minimal separators of G with ∆ (G).
A block of a graph G is a vertex set C ⊆ V (G) such that G[C] is connected and N(C) ∈ ∆ (G), i.e., C is a full component of some minimal separator. We remark that a common notation is to call a pair (N(C),C) a full block [5]. In modern formulations of the PMC framework the concept of non-full blocks is not needed [17], so we simplify the notation by identifying the block with only the vertex set C.
Next we recall a couple of required propositions on the structure of PMCs.
We will refer to condition 1 of Proposition 1 as the no full component condition and to condition 2 as the cliquish condition. Note that Proposition 1 implies an O(nm) time algorithm for testing if a given vertex set is a PMC [5].

Proposition 2 ([5]).
If Ω is a PMC of a graph G then all components C ∈ C(G \ Ω ) are blocks of G.
We call the components C ∈ C(G \ Ω ) the blocks of Ω . Note that N(C) Ω , i.e., the minimal separators of the blocks C ∈ C(G \ Ω ) are strict subsets of the PMC. We also need the following proposition connecting PMCs and blocks.

Proposition 3 ([5]).
If Ω is a PMC of a graph G and C is a block of Ω , then there is a full component C of N(C) such that Ω ⊆ N[C ].

Formal Definitions of Problems
Let G be a graph and Tr(G) the set of triangulations of G. The treewidth of G is min Note that chordal sandwich can be reduced to weighted minimum fill-in on the same graph G by using a weight function w with w(e) = 0 if e ∈ F and w(e) = 1 otherwise.
A hypergraph G has a set of vertices V (G) and a set of hyperedges E(G) that are arbitrary non-empty subsets of V (G), i.e., for e ∈ E(G) it holds that e ⊆ V (G). The primal graph P(G) of G is a graph with vertices V (P(G)) = V (G) and edges E(P(G)) = e∈E(G) e 2 . An edge cover of a vertex set X ⊆ V (G) is an assignment c : E(G) → {0, 1} so that for each v ∈ X it holds that ∑ v∈e∈E(G) c(e) ≥ 1. The size of an edge cover c is ∑ e∈E(G) c(e). Fractional edge cover is defined analogously to edge cover, but the function c is allowed to take any non-negative real values instead of only integers. The minimum size of an edge cover of a set X ⊆ V (G) is denoted by COV(X) and fractional edge cover by FCOV(X). The generalized hypertreewidth of a hypergraph G is min H∈Tr(P(G)) max Ω ∈MC(H) COV(Ω ) and the fractional hypertreewidth is min H∈Tr(P(G)) max Ω ∈MC(H) FCOV(Ω ) [19,20,35]. Note that FCOV(X) can be computed in polynomial time by linear programming, but computing COV(X) corresponds to the NP-complete set cover problem [20].
For all of the aforementioned problems there is an optimal solution corresponding to a minimal triangulation. Furthermore, all of the problems except generalized hypertreewidth can be solved in O * (|Π (G)|) time when Π (G) is given as an input [15,  18, 21, 33,35]. Generalized hypertreewidth can be solved in O * (|Π (P(G))|) time if COV(Ω ) for each Ω ∈ Π (P(G)) is also given as input [35]. For reductions from perfect phylogeny to chordal sandwich and from maximum compatibility of binary phylogenetic characters to weighted minimum fill-in see [4,21].

Notation on Edge Clique Cover
We introduce notation for manipulating objects in a graph based on edge clique cover, with examples of the notation presented in Figure 3. An edge clique cover W of a graph G is a collection of subsets of V (G) so that W ∈W W 2 = E(G). We often manipulate vertex sets based on an edge clique cover W.
A non-empty subset W ⊆ W of an edge clique cover W is called a part of the edge clique cover. The vertices in V (G, W ) = {v ∈ V (G) | W[v] ⊆ W } are called the vertices of the part W . We denote the union of vertices of multiple parts with a shorthand V (G, W 1 , . . . , A part is called good if all of its components are blocks, in which case the components of the part may be called the blocks of the part. Note that a part W with V (G, W ) = / 0 has C(W ) = / 0 and thus is good. Two disjoint parts

Characterization of the Central Combinatorial Objects
In this section we show that if a graph has an edge clique cover of size cc, then the number of blocks of the graph is at most S(cc, 2) · 2, the number of minimal separators is at most S(cc, 2), and the number of potential maximal cliques is at most S(cc, 3) + cc. The characterizations of these objects will be later used in the design of the algorithms.
We start by showing that blocks correspond to parts of an edge clique cover. Lemma 1. Let G be a graph and W an edge clique cover of G. If C is a block of G then V (G, . All the cliques that v intersects also intersect with C, and therefore there must be a vertex in C that is in a clique intersecting with C which is a contradiction to the fact that N(C) separates C and C . Next we show that each PMC Ω is either a clique in the edge clique cover W or can be represented by a tripartition of edge clique cover. The high-level idea of the proof is that we can associate for each block C ∈ C(G \ Ω ) a part W[C], and then use the properties of PMCs to show that the set of these parts can be coarsed into the desired tripartition, except in the special case when Ω ∈ W. The lemma could be a bit simpler if we wanted to only prove a bound of 3 cc , but now it yields a tight bound.
Lemma 2. Let G be a graph and W an edge clique cover of G. If Ω is a PMC of G, then either (1) Ω ∈ W or (2) i.e., the sole clique containing v. Consider a vertex u ∈ N(v) and suppose that u / ∈ Ω for the sake of contradiction. Note that W We showed that case 1 applies to PMCs containing vertices v with |W[v]| = 1. Next, we suppose that we have PMC Ω for which case 1 does not apply, and show that case 2 applies. By Proposition 2 the components C ∈ C(G \ Ω ) are blocks and by Lemma 1 they define a collection P = {W[C] | C ∈ C(G \ Ω )} of disjoint good parts of W. We make this collection a partition of W by adding the missing elements W \ ( W i ∈P W i ) as singletons. If for any such singleton {W } there is a vertex v with W[v] ⊆ {W }, then case 1 applies. Therefore we have that V (G, {W }) = / 0 for such singletons, and thus they are good parts. Now we have a partition P of W into good parts with W i ∈P C(W i ) = C(G \ Ω ).
If the partition P would consist of only a single part then Ω would be empty. Suppose the number of parts is two, i.e., is nonempty, then the no full component condition would be violated by it.
If the number of parts is at least three, merge arbitrary compatible pairs of parts until the number of parts is three or no pairs of parts can be merged anymore. If we end up with three parts, we are done. If we end up with more than three parts, i.e. W 3 , W 4 )). Because of our assumption that we cannot continue the merging process anymore both of these vertices exist and are in Ω . However, there is no edge between u and v and there is no common component in whose neighborhood u and v are, which is a contradiction to the cliquish condition.
We call the PMCs corresponding to case 1 of Lemma 2 type 1 PMCs and the PMCs corresponding to case 2 type 2 PMCs. The number of type 1 PMCs is at most cc. Type 2 PMCs correspond to tripartitions of W, so their number is at most S(cc, 3). Therefore, the total number of PMCs is at most S(cc, 3) + cc, completing the proof of Theorem 1.

Enumeration Algorithms
We modify the Bouchitté-Todinca algorithm [6] for enumerating PMCs to give an O * (3 cc ) time PMC enumeration algorithm and a polynomial space O * (9 cc ) time PMC enumeration algorithm. Recall that Theorem 1 with Takata's algorithm [40] implies a polynomial space O * (2 cc ) time minimal separator enumeration algorithm.
The Bouchitté-Todinca algorithm characterizes PMCs based on minimal separators. We summarize this characterization in the following proposition. The algorithm uses case 1 to generate n induced subgraphs of the input graph, from which PMCs are generated by cases 2 and 3. Note that the size of a minimum edge clique cover is monotone with respect to induced subgraphs. We need the following lemma, which follows from Proposition 1, to ensure that each PMC of each induced subgraph corresponds to at most one PMC of the original graph. Now, we can just enumerate PMCs from cases 2 and 3 in each of the n induced subgraphs, and each time a PMC is found we use case 1 with Lemma 3 to generate at most one PMC of the original graph in polynomial time.
Next we complete the description of the algorithm by showing that PMCs from cases 2 and 3 can be enumerated in O * (3 cc ) time. The proof is based on Lemma 1 on the structure and the number of blocks.

Lemma 4.
There is an algorithm that given a graph G whose minimum edge clique cover has size cc enumerates the PMCs of G, possibly with duplicates, in polynomial space and O * (3 cc ) time.
Proof. As discussed above, it is sufficient to enumerate PMCs from cases 2 and 3 of Using for example sorting we can deduplicate the output of the algorithm of Lemma 4 and an O * (3 cc ) time and space algorithm for enumerating PMCs without duplicates, i.e., Theorem 2, follows. For deduplication in polynomial space, we use a simple trick that is efficient enough for our purposes.

Lemma 5.
There is an algorithm that given a graph G whose minimum edge clique cover has size cc enumerates the PMCs of G in polynomial space and O * (9 cc ) time.
Proof. Run the algorithm of Lemma 4 multiple times in succession, each time outputting the lexicographically smallest PMC that is lexicographically larger than the previous PMC outputted, until no such PMC is found. Now, using the algorithm at most 3 cc times we have outputted the PMCs of G in lexicographically strictly increasing order.

Generalized Hypertreewidth
For generalized hypertreewidth we need to compute minimum edge covers of all PMCs, so a naive application of Theorem 2 with an O * (2 m ) time set cover algorithm results in an O * (6 m ) time algorithm, where m is the number of hyperedges. In this section we give an O * (4 m ) time algorithm for enumerating PMCs with their minimum edge covers, implying an O * (4 m ) time algorithm for generalized hypertreewidth. We note that the naive approach with Lemma 5 is sufficient to give an O * (9 m ) time polynomial space algorithm for enumerating PMCs with minimum edge covers.
In this section we let W be the edge clique cover of size m formed by the hyperedges of the input hypergraph. We use the characterization of PMCs given in Lemma 2. PMCs of type 1 have edge covers of size 1, so we focus on PMCs of type 2, which correspond to tripartitions of hyperedges. Let {W 1 , W 2 , W 3 } be a tripartition corresponding to a type 2 PMC Ω = V (G) \V (G, W 1 , W 2 , W 3 ). We use the following notation to cover vertices of the PMC with hyperedges. Definition 1. Let G be a graph, W an edge clique cover of G, and {D, W 1 , W 2 , W 3 } a labeled four-partition of W with empty parts allowed. The partial PMC induced by

Faster Algorithms When Edge Clique Cover is Given
We use fast subset convolution [2] to design O * (2 cc ) time algorithms for treewidth, minimum fill-in, and chordal sandwich, where cc is the size of an edge clique cover given as an input. In particular, we make use of the following result.
The algorithms we introduce are modifications of the dynamic programming phase of the PMC framework. In most of this section our presentation is general in the sense that it applies to each of the three problems. We use the term "optimal triangulation" to refer to a triangulation with the minimum size of a maximum clique in the context of treewidth, a triangulation with the least number of edges in the context of minimum fill-in, and to a triangulation that has no non-admissible fill-edges in the context of chordal sandwich (or to information that no such triangulation exists).
We start by recalling the dynamic programming phase of the PMC framework. The states of the dynamic programming correspond to realizations of blocks.
where H i is any minimal triangulation of R(C i ). Moreover, each C i is a block of G.
Proposition 6 implies dynamic programming algorithms for computing optimal triangulations of realizations of all blocks [5,15,33].
We use the following proposition for a base case.

Proposition 7 ([5]). Let G be a graph that is not complete. The graph H is a minimal triangulation of G if and only if (i) V (H) = V (G) and (ii) there is a minimal separator
where H i is any minimal triangulation of R(C i ).
Once we have computed optimal triangulations of realizations of all blocks, we can compute an optimal triangulation of the graph via Proposition 7 in time O * (2 cc ). For computing optimal triangulations of realizations, the bottleneck in implementing the recursion of Proposition 6 is in iterating over the PMCs.
The high-level idea of our algorithm is that we use Proposition 6 directly only with type 1 PMCs, i.e., PMCs Ω ∈ W ∩ Π (G). For type 2 PMCs, we simulate the iteration over PMCs with fast subset convolution. In particular, we show that each PMC Ω of type 2 with N(C) ⊆ Ω ⊆ N[C] can be expressed in terms of two disjoint good parts W 1 and W 2 of W[C], where W is an edge clique cover of G. In the case of treewidth, minimum fill-in, and chordal sandwich, an optimal partition of every subset W ⊆ W into two good parts W 1 and W 2 can be computed with fast subset convolution, provided that we have first computed optimal triangulations of realizations of all blocks in C(W 1 ) and C(W 2 ).
We first show that each type 2 PMC can be expressed in terms of W 1 and W 2 .
Lemma 7. Let G be a graph, W an edge clique cover of G, and C a block of G. If a graph H is a minimal triangulation of R(C), then either (1) there is a clique Ω ∈ W ∩ Π (G) and where N(C) ⊆ Ω ⊆ N[C], and H i is a minimal triangulation of R(C i ), or (2) there is a partition where and H i is a minimal triangulation of R(C i ).
Proof. Case 1 corresponds to Proposition 6 with PMCs of type 1. Next we prove that case 2 covers all PMCs of type 2.
The following lemma guarantees that the characterization of PMCs of type 2 in Lemma 7 is sound in the sense that all graphs H that it defines are (not necessarily minimal) triangulations of G.
where Ω = V (G)\V (G, W 1 , W 2 , W o ) and H i is any triangulation of R(C i ). The graph H is a triangulation of R(C).
For Ω ⊆ N[C], note that no vertex of Ω is in V (G, W o ), and therefore all vertices of Ω intersect a clique in W[C], and therefore are in , all components of Ω in G are either in C, and thus components of Ω in R(C) or are components of N(C). All components in C(W 1 ) ∪ C(W 2 ) are subsets of C because W 1 ∪ W 2 ⊆ W[C], and therefore are components of Ω in R(C). In Lemmas 7 and 8 we formulated a recursion that characterizes all minimal triangulations of a realization R(C) of a block C in terms of minimal triangulations of realizations R(C ) of blocks C C. What remains is to integrate the computation of the optimal cost of the triangulation into this characterization. The following lemma is used for treewidth and minimum fill-in. It is simple, but we state it as a warmup for what follows. Therefore, the size of Ω can be computed as a sum that considers the parts W 1 , W 2 , and W o independently, and therefore we can integrate the computation of it into fast subset convolution. For treewidth, we only have to make sure that |Ω | ≤ k + 1, where k is the upper bound for treewidth in the decision problem. For minimum fill-in, we can compute the number of edges in the triangulation of R(C) as , where H i is an optimal triangulation of the realization R(C i ).
A similar lemma is used for chordal sandwich.
Lemma 10. Let G be a graph, W an edge clique cover of G, Proof. We first show that for all pairs u, v ∈ Ω there is a part is a subset of any of W 1 , W 2 , or W o , so there is at least of part of the partition that they both intersect but are not subsets of and that is the desired part W i . To see that Lemma 10 guarantees that each fill-edge caused by the PMC Ω can be "seen" from at least one of the parts W 1 , W 2 , W o , implying that it is sufficient to check each part independently to guarantee that Ω does not add any forbidden fill-edges. We remark that Lemma 10 appears to be difficult to generalize to count the exact number of fill-edges, which is the barrier why we are not able to give an O * (2 cc ) time algorithm for weighted minimum fill-in.
Algorithm 1 presents the full O * (2 cc ) time algorithm for treewidth. The algorithms for minimum fill-in and chordal sandwich are similar. The algorithm maintains a collection B of blocks C for which it is known that the treewidth of R(C) is at most k. The invariant of the main loop of lines 3 to 19 is that after ith iteration, all blocks of size at most i and treewidth at most k have been added to B. In each iteration of the main loop, the algorithm iterates over all good parts W on lines 5 to 7, and if all realizations of blocks of the part have treewidth at most k adds the part to a collection F |V (G,W )| . These parts W correspond to parts W 1 and W 2 of our lemmas. Then, fast subset convolution is applied on line 8 on the collections F to find for all combinations (W 1 ∪ W 2 ) of disjoint good parts W 1 and W 2 the maximum number of vertices in V (G, W 1 , W 2 ). Then on lines 9 to 15 the algorithm iterates through all good parts W o , thus determining (W 1 ∪ W 2 ) and all other variables that need to be taken into account. In particular, note that each part W o determines only polynomially many blocks C such that there is C ∈ C(W o ) with N(C ) = N(C).
The analysis of the algorithm focuses on transitions via PMCs of type 2 and proceeds by induction on the main loop invariant. The time complexity follows simply from fast subset convolution, the bound 2 cc on the number of blocks, and the fact that each iteration of the loop of the lines 9 to 15 takes polynomial time. The correctness is shown by combining the lemmas introduced in this section.

Lemma 11.
There is an algorithm that given a graph G with an edge clique cover W of size cc determines the treewidth and minimum fill-in of G in time O * (2 cc ). Furthermore, if also a set F ⊆ V (G) 2 \ E(G) is given the algorithm determines if there is a triangulation H of G with E(H) ⊆ E(G) ∪ F.
Proof. By Theorem 1 and Proposition 7 it suffices to solve each of the problems for all realizations of blocks of G. We proceed via induction, i.e., assume that the problems have been solved for all realizations of blocks C with |C| < i. We show that in one step taking a total of O * (2 cc ) time the problems can be solved for all realizations of blocks C with |C| = i.
First we find optimal triangulations via Proposition 6 using PMCs of type 1, i.e., PMCs Ω ∈ W ∩ Π (G). For deciding if treewidth is at most k we have to assert that |Ω | ≤ k +1 and that the resulting smaller blocks have treewidth of realizations at most k. For minimum fill-in, the number of fill-edges can be computed as |Ω 2 \ E(R(C))| plus the numbers of fill-edges in optimal solutions of the smaller blocks. For chordal sandwich we have to assert that Ω 2 ⊆ E(G) ∪ F and that the resulting smaller blocks also have positive answers. Now we can focus on type 2 PMCs, i.e., implement the characterization of Lemmas 7 and 8 while keeping track of the optimal answer. For each of the problems we use fast subset convolution [2] to determine in O * (2 cc ) time for each subset W ⊆ W an optimal partition of W into two good parts W 1 and W 2 . For treewidth we determine the maximum value of |V (G, W 1 , W 2 )| such that all realizations of blocks in C(W 1 ) ∪ C(W 2 ) have treewidth at most k. For minimum fill-in, we determine for each value 0 ≤ p ≤ n the minimum value of sum of minimum fill-ins of realizations of blocks in C(W 1 ) ∪ C(W 2 ) such that |V (G, W 1 , W 2 )| = p. For chordal sandwich, we decide if there is a partition such that the answer is positive for all realizations of blocks in C(W 1 ) ∪ C(W 2 ) and that (V (G) \ V (G, W i , W \ W i )) 2 ⊆ E(G) ∪ F. Now, once we fix the set W = (W 1 ∪ W 2 ), by Lemmas 9 and 10 we have computed all relevant information about W 1 and W 2 with the convolution, and can compute the rest of the information of the PMC by W o = W \ (W 1 ∪ W 2 ). Because W o defines polynomially many blocks C with C ∈ C(W o ) and N(C) = N(C ) we can update all relevant blocks in polynomial time.

Polynomial Space Algorithms
We give polynomial space algorithms for treewidth, weighted minimum fill-in, and generalized and fractional hypertreewidth. The algorithms are based on the following characterization of minimal triangulations. Note that the characterization uses realizations of blocks as defined in Section 6. Proposition 8 ( [5]). Let G be a graph, H a minimal triangulation of G, and Ω a maximal clique of H. For each C i ∈ C(G \ Ω ) there exists a minimal triangulation H i of R(C i ) such that Note that by iterating over all Ω ∈ Π (G) in Proposition 8 we can indeed construct all minimal triangulations of G. Furthermore, all graphs H constructed in this manner are minimal triangulations [5].
The idea of the algorithm is to use the recursion of Proposition 8 directly, without dynamic programming. The following "balanced PMC" lemma guarantees that for any resulting minimal triangulation, we can construct it in an order in which the size of an edge clique cover roughly halves in each level of the recursion. We prove it by an edge direction argument in a tree corresponding to the minimal triangulation. . If this process stops, we have found the desired maximal clique Ω . Suppose the process does not stop. It considers an infinite sequence of blocks C 1 ,C 2 , . . . with an associated infinite sequence of PMCs Ω 1 , Ω 2 , . . . with C i ∈ C(G \ Ω i ). Consider two consecutive blocks C i and C i+1 in this sequence such that C i+1 is not a subset of C i , which exist because G is finite.
is not a subset of C i , we have that N(C i+1 ) ⊆ N(C i ), implying that C i and C i+1 are two distinct components of G\N(C i ). Therefore the sets W[C i ] and W[C i+1 ] are disjoint, implying that either of them has to be of size at most |W|/2, which is a contradiction.
We combine Proposition 8 and Lemma 12 into the following lemma.  (2) there is a PMC Ω ∈ Π (G) with |W[C i ]| ≤ |W|/2 for all C i ∈ C(G \ Ω ) and where H i is a minimal triangulation of R(C i ).
Proof. Such a graph H is a minimal triangulation of G by standard results [5]. Let H be any minimal triangulation of G. By Lemma 12 there is a maximal clique Ω of H that satisfies |W[C i ]| ≤ |W|/2 for all C i ∈ C(G \ Ω ). By Proposition 8 the triangulation H can be constructed by the recursion from Ω . Algorithm 2 presents a polynomial space O * (9 cc ) time algorithm for treewidth. The algorithms for other problems are similar. The algorithm implements the characterization of Lemma 13, with the observation that W[C] ∪ {N(C)} is an edge clique cover of R(C). The time complexity analysis of the algorithm reduces to a recursion equation resembling t(cc ) = 9 cc + 3 cc 2t(cc /2).

Lemma 14.
There is an algorithm that given a graph G with an edge clique cover of size cc determines the treewidth of G in polynomial space and O * (9 cc ) time. If also a weight function w : V (G) 2 → R ≥0 is given, the algorithm determines the weighted minimum fill-in of G with respect to w. There is also algorithm that given a hypergraph G with m hyperedges determines both its generalized and fractional hypertreewidth in polynomial space and O * (9 m ) time.
Proof. We use a recursive procedure that takes as an input a graph G and an edge clique cover W of it and returns the cost of an optimal triangulation of the graph. We use the characterization of minimal triangulations of Lemma 13 with the O * (9 cc ) time polynomial space PMC enumeration algorithm of Lemma 5. Note that if C is a block, then W[C] ∪ {N(C)} is an edge clique cover of R(C). Therefore, when we recurse into a subproblem the value of cc changes to at most cc /2 + 1.
We use k = cc for clarity. We analyze the time complexity of the algorithm by induction on k. Our assumption is that the time complexity is p(n)9 k+3 log 2 k k, where p(n) is a polynomial sufficiently large to cover all polynomial-time subroutines and to make the assumption true for small values of k. In particular we assume that the PMCs can be enumerated and their associated costs can be computed in p(n)9 k time. We recurse from at most 3 k PMCs Ω , from each into |C(G \ Ω )| subproblems with the new value of k being at most k/2 + 1. Because of the exponentiality of the algorithm the worst case is that we recurse into two subproblems from each PMC, each subproblem with the new value of k equal to k/2 + 1. Now, the time complexity is p(n)9 k + 3 k 2p(n)9 k/2+1+3 log 2 (k/2+1) (k/2 + 1) =p(n)9 k + p(n)9 k+1+3 log 2 (k+2)−3 (k + 2) ≤p(n)9 k + p(n)9 k+3 log 2 k (k + 2)/9 ≤ p(n)9 k+3 log 2 k k, which verifies the induction assumption.
Theorem 5 follows. The main idea to make the algorithm work when we do not know the edge clique cover is to just check if there are at most 3 cc PMCs. The reason why the time complexity becomes a bit higher than in Lemma 14 is that we cannot assume that the worst case of branching from a PMC Ω results in only two subproblems. In particular, we cannot assume anything better than cc subproblems each with a minimum edge clique cover of size cc/2 + 1.
Algorithm 3 presents a polynomial space O * (9 cc+O(log 2 cc) ) time algorithm for treewidth. The algorithm for weighted minimum fill-in is similar.

Lemma 15.
There is an algorithm that given a graph G and an integer cc uses polynomial space and O * (9 cc+O(log 2 cc) ) time and returns an integer t that is at least the treewidth of G. If also a weight function w : V (G) 2 → R ≥0 is given, the algorithm also returns a number f that is at least the weighted minimum fill-in of G with respect to w. If cc is at least the size of a minimum edge clique cover of G, then t is the treewidth of G and f is the weighted minimum fill-in of G with respect to w.
Proof. We use the same algorithm as in Lemma 14, but with the modification that instead of giving an edge clique cover as a parameter we give just the integer cc. At the start we check if |Π (G)| > 3 cc in O * (9 cc ) time, and therefore we can use the same 3 cc bound on PMCs. Also, each time we recurse from a PMC Ω we check that |C(G \ Ω )| ≤ cc. If not, then G has no edge clique cover of size cc.

Tightness
We show that the bounds S(cc, 2) and S(cc, 3) + cc for the numbers of minimal separators and PMCs are tight for all values of cc.
Let us construct a graph K cc 2 . Let W be a collection of size cc initially containing disjoint sets of size 1, that is, W = {W 1 , . . . ,W cc } with W i = {v i }. For each pair 1 ≤ i < j ≤ cc we insert an element v i, j into the sets W i and W j . Now, the vertex set of K cc 2 is V (K cc 2 ) = W ∈W W and the edge set of K cc 2 is E(K cc 2 ) = W ∈W W 2 . The collection W is therefore an edge clique cover of K cc 2 . Lemma 16. The graph K cc 2 has at least S(cc, 2) minimal separators and at least S(cc, 3) + cc PMCs.
Proof. For distinct subsets W ⊆ W the vertex sets V (K cc 2 , W ) are distinct because they can be identified by the inclusion of the v i vertices. Let W be any non-empty strict subset of W. Both K cc 2 [V (K cc 2 , W )] and K cc 2 [V (K cc 2 , W \ W )] are connected graphs. Any vertex in V (K cc 2 ) \V (K cc 2 , W , W \ W ) is of type v i, j and has a neighbor in both V (K cc 2 , W ) and V (K cc 2 , W \ W ). Therefore, V (K cc 2 ) \V (K cc 2 , W , W \ W ) is a minimal separator and V (K cc 2 , W ) and V (K cc 2 , W \ W ) are blocks of it. Therefore, the number of minimal separators of K cc 2 is at least the number of bipartitions of W. Take any tripartition {W 1 , W 2 , W 3 } of W. Note that distinct tripartitions define distinct sets V (K cc 2 , W 1 , W 2 , W 3 ). We show that Ω = V (K cc 2 ) \ (K cc 2 , W 1 , W 2 , W 3 ) is a PMC of K cc 2 . Any vertex in Ω is of type v i, j , with vertices v i and v j in different blocks V (K cc 2 , W p ). Therefore, for any pair of vertices in Ω there is a common block that they are adjacent to, and therefore Ω satisfies the cliquish condition. A component V (K cc 2 , W 1 ) cannot be full because there is a vertex v i, j that intersects cliques W i ∈ W 2 and W j ∈ W 3 and therefore is in the PMC but not in the neighborhood of V (K cc 2 , W 1 ). Therefore, Ω satisfies the no full component condition. Therefore, the number of PMCs of K cc 2 that contain no vertices of type v i is at least the number of tripartitions of W.
We complete the proof by showing that for each v i the set N[v i ] is a PMC, contributing the term cc to the bound. The set N[v i ] satisfies the no full component condition because v i is not connected to any vertex outside of it. It satisfies the cliquish condition because it is a clique.

Relation of Edge Clique Cover and Modular Width
In [16] an algorithm with time complexity O * (1.7347 mw ), where mw is the modular width, was given for enumerating PMCs. In Section 1.5 we claimed that the parameters edge clique cover and modular width have a relation mw ≤ 2 cc − 2, which is tight. Now we prove this claim.
A module of a graph G is a vertex set X ⊆ V (G) such that for all x ∈ V (G) \ X, either N(x) ∩ X = X or N(x) ∩ X = / 0. We use a recursive definition of modular width with four operations.
Proof. We construct a graph K cc . Let W be a collection of size cc that will be the edge clique cover of K cc . For every non-empty strict subset W W we create a vertex v W and insert it into each clique W ∈ W . The edges of K cc are defined by W, that is, by whether the subsets corresponding to the vertices intersect.
The graph K cc is connected and its complement is also connected, so operations 2 and 3 cannot be applied. Next we prove that operation 4 cannot be applied with any integer k < 2 cc − 2. Suppose there is a non-trivial module M of K cc , i.e., a module with size 2 ≤ |M| < |V (K cc )|. Let v W 1 and v W 2 be two distinct vertices in M with . Now, since M contains both v W 1 and v W\W 1 it must contain all vertices corresponding to single element subsets of W by a similar argument. Since M contains all vertices corresponding to single element subsets of W it also must contain all vertices of K cc by a similar argument.

Conclusion
We bounded the number of minimal separators and PMCs by the size of a minimum edge clique cover, obtaining new parameterized algorithms for problems in the PMC framework. The parameterization by edge clique cover is motivated by real applications of optimal triangulations, and our results provide theoretical corroboration on the observations of the efficiency of the PMC framework in practice. Prior to our work, only the work of Fomin et al. [16] considers FPT bounds for PMCs. Our work answers to their proposal for finding further FPT parameterizations for PMCs.
We showed that our combinatorial bounds are the best possible, implying also that our PMC enumeration algorithm is optimal up to polynomial factors with respect to the parameter cc. For individual problems it remains as an open problem to improve the algorithms or to prove conditional lower bounds assuming conjectures such as strong exponential time hypothesis [34]. We are not aware of other graph parameters whose value is always at most cc and for which single-exponential FPT bounds for minimal separators and PMCs exist. In particular, we note that graphs with vertex clique cover of size 2 can have an exponential number of minimal separators: the graph consisting of two cliques of size n/2 connected by a matching of n/2 edges has 2 n/2 − 2 minimal separators.
One combinatorial question closely related to our work is whether the bound O(1.7347 n ) for the number of PMCs can be improved in graphs where cc ≤ n. This is motivated by moral graphs of Bayesian networks, for which the inequality holds. Also the question of finding other useful parameterizations for PMCs still remains for future work. Because of the fact that the parameter cc occurs naturally in multiple settings related to optimal triangulations, we expect that even more applications of our results could arise in future.