Perfect elimination orders and the clique-bag decomposition #
A perfect elimination order (PEO) of a graph is a linear ordering of its vertices — here given
by an injective ranking ord : V → ℕ — such that the neighbours of each vertex occurring later in
the order form a clique. Dirac's theorem (available in Chordal.lean) yields a PEO for every
finite chordal graph.
Out of a PEO we build the clique-bag decomposition: the bag of v is {v} ∪ N⁺(v), where
N⁺(v) are the neighbours of v occurring later in the order. These bags are cliques, they cover
all vertices and all edges, and maximality is never required: the bags form a genuine clique tree
in the sense of SimpleGraph.CliqueTree, with parent of v the earliest later neighbour of v.
Main definitions #
SimpleGraph.IsPEOSimpleGraph.laterNbrs,SimpleGraph.peoBag,SimpleGraph.peoParent,SimpleGraph.peoRankSimpleGraph.IsPEO.cliqueTree— the clique tree carried by the bag decomposition
Main results #
SimpleGraph.IsChordal.exists_isPEO— a finite chordal graph admits a perfect elimination orderSimpleGraph.IsPEO.peoBag_isClique,SimpleGraph.IsPEO.exists_peoBag_of_adjSimpleGraph.IsPEO.card_edgeFinset_eq_sum_card_laterNbrs— edge accounting: each edge is charged exactly once, to its earlier endpoint
A perfect elimination order of G, given by an injective ranking ord : V → ℕ: the
neighbours of a vertex that come later in the order form a clique.
- injective : Function.Injective ord
The ranking is injective, i.e. it is a linear order on the vertices.
The later neighbourhood of every vertex is a clique.
Instances For
Existence of a perfect elimination order #
Every nonempty finite vertex set in a chordal graph contains a vertex whose neighbours within that set form a clique.
Relative simplicial elimination produces an injective ranking on every finite set.
Relative simpliciality in every nonempty finite vertex set yields an elimination order.
Every finite chordal graph has a perfect elimination order.
The clique-bag decomposition of a perfect elimination order #
The neighbours of v occurring later than v in the order ord.
Instances For
The clique bag of v: the vertex together with its later neighbours.
Instances For
The parent of v: its earliest later neighbour, if any.
Instances For
The rank of v: the number of vertices occurring after v.
Equations
- SimpleGraph.peoRank ord v = {u : V | ord v < ord u}.card
Instances For
The clique-bag decomposition of a perfect elimination order is a clique tree. No maximality of the bags is required.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Edge accounting #
Unique edge assignment along a PEO. Every edge is charged to its earlier endpoint, and the total count of edges is the total number of later neighbours.
The bag form of the edge accounting: each bag contributes its size minus one.
Every finite chordal graph has a clique tree, namely the clique-bag decomposition of any perfect elimination order.