Finite multigraphs given by their ends #
A multigraph on the vertices V with edges E, parallel edges and self-loops allowed, is given
here by the map ends : E → Sym2 V sending each edge to its unordered pair of ends; a self-loop
has equal ends. Assignments of values to the edges are then functions on E, as in Tseitin
formulas (Cslib.Logic.PL.CNF.tseitinFormula), and relabelling the edges along an
equivalence changes none of the quantities below (Multigraph.card_incidence_comp,
Multigraph.minBalancedCut_comp, ...).
The multigraph is connected when its underlying simple graph (Multigraph.toSimpleGraph) is, that
is, exactly when an edge leaves every nonempty set of vertices other than the set of all vertices
(Multigraph.connected_toSimpleGraph_iff). The least number of edges between a set of between a
third and two thirds of the vertices and its complement (Multigraph.minBalancedCut) is the
expansion e(G) of Ben-Sasson and Wigderson, which bounds the width
of resolution refutations of Tseitin formulas.
Main definitions #
Cslib.Multigraph.toSimpleGraph: the simple graph underlying a multigraph.Cslib.Multigraph.incidence: the edges at a vertex other than self-loops.Cslib.Multigraph.edgeCut: the edges between a set of vertices and its complement.Cslib.Multigraph.minBalancedCut: the expansione(G)of Ben-Sasson and Wigderson.
Main results #
Cslib.Multigraph.edgeSet_toSimpleGraph: the edges of the underlying simple graph.Cslib.Multigraph.connected_toSimpleGraph_iff: connectivity as a cut condition.Cslib.Multigraph.le_minBalancedCut_iff: the characterization ofe(G).
References #
The simple graph underlying the multigraph ends: distinct vertices are adjacent when an edge
joins them. Self-loops are dropped and parallel edges merged.
Instances For
The edges at v other than self-loops. A self-loop at v is left out: it would count twice
towards the parity of the edges at v, as in Tseitin formulas, and so not at all.
Instances For
An edge with ends a and b is at v, and not a self-loop, when v is one of its ends and
a ≠ b.
Relabelling the edges does not change the number of edges at a vertex.
The edges between S and its complement.
Instances For
The expansion e(G) of the multigraph ends
Ben-Sasson and Wigderson: the least number of edges between a set S
of vertices with |V| / 3 ≤ |S| ≤ 2 |V| / 3 and its complement, that is the least edge cut of a
balanced partition of the vertices. With one vertex there is no such set; then e(G) = 0 by
convention.
Instances For
e(G) is at most the number of edges leaving any set of between a third and two thirds of
the vertices.
With at least two vertices, e(G) is the number of edges leaving some set of between a third
and two thirds of the vertices.
With at least two vertices, k ≤ e(G) exactly when at least k edges leave every set of
between a third and two thirds of the vertices.
With at most one vertex, e(G) = 0 by convention.
Relabelling the edges does not change e(G).
Connectivity as a cut condition: a multigraph is connected exactly when it has a vertex and an edge leaves every nonempty set of vertices other than the set of all vertices.