Fixed-Host Colored Deletion Decks #
This module starts the Lean infrastructure for the fixed-host singleton
analysis in proof_sketch.tex.
The fixed-host problem keeps one graph K fixed and compares subsets
U V : Set V by the colored vertex-deletion decks of (K, S, U) and
(K, S, V), where S is a passive first color and U/V are the active
second colors.
The definitions here are intentionally modest: colored card isomorphisms, deleted colors, fixed-host same-deck, and the one-hole/two-hole cards used in the low/complementary rectangular boundary.
A finite nonempty self-map has a positive-period orbit point. This is the generic finite-dynamics fact used below for chosen active successor systems.
A graph isomorphism preserving two vertex colors.
Instances For
The identity two-colored isomorphism.
Equations
- SimpleGraph.TwoColorIso.refl G S T = { iso := SimpleGraph.Iso.refl, map_first := ⋯, map_second := ⋯ }
Instances For
Reverse a two-colored isomorphism.
Instances For
Compose two two-colored isomorphisms.
Instances For
The set of vertices on which two vertices u and v have different
adjacency in K, excluding u and v themselves. This is the
neighborhood-symmetric-difference set. When u, v are twins in K, this set
is empty.
Instances For
Twin equivalence: the twin-difference set is empty iff u and v are
twins.
The twin-difference set is symmetric in its two arguments.
Twins is symmetric.
Twins is reflexive: every vertex is a twin of itself.
The fixed-host colored card obtained from (K, S, U) by deleting z.
Equations
- K.fixedHostCardGraph z = K.deleteVert z
Instances For
Two fixed-host colored cards are isomorphic.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Fixed-host colored card isomorphism is symmetric.
Equality of fixed-host two-colored deletion decks, represented by a matching of deleted vertices.
Equations
- K.FixedHostSameDeck S U V' = ∃ (σ : V ≃ V), ∀ (z : V), K.FixedHostCardIso S U V' z (σ z)
Instances For
Equality of restricted fixed-host two-colored deletion decks. The deleted
vertices on the left are restricted to R, and the deleted vertices on the
right are restricted to R'.
This is the Lean object corresponding to a single color-size slice in the fixed-host singleton argument.
Equations
- K.FixedHostSameSubdeck S U V' R R' = ∃ (σ : ↑R ≃ ↑R'), ∀ (z : ↑R), K.FixedHostCardIso S U V' ↑z ↑(σ z)
Instances For
Fixed-host same-deck is reflexive.
Fixed-host same-deck is symmetric.
Restricted fixed-host same-deck is reflexive.
Restricted fixed-host same-deck is symmetric.
The left singleton second color T ∪ {a}.
Equations
- SimpleGraph.singletonLeft T a = T ∪ {a}
Instances For
The right singleton second color T ∪ {b}.
Equations
- SimpleGraph.singletonRight T b = T ∪ {b}
Instances For
Vertices deleted in the complementary slice on the a-side:
O ∪ {b}.
Equations
- SimpleGraph.complementaryDeleteLeft T a b = SimpleGraph.singletonOutside T a b ∪ {b}
Instances For
Vertices deleted in the complementary slice on the b-side:
O ∪ {a}.
Equations
- SimpleGraph.complementaryDeleteRight T a b = SimpleGraph.singletonOutside T a b ∪ {a}
Instances For
The fixed-host singleton hypotheses: the active second color changes from
T ∪ {a} to T ∪ {b} and the fixed-host colored decks agree.
Equations
- K.FixedHostSingletonState S T a b = (a ∉ T ∧ b ∉ T ∧ a ≠ b ∧ K.FixedHostSameDeck S (SimpleGraph.singletonLeft T a) (SimpleGraph.singletonRight T b))
Instances For
The desired singleton conclusion: a color-preserving automorphism of the
fixed host carries T ∪ {a} to T ∪ {b}.
Equations
- K.FixedHostSingletonSolved S T a b = Nonempty (K.TwoColorIso K S (SimpleGraph.singletonLeft T a) S (SimpleGraph.singletonRight T b))
Instances For
The fixed-host singleton conjecture as a Lean proposition.
Equations
- K.FixedHostSingletonConjecture S T a b = (K.FixedHostSingletonState S T a b → K.FixedHostSingletonSolved S T a b)
Instances For
Equality of the low color-size slice
{{H_a}} + {{A_t : t ∈ T}} = {{H_b}} + {{B_t : t ∈ T}}, represented by a
matching between the second-colored deletion vertices.
Equations
- K.LowSliceSameDeck S T a b = K.FixedHostSameSubdeck S (SimpleGraph.singletonLeft T a) (SimpleGraph.singletonRight T b) (SimpleGraph.singletonLeft T a) (SimpleGraph.singletonRight T b)
Instances For
Equality of the complementary color-size slice
{{C_b^a}} + {{C_o^a : o ∈ O}} = {{C_a^b}} + {{C_o^b : o ∈ O}}, represented
by a matching between the non-second-colored deletion vertices.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A sharper possible route: the low slice alone reconstructs the fixed-host orbit of the singleton color set.
Equations
- K.LowSliceOrbitReconstruction S T a b = (K.LowSliceSameDeck S T a b → K.FixedHostSingletonSolved S T a b)
Instances For
A chosen fixed-host card isomorphism. Unlike FixedHostCardIso, this
remembers the actual card map, so we can ask whether its deleted-vertex star
extends correctly.
- cardIso : (K.deleteVert x).TwoColorIso (K.deleteVert y) (deleteColor S x) (deleteColor U x) (deleteColor S y) (deleteColor U' y)
Instances For
A chosen fixed-host card isomorphism gives the corresponding existential card isomorphism.
The deleted-vertex star error is zero when the card isomorphism transports the neighbors of the left deleted vertex to the neighbors of the right deleted vertex.
Equations
Instances For
A concrete failed adjacency in the deleted star of a chosen card isomorphism.
Instances For
A star mismatch whose source endpoint remains active after deleting x.
Equations
- e.ActiveStarMismatch z = (e.StarMismatch z ∧ ↑z ∈ U)
Instances For
Zero star error is the same as having no concrete star mismatch.
A nonzero star error has a concrete witness.
If every concrete mismatch is absent, the star error is zero.
The chosen card map preserves the first color away from the deleted vertices.
The chosen card map carries the left second color to the right second color away from the deleted vertices.
The number of deleted-star adjacencies on which a chosen card isomorphism fails to extend.
Equations
- e.starErrorCount = Fintype.card { z : { w : V // w ≠ x } // e.StarMismatch z }
Instances For
The star-error count is zero exactly when the deleted star is transported correctly.
Positive star-error count is the same as nonzero deleted-star error.
The star-error count of a chosen card isomorphism is even.
This is the deleted-star parity lemma: the chosen card isomorphism gives an isomorphism between the two deleted-vertex graphs, hence the deleted vertices have equal degree. The star-error count is the size of the symmetric difference of the two neighborhoods (as transported through the card iso), which has the same parity as the sum of the degrees, which is even since the degrees agree.
If the deleted vertex is first-colored, then the first-colored part of the deleted card is strictly smaller than the full first color.
If the deleted vertex is not first-colored, then deleting it does not change the size of the first-colored part of the card.
A first-color-preserving card isomorphism identifies the cardinalities of the first-colored parts of the two deleted cards.
In a finite host, the first-color status of the deleted vertex is visible from any first-color-preserving card isomorphism.
Extend a card bijection between K - x and K - y to the full vertex set
by sending the left deleted vertex x to the right deleted vertex y.
Equations
- e.extendedEquiv = (Equiv.optionSubtypeNe x).symm.trans (e.cardIso.iso.optionCongr.trans (Equiv.optionSubtypeNe y))
Instances For
A zero-star-error card isomorphism extends to a graph automorphism of the fixed host, sending the deleted vertex on the left to the deleted vertex on the right.
Equations
- e.extendIsoOfZeroStarError hstar = { toEquiv := e.extendedEquiv, map_rel_iff' := ⋯ }
Instances For
If the deleted vertices have matching color status, then a zero-star-error card isomorphism extends to a two-colored automorphism of the full fixed host.
Equations
- e.extendTwoColorIsoOfZeroStarError hFirst hSecond hstar = { iso := e.extendIsoOfZeroStarError hstar, map_first := ⋯, map_second := ⋯ }
Instances For
Nonempty wrapper for the general zero-star card-extension lemma.
Restrict a full two-colored automorphism to the card obtained by deleting
x and its image.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The card restriction of a full automorphism has zero deleted-star error.
Singleton-switch specialization of the general zero-star card-extension lemma for a low-slice step deleting active vertices on both sides.
A chosen matching of two restricted fixed-host subdecks, including the actual card isomorphism for each matched deleted vertex.
- cardIso (z : ↑R) : K.FixedHostCardIsoData S U U' ↑z ↑(self.toEquiv z)
Instances For
A chosen restricted subdeck matching gives the corresponding existential same-subdeck proposition.
Choose concrete card isomorphisms from an existential restricted subdeck matching.
Equations
- SimpleGraph.FixedHostSubdeckIsoData.ofSameSubdeck h = { toEquiv := Classical.choose h, cardIso := fun (z : ↑R) => { cardIso := Classical.choice ⋯ } }
Instances For
A chosen low-slice matching for the singleton switch.
Equations
- K.LowSliceIsoData S T a b = K.FixedHostSubdeckIsoData S (SimpleGraph.singletonLeft T a) (SimpleGraph.singletonRight T b) (SimpleGraph.singletonLeft T a) (SimpleGraph.singletonRight T b)
Instances For
The active zero-star pair target: some low-slice card match deletes an active vertex on each side, has matching first-color status, and has zero deleted-star error.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A perfect zero-star matching of the active deletion deck. This is the
global version of LowSliceZeroStarPair: every active deleted vertex is
matched to an active deleted vertex by a card isomorphism whose deleted-star
error is zero.
- cardIso (x : ↑(singletonLeft T a)) : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) ↑x ↑(self.toEquiv x)
- zero_star (x : ↑(singletonLeft T a)) : (self.cardIso x).ZeroStarError
Instances For
A perfect zero-star matching solves the singleton switch.
Any full solution induces a perfect zero-star matching of the active deletion deck.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Existence of a perfect zero-star matching is equivalent to the desired orbit conclusion.
A perfect zero-star matching contains, in particular, an active zero-star pair.
An active zero-star pair is enough to solve the singleton switch.
Conversely, any full solution restricts to an active zero-star pair. Thus
LowSliceZeroStarPair is the orbit conclusion packaged as a deck-visible
witness.
Active zero-star pairs are equivalent to the desired fixed-host singleton orbit conclusion.
The one-pair and perfect-matching zero-star formulations are equivalent. The perfect matching is not extra mathematics: a full solution induces one, and any one of its edges is already enough.
In a no-zero-star-pair obstruction, every active card match has a concrete deleted-star mismatch.
Normal form for the local obstruction: there is no active zero-star pair exactly when every active card match has a concrete deleted-star mismatch.
The current focused local conjecture: low-slice equality exposes an active zero-star pair.
Equations
- K.LowSliceZeroStarPairConjecture S T a b = (K.LowSliceSameDeck S T a b → K.LowSliceZeroStarPair S T a b)
Instances For
The active zero-star pair conjecture implies the low-slice orbit reconstruction target.
The active-zero-star formulation is equivalent to low-slice orbit reconstruction; it is a local witness formulation of the same target.
Choose a concrete low-slice matching from low-slice deck equality.
Equations
Instances For
In finite hosts, every chosen low-slice card match has matching passive first-color status.
If one matched low-slice card has zero star error and the two deleted vertices have the same passive first-color status, then that single card match extends to a full solution of the singleton switch.
If every chosen low-slice card match has zero star error and matching first-color status, then the chosen low-slice matching is a perfect zero-star matching.
Equations
Instances For
A chosen complementary-slice matching for the singleton switch.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The complementary-slice zero-star pair target: some complementary-slice
card match deletes a vertex from O ∪ {b} on the left and O ∪ {a} on the
right, with matching first-color status, and has zero deleted-star error.
A complementary zero-star pair plays the same role as a low-slice zero-star pair: it extends to a full fixed-host singleton solution. The two slices give two independent routes to orbit success.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A perfect complementary-slice zero-star matching: every complementary-slice deleted vertex on the left is matched to a complementary-slice deleted vertex on the right by a card isomorphism whose deleted-star error is zero.
- cardIso (x : ↑(complementaryDeleteLeft T a b)) : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) ↑x ↑(self.toEquiv x)
- zero_star (x : ↑(complementaryDeleteLeft T a b)) : (self.cardIso x).ZeroStarError
Instances For
Singleton-switch specialization of the general zero-star card-extension lemma for a complementary-slice step deleting non-singleton vertices on both sides.
A vertex in complementaryDeleteLeft is outside singletonLeft, provided
the endpoint b itself is not active. This is the non-degeneracy assumption
that b ∉ T ∪ {a} — typically holds in the singleton-switch setup.
Analogous: a vertex in complementaryDeleteRight is outside
singletonRight, provided a ∉ T ∪ {b}.
A complementary-slice zero-star pair is enough to solve the singleton
switch, provided a, b are genuinely "outside" the active colors of the other
side (the standard non-degeneracy: b ∉ T ∪ {a} and a ∉ T ∪ {b}).
Any chosen complementary-slice zero-star matching produces a complementary-slice zero-star pair.
A perfect complementary-slice zero-star matching solves the singleton
switch (given the non-degeneracy assumptions on a and b).
Conversely, any full singleton-switch solution restricts to a
complementary-slice zero-star pair, using b on the left side.
Complementary-slice zero-star pairs are equivalent to the desired
fixed-host singleton orbit conclusion (given non-degeneracy on a, b).
The graph K - {t,o}.
Instances For
Delete two vertices from a color.
Equations
- SimpleGraph.deleteTwoColor A t o = {x : SimpleGraph.deleteTwoVertex t o | ↑x ∈ A}
Instances For
Restrict a chosen one-card isomorphism to the two-hole card obtained by
also deleting a surviving vertex z. This is the formal version of isolating
a star-error witness in a common two-hole base.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A localized first star error for one active low-slice card match. The witness records both the failed deleted-star adjacency and the common two-hole colored card obtained by deleting the failed surviving vertex as well.
- mismatch : e.StarMismatch self.z
- twoHoleIso : (K.deleteTwo ↑x ↑self.z).TwoColorIso (K.deleteTwo ↑y ↑(e.cardIso.iso.toEquiv self.z)) (deleteTwoColor S ↑x ↑self.z) (deleteTwoColor (singletonLeft T a) ↑x ↑self.z) (deleteTwoColor S ↑y ↑(e.cardIso.iso.toEquiv self.z)) (deleteTwoColor (singletonRight T b) ↑y ↑(e.cardIso.iso.toEquiv self.z))
Instances For
The image of the first-error vertex on the right card.
Instances For
The first-error witness is active when its source vertex is still in the
left active color after deleting x.
Equations
- E.Active = (↑E.z ∈ SimpleGraph.singletonLeft T a)
Instances For
The first-error witness is inactive when its source vertex is outside the
left active color after deleting x.
Equations
- E.Inactive = (↑E.z ∉ SimpleGraph.singletonLeft T a)
Instances For
The localized target vertex is still present in the right card.
The first-error witness has the same active-color status on the two localized cards.
Equivalently, inactive first-error witnesses also stay inactive.
Every localized first error is either active-active or inactive-inactive.
Every localized first error is, in source terms, active or inactive.
Recenter an active first-error witness at its source first-error vertex.
Equations
- E.sourceActiveVertex hE = ⟨↑E.z, hE⟩
Instances For
Recenter an active first-error witness at its target first-error vertex.
Equations
- E.targetActiveVertex hE = ⟨E.imageZ, ⋯⟩
Instances For
The first-error witness has the same passive first-color status on the two localized cards.
The local obstruction form: every visible active card match with matching first-color status has a concrete first star error above a common two-hole colored card.
Equations
- One or more equations did not get rendered due to their size.
Instances For
In a no-zero-star-pair obstruction, every active card match localizes to a two-hole card together with a concrete star mismatch over that two-hole base.
In a no-zero-star-pair obstruction, every visible active card match has a packaged first-error witness.
The absence of an active zero-star pair is equivalent to the local first-error obstruction.
Restatement in the direction used by the proof campaign: if there is no active zero-star pair, then the obstruction can be worked with locally above each active card edge.
Under a no-zero-star-pair assumption, every edge of a chosen finite low-slice matching has a packaged first-error witness.
The total deleted-star error of a chosen low-slice matching.
Equations
- e.totalStarErrorCount = ∑ x : ↑(SimpleGraph.singletonLeft T a), (e.cardIso x).starErrorCount
Instances For
The total deleted-star error of any chosen low-slice matching is even.
Total star error is zero exactly when every matched low-slice card has zero star error.
A zero-total-error low-slice matching is a perfect zero-star matching.
Equations
- e.toZeroStarMatchingOfTotalErrorZero hzero = e.toZeroStarMatching ⋯ ⋯
Instances For
Forget the zero-star fields of a perfect zero-star matching, keeping only the underlying chosen low-slice matching.
Equations
Instances For
The low-slice matching underlying a perfect zero-star matching has total star error zero.
A chosen low-slice matching has no zero-star edge.
Equations
- e.NoZeroStarEdge = ∀ (x : ↑(SimpleGraph.singletonLeft T a)), ¬(e.cardIso x).ZeroStarError
Instances For
No zero-star edge is equivalent to every matched card carrying positive star error.
A chosen low-slice matching has minimum total star error among all chosen low-slice matchings.
Equations
- e.IsMinimumStarError = ∀ (e' : K.LowSliceIsoData S T a b), e.totalStarErrorCount ≤ e'.totalStarErrorCount
Instances For
A minimum-error chosen low-slice matching. This is the formal counterpart of choosing a minimum-error active-card matching in the proof sketch.
- toIsoData : K.LowSliceIsoData S T a b
- minimum : self.toIsoData.IsMinimumStarError
Instances For
Low-slice equality admits a minimum-error chosen matching. The proof uses
well-ordering of ℕ on the set of total star-error values, not finiteness of
the space of card isomorphisms.
An active first-error witness above one edge of a minimum-error matching.
- error : K.LowSliceCardFirstError S T a b x (m.toIsoData.toEquiv x) (m.toIsoData.cardIso x)
Instances For
An inactive first-error witness above one edge of a minimum-error matching.
- error : K.LowSliceCardFirstError S T a b x (m.toIsoData.toEquiv x) (m.toIsoData.cardIso x)
Instances For
The active source vertex reached by following this first error.
Equations
- E.source = E.error.sourceActiveVertex ⋯
Instances For
The active target vertex reached by following this first error.
Equations
- E.target = E.error.targetActiveVertex ⋯
Instances For
The left vertex currently matched to the active target of this first error. This is the successor vertex in the alternating exchange graph.
Instances For
A coherent active first error points at the right mate of its own active source. These are the side-cycle cases in the exchange picture.
Instances For
A noncoherent active first error is a genuine alternating exchange step.
Equations
- E.Noncoherent = (E.source ≠ E.nextLeft)
Instances For
In the coherent case, the active target is exactly the matched mate of the active source.
The active first-error source is genuinely different from the deleted base of the card where it was found.
The active first-error target is genuinely different from the deleted right-hand base of the card where it was found.
The successor of an active first error is also different from the deleted base where the error was found.
Following an active first error carries a concrete two-hole transport from the old edge to the recentered active pair.
Equations
Instances For
The adjacency-mismatch lemma for an active first error: the host adjacency between the deleted base and the active source vertex disagrees with the host adjacency between the matched mate of the base and the matched mate of the observer successor. This holds for both coherent and noncoherent active first errors and is the unified geometric content of the deleted-star error.
In the coherent case, the recentered two-hole transport deletes a matched active pair on the right.
Equations
- E.coherentTwoHoleIso h = ⋯.mpr E.recenteredTwoHoleIso
Instances For
The complementary-side source vertex reached by following an inactive first error.
Instances For
The complementary-side target vertex reached by following an inactive first error.
Instances For
Following an inactive first error carries a concrete two-hole transport from the old active edge to a complementary-side recentering.
Equations
Instances For
The inactive source lies in the outside core O.
Instances For
The inactive source is the opposite endpoint b.
Instances For
The inactive target lies in the outside core O.
Instances For
The inactive target is the opposite endpoint a.
Instances For
An inactive first error exposes one of the opposite endpoints.
Equations
- E.EndpointExposing = (E.SourceAtB ∨ E.TargetAtA)
Instances For
An inactive first error stays entirely in the outside core.
Equations
Instances For
A purely outer inactive residual does not expose either endpoint.
Inactive first errors not seen at the endpoints are exactly outer residuals.
A minimum-error matching has total error zero whenever an active zero-star pair exists.
For a minimum-error matching, total error zero is equivalent to the active zero-star pair target.
For a minimum-error matching, positive total error is exactly the no-pair obstruction.
For a minimum-error matching, having no zero-star edge is exactly the local no-pair obstruction.
Under the no-pair obstruction, every edge of a minimum-error matching has a packaged first-error witness.
Every first-error witness above a minimum-error no-pair obstruction is in one of the two color-compatible branches: active-active or inactive-inactive.
The strengthened minimum-error route: every low-slice equality has a minimum-error matching of total star error zero.
Equations
- K.LowSliceMinimumErrorZeroConjecture S T a b = (K.LowSliceSameDeck S T a b → ∃ (m : K.LowSliceMinimumErrorMatching S T a b), m.toIsoData.totalStarErrorCount = 0)
Instances For
A fully packaged positive minimum-error obstruction to the current route.
- low : K.LowSliceSameDeck S T a b
- min : K.LowSliceMinimumErrorMatching S T a b
Instances For
The exact no-positive-obstruction form of the minimum-error route.
Equations
- K.NoLowSlicePositiveMinimumObstruction S T a b = ¬Nonempty (K.LowSlicePositiveMinimumObstruction S T a b)
Instances For
The minimum-error-zero route implies the active zero-star-pair conjecture.
The minimum-error-zero formulation is equivalent to the active zero-star pair formulation.
Failing the minimum-error-zero route is equivalent to exhibiting a positive minimum-error obstruction.
Ruling out positive minimum-error obstructions is exactly the minimum-error-zero route.
A positive minimum-error obstruction has no active zero-star pair.
The total star error of a positive minimum-error obstruction is at least 2. This follows from the parity lemma: a per-card star error is always even, so the total is even, and a positive even number is at least 2.
A positive minimum-error obstruction has no zero-star edge in its chosen minimum matching.
In a positive minimum-error obstruction, every card iso in the chosen matching has star error count at least 2. This is the parity lemma applied edge-wise: each card is forced to have at least one mismatch (no zero-star edges), and the parity lemma forces the count to be even.
In a positive minimum-error obstruction, the total star error is at least twice the number of singleton-left vertices. This is the parity bound summed over all matched edges.
Star-error gap for minimum-error matchings: the total star error is either
zero or at least 2 * |singletonLeft T a|.
This packages the parity bound at the matching level: a minimum-error matching
with strictly positive total error gives a positive obstruction, which by the
parity bound has total at least twice the number of left vertices. In
particular, a minimum-error matching cannot have total star error equal to 1,
3, 5, ... or any value strictly between 0 and 2|singletonLeft|.
With empty T, there is no active first-error witness anywhere. This is
because singletonLeft ∅ a = {a}, so the witness vertex z ≠ a cannot be in
singletonLeft, contradicting the active condition.
With empty T, no positive minimum-error obstruction admits the all-active
branch. This rules out one of the five subforks (the all-coherent and
noncoherent active cycle forks) in the special case T = ∅.
Every edge of a positive minimum-error obstruction splits into the active or inactive first-error branch.
The active branch is available above the matched edge x.
Equations
- o.HasActiveBranch x = Nonempty (o.min.ActiveFirstError x)
Instances For
The inactive branch is available above the matched edge x.
Equations
- o.HasInactiveBranch x = Nonempty (o.min.InactiveFirstError x)
Instances For
All matched edges admit an active first-error branch.
Equations
- o.AllActiveBranches = ∀ (x : ↑(SimpleGraph.singletonLeft T a)), o.HasActiveBranch x
Instances For
All matched edges admit an inactive first-error branch.
Equations
- o.AllInactiveBranches = ∀ (x : ↑(SimpleGraph.singletonLeft T a)), o.HasInactiveBranch x
Instances For
A positive obstruction has both active and inactive first-error branches somewhere in the chosen minimum matching.
Equations
- o.HasMixedBranches = ((∃ (x : ↑(SimpleGraph.singletonLeft T a)), o.HasActiveBranch x) ∧ ∃ (x : ↑(SimpleGraph.singletonLeft T a)), o.HasInactiveBranch x)
Instances For
If a positive obstruction is not active everywhere, it has an inactive branch somewhere.
If a positive obstruction is not inactive everywhere, it has an active branch somewhere.
Every positive minimum-error obstruction is all-active, all-inactive, or genuinely mixed.
A packaged active exchange step inside a positive minimum-error obstruction.
- base : ↑(singletonLeft T a)
- witness : o.min.ActiveFirstError self.base
Instances For
A chosen active first-error witness over every matched edge of a positive minimum-error obstruction.
- witness (x : ↑(singletonLeft T a)) : o.min.ActiveFirstError x
Instances For
Choose an active observer system from the proposition that every edge has an active branch.
Equations
- SimpleGraph.LowSlicePositiveMinimumObstruction.ActiveObserverSystem.ofAllActiveBranches h = { witness := fun (x : ↑(SimpleGraph.singletonLeft T a)) => Classical.choice ⋯ }
Instances For
The active transport step selected at x.
Instances For
The defect source selected at x.
Instances For
The observer successor selected at x.
Instances For
The self-map on active vertices obtained by following selected observer successors.
Equations
- B.observerMap x = B.next x
Instances For
A selected active source is never the deleted base where it is observed.
The selected observer successor is never the same as the deleted base.
The selected observer map has no fixed point.
The selected active witness at x is coherent.
Equations
- B.CoherentAt x = (B.witness x).Coherent
Instances For
The selected active witness at x is noncoherent.
Equations
- B.NoncoherentAt x = (B.witness x).Noncoherent
Instances For
At a coherent selected active witness, the defect source is the observer successor.
A coherent selected active witness is a matched two-hole transport from the base to its observer successor.
Equations
- B.coherentMatchedTwoHoleIsoAt x h = id (⋯.mp ((B.witness x).coherentTwoHoleIso h))
Instances For
A selected observer cycle for an active observer system.
Equations
- B.HasObserverCycle = ∃ (x : ↑(SimpleGraph.singletonLeft T a)) (n : ℕ), 1 < n ∧ B.observerMap^[n] x = x
Instances For
Any chosen active observer system has a nontrivial finite observer cycle.
If every edge of a positive obstruction has an active branch, then one can choose active first errors so as to get a nontrivial observer cycle.
A chosen inactive first-error witness over every matched edge of a positive minimum-error obstruction.
- witness (x : ↑(singletonLeft T a)) : o.min.InactiveFirstError x
Instances For
Choose an inactive observer system from the proposition that every edge has an inactive branch.
Equations
- SimpleGraph.LowSlicePositiveMinimumObstruction.InactiveObserverSystem.ofAllInactiveBranches h = { witness := fun (x : ↑(SimpleGraph.singletonLeft T a)) => Classical.choice ⋯ }
Instances For
The selected inactive source at x.
Instances For
The selected inactive target at x.
Instances For
The selected inactive witness at x exposes an endpoint.
Equations
- B.EndpointExposingAt x = (B.witness x).EndpointExposing
Instances For
The selected inactive witness at x remains in the outside core.
Equations
- B.OuterResidualAt x = (B.witness x).OuterResidual
Instances For
Every selected inactive witness exposes an endpoint.
Equations
- B.AllEndpointExposing = ∀ (x : ↑(SimpleGraph.singletonLeft T a)), B.EndpointExposingAt x
Instances For
Some selected inactive witness remains entirely in the outside core.
Equations
- B.HasOuterResidual = ∃ (x : ↑(SimpleGraph.singletonLeft T a)), B.OuterResidualAt x
Instances For
A chosen all-inactive system is either endpoint-exposing everywhere or has an explicit outer residual.
If every edge of a positive obstruction has an inactive branch, then one can choose inactive first errors and split them into endpoint and outer cases.
The current strategic fork for any positive minimum-error obstruction: active observer cycle, all-inactive endpoint/outer split, or mixed branches.
The active-cycle fork is impossible.
Equations
- SimpleGraph.LowSlicePositiveMinimumObstruction.NoActiveObserverCycleFork K S T a b = ∀ (o : K.LowSlicePositiveMinimumObstruction S T a b), ¬∃ (B : o.ActiveObserverSystem), B.HasObserverCycle
Instances For
The all-inactive endpoint/outer fork is impossible.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The genuinely mixed active/inactive branch fork is impossible.
Equations
- SimpleGraph.LowSlicePositiveMinimumObstruction.NoMixedBranchFork K S T a b = ∀ (o : K.LowSlicePositiveMinimumObstruction S T a b), ¬o.HasMixedBranches
Instances For
Ruling out the three concrete strategy forks rules out every positive minimum-error obstruction.
The source of a packaged active exchange step.
Instances For
The target of a packaged active exchange step.
Instances For
The next base vertex obtained by pulling the target back through the chosen minimum matching.
Instances For
A coherent packaged active step is a side-cycle step.
Instances For
A noncoherent packaged active step is a genuine alternating exchange step.
Equations
Instances For
A packaged active step is noncoherent exactly when its source and successor are distinct.
The source of an active exchange step is not its base card.
The successor of an active exchange step is not its base card.
A noncoherent active step is a three-distinct-vertex configuration.
The directed active exchange relation carried by active first-error steps. An edge points from the defect source to the left vertex matched to its target.
Equations
- o.ActiveExchangeRel u v = ∃ (A : o.ActiveTransportStep), A.source = u ∧ A.nextBase = v
Instances For
The observer-successor relation carried by active first-error steps. This edge points from the deleted base card to the left vertex matched to the first-error target.
Equations
- o.ActiveObserverRel u v = ∃ (A : o.ActiveTransportStep), A.base = u ∧ A.nextBase = v
Instances For
The noncoherent part of the active exchange relation. These are the candidate descent or correction-cycle edges.
Equations
- o.ActiveNoncoherentRel u v = ∃ (A : o.ActiveTransportStep), A.source = u ∧ A.nextBase = v ∧ A.Noncoherent
Instances For
The noncoherent active exchange relation has no loops.
Every noncoherent active exchange edge connects distinct active vertices.
A selected noncoherent active witness gives a noncoherent correction edge.
Observer-successor active edges also have no loops.
Every observer-successor active edge connects distinct active vertices.
A selected active observer system gives an observer edge from every base to its selected successor.
Consecutive vertices along the selected active observer orbit form observer relation edges.
A packaged nontrivial cycle in a selected active observer system.
- system : o.ActiveObserverSystem
- base : ↑(singletonLeft T a)
- period : ℕ
Instances For
The selected witness at index n of the cycle is coherent.
Equations
- C.CoherentAtIndex n = C.system.CoherentAt (C.system.observerMap^[n] C.base)
Instances For
The selected witness at index n of the cycle is noncoherent.
Equations
- C.NoncoherentAtIndex n = C.system.NoncoherentAt (C.system.observerMap^[n] C.base)
Instances For
Every selected witness on the active observer cycle is coherent.
Equations
- C.AllCoherent = ∀ (n : ℕ), C.CoherentAtIndex n
Instances For
Some selected witness on the active observer cycle is noncoherent.
Equations
- C.HasNoncoherent = ∃ (n : ℕ), C.NoncoherentAtIndex n
Instances For
Consecutive vertices on an active observer cycle are observer-relation edges.
The last edge of the cycle returns to the base after using the closing equation.
A noncoherent index on the observer cycle gives a noncoherent correction edge from the defect source to the next observer vertex.
On an all-coherent active observer cycle, every cycle edge carries a matched two-hole transport between consecutive active vertices and their matched mates.
Equations
- C.coherentMatchedTwoHoleIso_at hall n = ⋯.mpr (C.system.coherentMatchedTwoHoleIsoAt (C.system.observerMap^[n] C.base) ⋯)
Instances For
On an all-coherent active observer cycle, the host adjacency between two consecutive cycle bases disagrees with the host adjacency between their matched mates under the chosen minimum matching. This is the geometric content of the coherent active first error: the only "missing" adjacency information on each side is exactly the edge between the deleted base and the next cycle vertex, and that information disagrees.
On an all-coherent active observer cycle, the chosen matching cannot fix two consecutive cycle vertices pointwise: at every index, at least one of the two consecutive matched mates is genuinely different from the cycle vertex itself. This is the parity obstruction to the matching being "trivial" on the cycle.
On an all-coherent active observer cycle, the chosen matching moves at least one cycle vertex: there is some index where the matched mate differs from the cycle vertex on the host.
The base of an active observer cycle has a positive minimal period under the observer map.
The base of an active observer cycle has minimal period not equal to one — the observer map has no fixed points.
The base of an active observer cycle has minimal period strictly greater than one — the observer map has no fixed points, so cycles cannot collapse to a single vertex.
A minimal-period active observer cycle: redefine the cycle to use the
minimal period at the same base. The iterates over [0, period) are then
pairwise distinct.
Equations
- C.toMinimalPeriod = { system := C.system, base := C.base, period := Function.minimalPeriod C.system.observerMap C.base, period_gt_one := ⋯, closes := ⋯ }
Instances For
Iterates of the observer map below the minimal period are pairwise distinct at the base of the minimal-period cycle.
The minimal period of an active observer cycle is bounded by the size of
singletonLeft T a.
The number of singleton-left vertices is at least 2 whenever there is an
active observer cycle on a positive minimum-error obstruction. This rules out
trivial cases like T = ∅ for the all-active branch.
Along any active observer system on a positive minimum-error obstruction, the chosen minimum-error card iso at every base has star error count at least 2.
This combines two facts: (i) the active first-error witness at each base contributes at least one star mismatch; (ii) the parity lemma forces the per-card star error count to be even.
On an active observer cycle (under the all-active branch), the chosen minimum-error card iso at any cycle base has star error at least 2.
The all-active branch yields a packaged active observer cycle.
The all-coherent active observer-cycle fork is impossible.
Equations
- SimpleGraph.LowSlicePositiveMinimumObstruction.NoAllCoherentActiveCycleFork K S T a b = ∀ (o : K.LowSlicePositiveMinimumObstruction S T a b) (C : o.ActiveObserverCycle), ¬C.AllCoherent
Instances For
The active observer-cycle fork with a noncoherent index is impossible.
Equations
- SimpleGraph.LowSlicePositiveMinimumObstruction.NoNoncoherentActiveCycleFork K S T a b = ∀ (o : K.LowSlicePositiveMinimumObstruction S T a b) (C : o.ActiveObserverCycle), ¬C.HasNoncoherent
Instances For
Ruling out the all-coherent and noncoherent active cycle subforks rules out the active observer-cycle fork.
The all-inactive fork where every selected witness exposes an endpoint is impossible.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The all-inactive fork with an explicit outer residual is impossible.
Equations
- SimpleGraph.LowSlicePositiveMinimumObstruction.NoOuterResidualInactiveFork K S T a b = ∀ (o : K.LowSlicePositiveMinimumObstruction S T a b) (B : o.InactiveObserverSystem), ¬B.HasOuterResidual
Instances For
Ruling out the endpoint-exposing and outer-residual inactive subforks rules out the all-inactive endpoint/outer fork.
The refined five-branch reduction for the minimum-error obstruction route.
The a-side two-hole second color
(T \ {t}) ∪ {a} on K - {t,o}.
Equations
- SimpleGraph.twoHoleASecondColor T a t o = SimpleGraph.deleteTwoColor (SimpleGraph.singletonLeft T a) t o
Instances For
The b-side two-hole second color
(T \ {t}) ∪ {b} on K - {t,o}.
Equations
- SimpleGraph.twoHoleBSecondColor T b t o = SimpleGraph.deleteTwoColor (SimpleGraph.singletonRight T b) t o
Instances For
A two-hole match D^a_{t,o} ≅ D^b_{t',o'}.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Under a two-hole match, the image of the moved a-vertex is
second-colored on the b-side. This is the Lean version of the first
two-hole port bookkeeping statement.
Under a two-hole match, the image of any second-colored vertex is
second-colored on the b-side.
Under a two-hole match, the image of a non-second-colored vertex is
non-second-colored on the b-side.
Under a two-hole match, the preimage of the moved b-vertex is
second-colored on the a-side.
If a two-hole match sends the moved a-vertex to the moved b-vertex,
then every old T-vertex still maps to an old T-vertex. This is the
Lean-facing easy half of "name coherence means side coherence".
If a two-hole match sends the moved uncolored b-vertex to the moved
uncolored a-vertex, then outside vertices stay outside.