Exercise 6.3 — Perfect matchings in regular bipartite graphs
ProvedYogeshwaranDM.regular_bipartite_perfect_matchingExercise 6.3 — Perfect matchings in regular bipartite graphs. Let be a finite simple bipartite graph with disjoint vertex classes covering . Let be a natural number with . If every vertex has degree , then
No separate nonemptiness assumption is imposed.
Formalization note. The conclusion uses the native IsPerfectMatching predicate. In particular, every ambient vertex is matched; the conclusion is not only a matching on the left class.
import Mathlib.Combinatorics.SimpleGraph.Hall import Mathlib.Tactic set_option autoImplicit false
namespace YogeshwaranDM
theorem regular_bipartite_perfect_matching {V : Type*} [Fintype V]
(G : SimpleGraph V) [G.LocallyFinite] (L R : Set V)
(hG : G.IsBipartiteWith L R) (hcover : L ∪ R = Set.univ)
(k : ℕ) (hk : 0 < k) (hreg : ∀ v, G.degree v = k) :
∃ M : G.Subgraph, M.IsPerfectMatching := by sorry
end YogeshwaranDM
Read-back
What the Lean code literally says, in plain math · Codex (exact model identifier unavailable in auditor runtime)
For every finite type equipped with a finite enumeration, every simple undirected loopless graph on equipped with finite enumerations of all its neighbor sets, every pair of sets , and every natural number , assume that and are disjoint, every edge of has one endpoint in each part, , , and every vertex has exactly distinct neighbors in . Then there exists a subgraph of whose vertex set contains every vertex of and in which every vertex has exactly one neighbor. A subgraph chooses a vertex set and some of the edges of , with both endpoints of every chosen edge in that vertex set; the conclusion therefore asserts a spanning matching, without asserting uniqueness of the subgraph. The degree used in the assumption is the natural-number cardinality of the finite set of neighbors, so it counts distinct adjacent vertices and involves neither an infinite cardinal nor any convention for the cardinality of an infinite set. The theorem excludes and excludes infinite vertex types, but it does not require , , or to be nonempty. When is empty, the degree condition is vacuous for every positive , both parts are empty, and the empty subgraph satisfies the conclusion. If is nonempty and either part is empty, the bipartite assumptions force every degree to be zero, so the positive-degree hypotheses cannot all hold; likewise they cannot hold at an isolated vertex.
Confirmed by the mission captain (proposal self-audit).