Chordal graphs #
A simple graph is chordal if every cycle of length at least four has a chord — an edge of the graph joining two vertices of the cycle that is not itself one of the cycle's edges.
This module is a reusable byproduct extracted from the verified formalization accompanying Paper II, Complete-Split Extremizers for a Fractional Triangle-Cover Functional on Chordal Graphs. It is self-contained and depends only on Mathlib.
Main definitions #
Main results #
SimpleGraph.IsChordal.comap— chordality pulls back along an injective vertex mapSimpleGraph.IsChordal.minimalSeparator_isClique— finite minimal separators of fixed vertex pairs are cliquesSimpleGraph.IsChordal.exists_isSimplicial— Dirac (1961): a nonempty finite chordal graph has a simplicial vertexSimpleGraph.IsChordal.exists_two_nonadj_isSimplicial— a connected non-complete finite chordal graph has two non-adjacent simplicial vertices
A graph is chordal if every cycle of length ≥ 4 has a chord: an adjacency between two
vertices of the cycle whose edge is not one of the cycle's own edges.
Equations
Instances For
A vertex is simplicial if its neighbourhood induces a clique.
Equations
- G.IsSimplicial v = G.IsClique (G.neighborSet v)
Instances For
S is a minimal a–b separator: it separates them and no proper subset does.
Instances For
Chordality pulls back along an injective vertex map. In particular, every induced subgraph of a chordal graph is chordal.
Every induced subgraph of a chordal graph is chordal.
Private helpers (ported from a verified development; self-contained). #
Dirac helpers (private) #
In a chordal graph, every finite minimal separator of two fixed vertices is a clique.
Dirac's theorem (1961). A nonempty finite chordal graph has a simplicial vertex.
Connected case of Dirac's two-vertex conclusion. A connected non-complete finite chordal graph has two distinct non-adjacent simplicial vertices.