OAI/Combinatorics/PerfectMatching/Contraction.lean
36 declarations, 0 contain sorry, 0 declared as axioms
Contraction of tight odd cuts and gluing of perfect matchings and their laws.
- def
OAI.MatchingEntropy.LooplessGraph.onSideline 23Source documentation
Contraction of the complement of S to a new vertex. Edges retain identities; only edges with both endpoints outside S are discarded.
def onSide (G : LooplessGraph V E) (S : Finset V) : LooplessGraph (Option {v // v ∈ S}) {e // G.left e ∈ S ∨ G.right e ∈ S} where … - theorem
OAI.MatchingEntropy.LooplessGraph.onSide_incident_someline 40 - theorem
OAI.MatchingEntropy.LooplessGraph.onSide_incident_noneline 61 - def
OAI.MatchingEntropy.LooplessGraph.boundaryEdgeline 69 - theorem
OAI.MatchingEntropy.LooplessGraph.boundaryEdge_memline 73 - theorem
OAI.MatchingEntropy.LooplessGraph.boundaryEdge_crossesline 78 - theorem
OAI.MatchingEntropy.LooplessGraph.eq_boundaryEdgeline 83 - def
OAI.MatchingEntropy.LooplessGraph.liftedEdgesline 88 - theorem
OAI.MatchingEntropy.LooplessGraph.mem_liftedEdgesline 92 - theorem
OAI.MatchingEntropy.LooplessGraph.liftedEdges_keepline 104 - theorem
OAI.MatchingEntropy.LooplessGraph.lifted_cross_eq_boundaryline 111 - theorem
OAI.MatchingEntropy.LooplessGraph.boundary_mem_liftedline 118 - theorem
OAI.MatchingEntropy.LooplessGraph.crosses_of_kept_bothline 123 - theorem
OAI.MatchingEntropy.LooplessGraph.lifted_other_subsetline 132Source documentation
A compatible pair only duplicates its common boundary edge.
theorem lifted_other_subset (G : LooplessGraph V E) (S : Finset V) (M₁ : (G.onSide S).Matching) (M₂ : (G.onSide Sᶜ).Matching) (heq : (G.boundaryEdge S M₁).val = (G.boundaryEdge Sᶜ M₂).val) {e : E} (he : e ∈ G.liftedEdges Sᶜ M₂) (hkeep : G.left e ∈ S ∨ G.right e ∈ S) : e ∈ G.liftedEdges S M₁ := by … - theorem
OAI.MatchingEntropy.LooplessGraph.mem_glued_leftline 144Source documentation
Gluing compatible perfect matchings preserves each retained edge choice.
theorem mem_glued_left (G : LooplessGraph V E) (S : Finset V) (M₁ : (G.onSide S).Matching) (M₂ : (G.onSide Sᶜ).Matching) (heq : (G.boundaryEdge S M₁).val = (G.boundaryEdge Sᶜ M₂).val) (e : {e // G.left e ∈ S ∨ G.right e ∈ S}) : e.val ∈ G.liftedEdges S M₁ ∪ G.liftedEdges Sᶜ M₂ ↔ e ∈ M₁.val := by … - theorem
OAI.MatchingEntropy.LooplessGraph.mem_glued_rightline 158 - theorem
OAI.MatchingEntropy.LooplessGraph.glued_perfectline 176 - def
OAI.MatchingEntropy.LooplessGraph.glueMatchingline 206 - theorem
OAI.MatchingEntropy.LooplessGraph.indicator_glue_leftline 213 - theorem
OAI.MatchingEntropy.LooplessGraph.indicator_glue_rightline 221 - theorem
OAI.MatchingEntropy.LooplessGraph.boundary_eq_iff_memline 229 - theorem
OAI.MatchingEntropy.LooplessGraph.boundary_fiberline 240 - theorem
OAI.MatchingEntropy.LooplessGraph.boundary_fiber_zeroline 251 - theorem
OAI.MatchingEntropy.LooplessGraph.couple_lawsline 262Source documentation
Exact coupling across a cut, for multigraphs with distinct edge identities.
theorem couple_laws (G : LooplessGraph V E) (S : Finset V) (x : E → ℝ) {p : (G.onSide S).Matching → ℝ} {q : (G.onSide Sᶜ).Matching → ℝ} (hp : p ∈ probabilitySimplex (G.onSide S).Matching) (hq : q ∈ probabilitySimplex (G.onSide Sᶜ).Matching) (hpx : ∀ e, (G.onSide S).mean p e = x e.val) (hqx : ∀ e, (G.onSide Sᶜ).mean q e = x e.val) : ∃ r, r ∈ G.feasibleLaws x := by …Mentions: OAI.MatchingEntropy.LooplessGraph.Matching, OAI.MatchingEntropy.probabilitySimplex, OAI.MatchingEntropy.LooplessGraph.mean
- def
OAI.MatchingEntropy.LooplessGraph.sideMapline 301 - def
OAI.MatchingEntropy.LooplessGraph.liftVerticesline 304 - theorem
OAI.MatchingEntropy.LooplessGraph.mem_liftVerticesline 307 - theorem
OAI.MatchingEntropy.LooplessGraph.sideMap_someline 312 - theorem
OAI.MatchingEntropy.LooplessGraph.liftVertices_cardline 316 - theorem
OAI.MatchingEntropy.LooplessGraph.onSide_cut_crossesline 340 - theorem
OAI.MatchingEntropy.LooplessGraph.crosses_lift_keptline 347 - theorem
OAI.MatchingEntropy.LooplessGraph.onSide_cutMassline 356 - theorem
OAI.MatchingEntropy.LooplessGraph.onSide_degree_someline 366 - theorem
OAI.MatchingEntropy.LooplessGraph.onSide_degree_noneline 380 - theorem
OAI.MatchingEntropy.LooplessGraph.odd_compl_of_evenline 392 - theorem
OAI.MatchingEntropy.LooplessGraph.restriction_mem_constraintsline 403Source documentation
Exact inheritance of the odd-cut system under contraction of a tight odd cut.
theorem restriction_mem_constraints (G : LooplessGraph V E) {x : E → ℝ} (hx : x ∈ G.constraintPolytope) (S : Finset V) (hS : Odd S.card) (htight : G.cutMass x S = 1) : (fun e : {e // G.left e ∈ S ∨ G.right e ∈ S} => x e.val) ∈ (G.onSide S).constraintPolytope := by …Mentions: OAI.MatchingEntropy.LooplessGraph.constraintPolytope