Maximum Cardinality Search (MCS)
- Maximum Cardinality Search (MCS) is a graph search algorithm that selects unchosen vertices based on the count of already chosen neighbors.
- On chordal graphs, MCS is equivalent to perfect elimination orderings and aligns with Prim orderings on the clique graph, highlighting its structural significance.
- A dynamic programming approach utilizing the clique graph's layer structure solves PSOP-MCS in polynomial time, demonstrating practical feasibility with an O(n^4) complexity.
Maximum Cardinality Search (MCS) is a graph-search paradigm that iteratively selects an unchosen vertex with maximum current label, where the label at time is the number of already selected neighbors. For a finite, undirected, simple graph and a partial order on , the Partial Search Order Problem for MCS (PSOP-MCS) asks whether there exists an MCS-ordering that is a linear extension of the given partial order. On chordal graphs, MCS has deep structural connections to perfect elimination orderings and clique graphs, and these connections underlie a polynomial-time dynamic programming algorithm for PSOP-MCS based on a layered decomposition of the clique graph (Rong et al., 2022).
1. Formal search model and order-theoretic formulation
Let be a finite, undirected, simple graph. MCS constructs an ordering iteratively. If is the set of already selected vertices after steps, with , then the MCS label of an unchosen vertex at time is
0
At iteration 1, MCS selects any vertex
2
Ties are broken arbitrarily. A linear order obtainable by this greedy rule is an MCS-ordering (Rong et al., 2022).
Equivalently, if 3 encodes visit time by 4, then 5 is an MCS-ordering if and only if there is a run of the greedy rule whose choices realize 6. This formulation emphasizes that MCS is not a single deterministic ordering but a family of admissible orderings induced by tie-breaking.
The partial-order variant is defined as follows. Given a search paradigm 7 and a graph 8 together with a partial order 9, PSOP-0 asks whether there exists an 1-ordering consistent with 2. For MCS, the decision problem is: given a connected graph 3 and a partial order 4 on 5, does there exist an MCS-ordering 6 such that
7
In the terminology of the paper, the ordering then extends the partial order (Rong et al., 2022).
This formulation strictly generalizes two previously studied recognition problems. The end-vertex problem is obtained by imposing the constraint that every other vertex precede a designated vertex. The 8-tree recognition problem is also subsumed, because constraints enforcing first-predecessor choices can be encoded as partial-order constraints together with feasibility conditions.
2. Chordal graphs, perfect elimination, and the role of MCS
A graph is chordal if it has no induced cycle of length at least 9. A perfect elimination ordering (PEO) of 0 is an ordering 1 such that for each 2, the later neighbors of 3, namely
4
form a clique. The classical characterization states that a graph is chordal if and only if it has a PEO (Rong et al., 2022).
MCS is closely tied to this characterization. On chordal graphs, MCS recognizes chordality: if one runs MCS and then checks in linear time whether the obtained ordering is a PEO, the check succeeds if and only if the graph is chordal. In the standard recognition framework, if 5 is chordal, then any MCS-ordering is a PEO when appropriately interpreted, or equivalently the MCS-order read backward is a PEO (Rong et al., 2022).
These facts give MCS a dual status. Algorithmically, it is a search procedure driven by a local cardinality rule. Structurally, on chordal graphs it is aligned with elimination theory and clique-separator structure. The PSOP-MCS algorithm on chordal graphs relies on this alignment rather than on the label process alone.
A plausible implication is that MCS on chordal graphs is best understood not merely as a greedy vertex process but as a search whose admissible orderings reflect the decomposition of the graph into maximal cliques and separators. This perspective is made explicit through the clique-graph and Prim-ordering correspondence.
3. Clique graphs and the MCS–Prim equivalence
For a connected chordal graph 6, the clique graph 7 has one node for each maximal clique of 8. Two maximal cliques 9 and 0 are adjacent in 1 if and only if 2 is a minimal separator between any vertex of 3 and any vertex of 4 in 5. Each edge 6 is labeled by the separator
7
and weighted by 8. The clique graph is the union of all clique trees of 9, and every chordal graph has at most 0 maximal cliques, so 1 (Rong et al., 2022).
Prim search on a weighted graph starts from an arbitrary node and repeatedly adds a new node through an incident edge of maximum weight to the already chosen set, with arbitrary tie-breaking. Such a node ordering is called a Prim ordering. The critical structural statement is the MCS–Prim equivalence on chordal graphs: an ordering 2 of 3 is an MCS-ordering if and only if 4 is a generation of some Prim ordering 5 of the clique graph 6 (Rong et al., 2022).
More precisely, if 7 is a Prim ordering of 8, define
9
Then any ordering of the form
0
where each 1 is an arbitrary linear order of 2, is an MCS-ordering of 3; conversely, every MCS-ordering arises in this way from some Prim ordering of 4 (Rong et al., 2022).
This equivalence converts a constrained vertex-order problem into a constrained clique-order problem. Given a vertex partial order 5, a Prim ordering 6 of 7 respects 8 if for each 9 one has 0, where 1 denotes the first maximal 2-clique encountered by 3. There exists an MCS-ordering of 4 extending 5 if and only if there exists a Prim ordering of 6 respecting 7 (Rong et al., 2022).
The significance of this bridge is algorithmic. MCS labels are dynamic and vertex-level; Prim orderings on the clique graph expose separator weights and clique-level structure. The reduction makes it possible to replace direct reasoning about all MCS tie-breakings by a structured search over maximal cliques.
4. Layer structure on the clique graph
The main technical notion introduced for PSOP-MCS on chordal graphs is the layer structure of the clique graph. For a weighted clique graph 8, one repeatedly removes edges of minimum weight. Fix a root maximal clique 9. After removing all minimum-weight edges, each connected component is called a unit. The units become the vertices of a unit-level graph, and two units are adjacent when some edge of 0 crosses between them. The corresponding unit edge is labeled by the common separator carried by all such crossing edges. The root unit is 1, and the layer of a unit is its distance from the root in this unit graph (Rong et al., 2022).
Several structural properties of this decomposition are used in the dynamic program.
- Edge-label propagation: if 2 is an edge with label 3, then every path between 4 and 5 in the layer structure contains an edge labeled 6. In particular, when two edges with the same label 7 share this structure, the four participating units are pairwise adjacent and all six edges among them have label 8.
- Unique parent: every nonroot unit in layer 9 is adjacent to exactly one unit in layer 0, its parent. If edges inside same-layer bags are ignored, the unit graph is a rooted tree.
- Bags within a layer: two units in the same layer are adjacent if and only if they share the same parent and the same label to that parent. Consequently, adjacency inside a layer is an equivalence relation, and each equivalence class, called a bag, forms a clique.
- Separator identity on unit edges: for adjacent units 1, the edge label equals the overlap of their vertex supports,
2
where 3.
- First-appearance unit of a vertex: for every vertex 4, there is a unique unit 5 containing a maximal 6-clique that is closest to the root, and every unit containing a maximal 7-clique lies in the descendant subtree of 8.
- Entrance to a child bag: if two units in the same bag have adjacent cliques in 9, then there exists a clique in the parent unit adjacent to both (Rong et al., 2022).
These statements collectively make the unit graph sufficiently tree-like for dynamic programming while retaining the separator information needed for Prim feasibility. A plausible implication is that the layer structure acts as a quotient of the clique graph that preserves precisely the information relevant to feasible MCS generations under partial-order constraints.
5. Reduction to rooted generic search on units
The layer structure supports a second reduction, from constrained Prim orderings of the clique graph to constrained generic search on units. Given a partial order 00 on 01, one lifts it to a partial order on units:
02
where 03 is the first-appearance unit of 04 with respect to the chosen root (Rong et al., 2022).
If there exists an MCS-ordering of 05 starting within 06 and extending 07, then there exists a Prim ordering of 08 starting with 09 that respects 10. The induced order of units is then a generic-search ordering of the layer structure rooted at 11 and extending 12. Conversely, any such generic-search ordering of the layer structure can be refined unit-by-unit to a Prim ordering of 13 that respects 14, provided one chooses for each unit an entering clique adjacent to its parent and realizes the interior of each unit appropriately (Rong et al., 2022).
The rooted generic-search feasibility lemma states that if there exists an MCS-ordering of 15 starting with 16 and extending 17, then there exists a rooted generic-search ordering of the layer structure starting at 18 that extends 19. The algorithm relies on Scheffler’s result that rooted PSOP for generic search is polynomial-time solvable. This result is applied at the unit level rather than on the original graph (Rong et al., 2022).
This reduction separates global and local constraints. Global precedence information is enforced through the rooted generic-search ordering of units. Local realizability inside each unit is deferred to lower levels of the dynamic program. The approach therefore converts a single difficult constrained search problem into a hierarchy of rooted feasibility problems.
6. Dynamic programming algorithm on chordal graphs
The main theorem is that PSOP-MCS restricted to chordal graphs is solvable in polynomial time, with overall running time 20, where 21 (Rong et al., 2022).
The algorithm processes the clique graph by nondecreasing separator sizes. Let the distinct edge weights of 22 be
23
Define 24, and for 25, let 26 be obtained from 27 by deleting all edges of weight 28. Each connected component of 29 is again treated as a clique graph of the induced subgraph on the union of its cliques, and the connected components of 30 are exactly the units of the layer structure of any component of 31 (Rong et al., 2022).
The dynamic-programming state is
32
if and only if there exists a Prim ordering of a connected component 33 of 34 that starts with the maximal clique 35 and respects the restriction of 36 to 37; otherwise 38.
The base case occurs at 39. Then 40 has isolated nodes only, so any start clique yields a trivial Prim ordering, and 41 for all states (Rong et al., 2022).
For the transition, to compute 42 one builds the layer structure of 43 rooted at 44, where the units are the connected components of 45 contained in 46. Let 47, and lift it to
48
If there is no generic-search ordering of the layer structure rooted at 49 that extends 50, then 51. Otherwise, fix such a unit ordering
52
Then 53 if and only if both of the following hold (Rong et al., 2022):
- 54.
- For every 55, there exists a clique 56 such that:
- 57 is adjacent in 58 to some clique in the parent unit of 59 in the layer structure;
- 60.
Correctness follows from concatenating local Prim orderings inside units in the order prescribed by 61. The entrance adjacency guarantees that when a child unit is first entered, a maximum-weight edge is available to the chosen starting clique of that unit. Respect of the lifted order 62 ensures compatibility of first maximal 63-cliques across units, while local respect inside each unit ensures compatibility with 64 within units (Rong et al., 2022).
The complexity analysis is based on the facts that there are 65 states overall and that each state requires only polynomial work: building the layer structure, solving rooted PSOP for generic search on that structure, and checking adjacency and witness cliques for child units. The resulting bound is 66 (Rong et al., 2022).
7. Scope, special cases, and limitations
The algorithmic framework crucially depends on chordality. The clique-graph representation, minimal-separator labeling, and the MCS–Prim equivalence all hold in the chordal setting and are essential to the proof. For non-chordal inputs, PSOP-MCS remains open in general. The stated procedure therefore assumes that one first tests chordality and then applies the dynamic program only in the chordal case (Rong et al., 2022).
The method solves the MCS end-vertex problem on chordal graphs as a special case, since the end-vertex question is encoded by requiring every other vertex to precede the designated terminal vertex. It also subsumes the 67-tree recognition case for MCS on chordal graphs through Scheffler’s observation that appropriate first-predecessor constraints can be encoded within PSOP (Rong et al., 2022).
An illustrative example is the graph with vertices 68 and maximal cliques 69 and 70. Its clique graph has two nodes joined by an edge labeled 71 of weight 72. If the partial order requires 73, then the induced unit order is forced to place the unit of 74 before the unit of 75, and a respecting Prim ordering is 76. One generated MCS-ordering is 77, which indeed extends the constraint (Rong et al., 2022).
The paper also identifies open directions. The 78 bound may admit improvement through faster unit construction, more aggressive pruning in the dynamic program, or faster rooted generic-search PSOP on the layer structure. Extending the method beyond chordal graphs would require structural analogues of the clique-graph and layer decomposition framework. The data further notes that such a clean MCS–Prim equivalence does not hold for many other searches, including BFS, DFS, LexBFS, and MNS, so analogous algorithms would need different structural bridges (Rong et al., 2022).
Within the current theory, MCS on chordal graphs is therefore characterized not only by its local labeling rule but by a hierarchy of equivalent representations: perfect elimination on the graph itself, Prim orderings on the clique graph, and rooted generic-search feasibility on the layer structure. This suggests that the constrained-order behavior of MCS is controlled by separator geometry rather than by vertex labels alone.