Documentation

TauCeti.Combinatorics.SimpleGraph.Connectivity.EdgeConnectivity

The edge connectivity of a simple graph #

Mathlib's SimpleGraph.IsEdgeConnected G k says that G stays preconnected after deleting any set of fewer than k edges. This file introduces the numerical invariant G.edgeConnectivity : ℕ∞, the supremum of the natural thresholds at which G is edge-connected, and bounds it by vertex degrees. As for multigraphs, a graph on at most one vertex has edge connectivity ⊤. It also lifts walks and trails in G with toSubgraph ≤ K to reachability in edge-deleted subgraphs of K.coe, showing without finiteness assumptions that every closed trail (and in particular every cycle) traces a 2-edge-connected subgraph.

The supremum definition and the degree bounds follow the proposal mathlib4#42494, and the invariant matches the multigraph Graph.edgeConnectivity on Graph.ofSimpleGraph.

Main definitions #

Main results #

noncomputable def SimpleGraph.edgeConnectivity {V : Type u_1} (G : SimpleGraph V) :

The edge connectivity of a simple graph: the supremum in ℕ∞ of the natural thresholds k at which it is k-edge-connected. It is ⊤ when there is at most one vertex.

Instances For

    Edge connectivity records exactly the thresholds at which the graph is edge-connected.

    Edge connectivity is monotone in the graph.

    @[simp]

    A graph on at most one vertex has edge connectivity ⊤.

    Degree bounds #

    On at least two vertices, edge connectivity is at most the degree of every vertex of finite degree.

    On a finite vertex type with at least two vertices, a k-edge-connected graph has minimum degree at least k.

    On a finite vertex type with at least two vertices, edge connectivity is at most the minimum degree.

    On a finite vertex type, edge connectivity is ⊤ exactly when there is at most one vertex.

    Subgraph walks and cycle connectivity #

    theorem SimpleGraph.Walk.reachable_deleteEdges_coe {V : Type u_1} {G : SimpleGraph V} {K : G.Subgraph} {s : Set (Sym2 ↑K.verts)} {u v : V} (p : G.Walk u v) (hpK : p.toSubgraph ≤ K) (hps : ∀ e ∈ s, Sym2.map Subtype.val e ∉ p.edges) :

    If a walk p in G has p.toSubgraph ≤ K and uses none of the underlying edges of s : Set (Sym2 K.verts), then its endpoints are reachable in K.coe.deleteEdges s.

    theorem SimpleGraph.Walk.IsTrail.reachable_deleteEdges_coe_or_reachable_deleteEdges_coe {V : Type u_1} {G : SimpleGraph V} {K : G.Subgraph} {u v : V} {p : G.Walk u v} (hp : p.IsTrail) (hpK : p.toSubgraph ≤ K) (f : Sym2 ↑K.verts) {w : V} (hw : w ∈ p.support) :

    Along a trail p : G.Walk u v with p.toSubgraph ≤ K, deleting any single edge f of K.coe leaves every vertex on p reachable from u or from v in K.coe.deleteEdges {f}.

    The subgraph traced by any closed trail in a simple graph is 2-edge-connected, with no finiteness assumption.

    The subgraph traced by any cycle in a simple graph is 2-edge-connected, with no finiteness assumption.