Documentation

Reconstruction.FixedHost

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.

theorem SimpleGraph.exists_positive_iterate_eq_self_of_finite {α : Type u_3} [Finite α] [Nonempty α] (f : αα) :
∃ (x : α) (n : ), 0 < n f^[n] x = x

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.

structure SimpleGraph.TwoColorIso {V : Type u_1} {W : Type u_2} (G : SimpleGraph V) (H : SimpleGraph W) (S T : Set V) (S' T' : Set W) :
Type (max u_1 u_2)

A graph isomorphism preserving two vertex colors.

Instances For
    def SimpleGraph.TwoColorIso.refl {V : Type u_1} (G : SimpleGraph V) (S T : Set V) :
    G.TwoColorIso G S T S T

    The identity two-colored isomorphism.

    Equations
    Instances For
      def SimpleGraph.TwoColorIso.symm {V : Type u_1} {W : Type u_2} {G : SimpleGraph V} {H : SimpleGraph W} {S T : Set V} {S' T' : Set W} (e : G.TwoColorIso H S T S' T') :
      H.TwoColorIso G S' T' S T

      Reverse a two-colored isomorphism.

      Equations
      Instances For
        def SimpleGraph.TwoColorIso.trans {V : Type u_1} {W : Type u_2} {X : Type u_3} {G : SimpleGraph V} {H : SimpleGraph W} {L : SimpleGraph X} {S T : Set V} {S' T' : Set W} {S'' T'' : Set X} (e₁ : G.TwoColorIso H S T S' T') (e₂ : H.TwoColorIso L S' T' S'' T'') :
        G.TwoColorIso L S T S'' T''

        Compose two two-colored isomorphisms.

        Equations
        Instances For
          def SimpleGraph.twinDifferenceSet {V : Type u_1} (K : SimpleGraph V) (u v : V) :
          Set V

          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.

          Equations
          Instances For
            def SimpleGraph.AreTwins {V : Type u_1} (K : SimpleGraph V) (u v : V) :

            Two vertices u and v are K-twins when they have the same neighbors among all other vertices.

            Equations
            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.

              theorem SimpleGraph.AreTwins.symm {V : Type u_1} {K : SimpleGraph V} {u v : V} (h : K.AreTwins u v) :
              K.AreTwins v u

              Twins is symmetric.

              theorem SimpleGraph.AreTwins.refl {V : Type u_1} (K : SimpleGraph V) (u : V) :
              K.AreTwins u u

              Twins is reflexive: every vertex is a twin of itself.

              def SimpleGraph.deleteColor {V : Type u_1} (A : Set V) (z : V) :
              Set { w : V // w z }

              Delete a vertex from a vertex color.

              Equations
              Instances For
                @[simp]
                theorem SimpleGraph.mem_deleteColor {V : Type u_1} (A : Set V) (z : V) (w : { w : V // w z }) :
                w deleteColor A z w A
                @[reducible, inline]
                abbrev SimpleGraph.fixedHostCardGraph {V : Type u_1} (K : SimpleGraph V) (z : V) :
                SimpleGraph { w : V // w z }

                The fixed-host colored card obtained from (K, S, U) by deleting z.

                Equations
                Instances For
                  def SimpleGraph.FixedHostCardIso {V : Type u_1} (K : SimpleGraph V) (S U V' : Set V) (z w : V) :

                  Two fixed-host colored cards are isomorphic.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    theorem SimpleGraph.FixedHostCardIso.symm {V : Type u_1} {K : SimpleGraph V} {S U V' : Set V} {z w : V} (h : K.FixedHostCardIso S U V' z w) :
                    K.FixedHostCardIso S V' U w z

                    Fixed-host colored card isomorphism is symmetric.

                    def SimpleGraph.FixedHostSameDeck {V : Type u_1} (K : SimpleGraph V) (S U V' : Set V) :

                    Equality of fixed-host two-colored deletion decks, represented by a matching of deleted vertices.

                    Equations
                    Instances For
                      def SimpleGraph.FixedHostSameSubdeck {V : Type u_1} (K : SimpleGraph V) (S U V' R R' : Set V) :

                      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
                      Instances For
                        theorem SimpleGraph.FixedHostSameDeck.refl {V : Type u_1} (K : SimpleGraph V) (S U : Set V) :

                        Fixed-host same-deck is reflexive.

                        theorem SimpleGraph.FixedHostSameDeck.symm {V : Type u_1} {K : SimpleGraph V} {S U V' : Set V} (h : K.FixedHostSameDeck S U V') :

                        Fixed-host same-deck is symmetric.

                        theorem SimpleGraph.FixedHostSameSubdeck.refl {V : Type u_1} (K : SimpleGraph V) (S U R : Set V) :

                        Restricted fixed-host same-deck is reflexive.

                        theorem SimpleGraph.FixedHostSameSubdeck.symm {V : Type u_1} {K : SimpleGraph V} {S U V' R R' : Set V} (h : K.FixedHostSameSubdeck S U V' R R') :
                        K.FixedHostSameSubdeck S V' U R' R

                        Restricted fixed-host same-deck is symmetric.

                        def SimpleGraph.singletonLeft {V : Type u_1} (T : Set V) (a : V) :
                        Set V

                        The left singleton second color T ∪ {a}.

                        Equations
                        Instances For
                          @[simp]
                          theorem SimpleGraph.mem_singletonLeft {V : Type u_1} (T : Set V) (a x : V) :
                          x singletonLeft T a x T x = a
                          def SimpleGraph.singletonRight {V : Type u_1} (T : Set V) (b : V) :
                          Set V

                          The right singleton second color T ∪ {b}.

                          Equations
                          Instances For
                            @[simp]
                            theorem SimpleGraph.mem_singletonRight {V : Type u_1} (T : Set V) (b x : V) :
                            x singletonRight T b x T x = b
                            def SimpleGraph.singletonOutside {V : Type u_1} (T : Set V) (a b : V) :
                            Set V

                            The outside set O = V(K) \ (T ∪ {a,b}) in the singleton switch.

                            Equations
                            Instances For
                              @[simp]
                              theorem SimpleGraph.mem_singletonOutside {V : Type u_1} (T : Set V) (a b x : V) :
                              x singletonOutside T a b xT x a x b
                              def SimpleGraph.complementaryDeleteLeft {V : Type u_1} (T : Set V) (a b : V) :
                              Set V

                              Vertices deleted in the complementary slice on the a-side: O ∪ {b}.

                              Equations
                              Instances For
                                @[simp]
                                theorem SimpleGraph.mem_complementaryDeleteLeft {V : Type u_1} (T : Set V) (a b x : V) :
                                def SimpleGraph.complementaryDeleteRight {V : Type u_1} (T : Set V) (a b : V) :
                                Set V

                                Vertices deleted in the complementary slice on the b-side: O ∪ {a}.

                                Equations
                                Instances For
                                  @[simp]
                                  theorem SimpleGraph.mem_complementaryDeleteRight {V : Type u_1} (T : Set V) (a b x : V) :
                                  def SimpleGraph.FixedHostSingletonState {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :

                                  The fixed-host singleton hypotheses: the active second color changes from T ∪ {a} to T ∪ {b} and the fixed-host colored decks agree.

                                  Equations
                                  Instances For
                                    def SimpleGraph.FixedHostSingletonSolved {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :

                                    The desired singleton conclusion: a color-preserving automorphism of the fixed host carries T ∪ {a} to T ∪ {b}.

                                    Equations
                                    Instances For
                                      def SimpleGraph.FixedHostSingletonConjecture {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :

                                      The fixed-host singleton conjecture as a Lean proposition.

                                      Equations
                                      Instances For
                                        def SimpleGraph.LowSliceSameDeck {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :

                                        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
                                        Instances For
                                          def SimpleGraph.ComplementarySliceSameDeck {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :

                                          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
                                            def SimpleGraph.LowSliceOrbitReconstruction {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :

                                            A sharper possible route: the low slice alone reconstructs the fixed-host orbit of the singleton color set.

                                            Equations
                                            Instances For
                                              structure SimpleGraph.FixedHostCardIsoData {V : Type u_1} (K : SimpleGraph V) (S U U' : Set V) (x y : V) :
                                              Type u_1

                                              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.

                                              Instances For
                                                theorem SimpleGraph.FixedHostCardIsoData.cardIsoProp {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) :
                                                K.FixedHostCardIso S U U' x y

                                                A chosen fixed-host card isomorphism gives the corresponding existential card isomorphism.

                                                def SimpleGraph.FixedHostCardIsoData.ZeroStarError {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) :

                                                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
                                                  def SimpleGraph.FixedHostCardIsoData.StarMismatch {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) (z : { w : V // w x }) :

                                                  A concrete failed adjacency in the deleted star of a chosen card isomorphism.

                                                  Equations
                                                  Instances For
                                                    def SimpleGraph.FixedHostCardIsoData.ActiveStarMismatch {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) (z : { w : V // w x }) :

                                                    A star mismatch whose source endpoint remains active after deleting x.

                                                    Equations
                                                    Instances For
                                                      theorem SimpleGraph.FixedHostCardIsoData.zeroStarError_iff_no_starMismatch {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) :
                                                      e.ZeroStarError ∀ (z : { w : V // w x }), ¬e.StarMismatch z

                                                      Zero star error is the same as having no concrete star mismatch.

                                                      theorem SimpleGraph.FixedHostCardIsoData.exists_starMismatch_of_not_zeroStarError {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) (h : ¬e.ZeroStarError) :
                                                      ∃ (z : { w : V // w x }), e.StarMismatch z

                                                      A nonzero star error has a concrete witness.

                                                      theorem SimpleGraph.FixedHostCardIsoData.zeroStarError_of_no_starMismatch {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) (h : ∀ (z : { w : V // w x }), ¬e.StarMismatch z) :

                                                      If every concrete mismatch is absent, the star error is zero.

                                                      theorem SimpleGraph.FixedHostCardIsoData.map_first_iff {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) (z : { w : V // w x }) :
                                                      z S (e.cardIso.iso.toEquiv z) S

                                                      The chosen card map preserves the first color away from the deleted vertices.

                                                      theorem SimpleGraph.FixedHostCardIsoData.map_second_iff {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) (z : { w : V // w x }) :
                                                      z U (e.cardIso.iso.toEquiv z) U'

                                                      The chosen card map carries the left second color to the right second color away from the deleted vertices.

                                                      noncomputable def SimpleGraph.FixedHostCardIsoData.starErrorCount {V : Type u_1} [Finite V] {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) :

                                                      The number of deleted-star adjacencies on which a chosen card isomorphism fails to extend.

                                                      Equations
                                                      Instances For

                                                        The star-error count is zero exactly when the deleted star is transported correctly.

                                                        theorem SimpleGraph.FixedHostCardIsoData.starErrorCount_pos_iff {V : Type u_1} [Finite V] {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) :

                                                        Positive star-error count is the same as nonzero deleted-star error.

                                                        theorem SimpleGraph.FixedHostCardIsoData.starErrorCount_even {V : Type u_1} [Finite V] {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) :

                                                        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.

                                                        theorem SimpleGraph.FixedHostCardIsoData.deletedFirstColor_card_lt_of_mem {V : Type u_1} [Fintype V] [DecidableEq V] {S : Set V} [DecidablePred fun (w : V) => w S] {x : V} (hx : x S) :
                                                        Fintype.card { w : V // w x w S } < Fintype.card { w : V // w S }

                                                        If the deleted vertex is first-colored, then the first-colored part of the deleted card is strictly smaller than the full first color.

                                                        theorem SimpleGraph.FixedHostCardIsoData.deletedFirstColor_card_eq_of_not_mem {V : Type u_1} [Fintype V] [DecidableEq V] {S : Set V} [DecidablePred fun (w : V) => w S] {x : V} (hx : xS) :
                                                        Fintype.card { w : V // w x w S } = Fintype.card { w : V // w S }

                                                        If the deleted vertex is not first-colored, then deleting it does not change the size of the first-colored part of the card.

                                                        theorem SimpleGraph.FixedHostCardIsoData.card_firstColor_eq {V : Type u_1} [Fintype V] [DecidableEq V] {K : SimpleGraph V} {S U U' : Set V} [DecidablePred fun (w : V) => w S] {x y : V} (e : K.FixedHostCardIsoData S U U' x y) :
                                                        Fintype.card { w : V // w x w S } = Fintype.card { w : V // w y w S }

                                                        A first-color-preserving card isomorphism identifies the cardinalities of the first-colored parts of the two deleted cards.

                                                        theorem SimpleGraph.FixedHostCardIsoData.firstColor_deleted_status_iff {V : Type u_1} [Finite V] {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) :
                                                        x S y S

                                                        In a finite host, the first-color status of the deleted vertex is visible from any first-color-preserving card isomorphism.

                                                        def SimpleGraph.FixedHostCardIsoData.extendedEquiv {V : Type u_1} [DecidableEq V] {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) :
                                                        V V

                                                        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
                                                        Instances For
                                                          @[simp]
                                                          theorem SimpleGraph.FixedHostCardIsoData.extendedEquiv_apply_deleted {V : Type u_1} [DecidableEq V] {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) :
                                                          theorem SimpleGraph.FixedHostCardIsoData.extendedEquiv_apply_ne {V : Type u_1} [DecidableEq V] {K : SimpleGraph V} {S U U' : Set V} {x y z : V} (e : K.FixedHostCardIsoData S U U' x y) (hz : z x) :
                                                          def SimpleGraph.FixedHostCardIsoData.extendIsoOfZeroStarError {V : Type u_1} [DecidableEq V] {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) (hstar : e.ZeroStarError) :
                                                          K ≃g K

                                                          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
                                                          Instances For
                                                            def SimpleGraph.FixedHostCardIsoData.extendTwoColorIsoOfZeroStarError {V : Type u_1} [DecidableEq V] {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) (hFirst : x S y S) (hSecond : x U y U') (hstar : e.ZeroStarError) :
                                                            K.TwoColorIso K S U S U'

                                                            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
                                                            Instances For
                                                              theorem SimpleGraph.FixedHostCardIsoData.nonempty_twoColorIso_of_zeroStarError {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} {x y : V} (e : K.FixedHostCardIsoData S U U' x y) (hFirst : x S y S) (hSecond : x U y U') (hstar : e.ZeroStarError) :
                                                              Nonempty (K.TwoColorIso K S U S U')

                                                              Nonempty wrapper for the general zero-star card-extension lemma.

                                                              def SimpleGraph.FixedHostCardIsoData.ofTwoColorIso {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} (e : K.TwoColorIso K S U S U') (x : V) :

                                                              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
                                                                theorem SimpleGraph.FixedHostCardIsoData.ofTwoColorIso_zeroStarError {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} (e : K.TwoColorIso K S U S U') (x : V) :

                                                                The card restriction of a full automorphism has zero deleted-star error.

                                                                theorem SimpleGraph.FixedHostCardIsoData.solved_singleton_of_zeroStarError_active {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b x y : V} (e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y) (hFirst : x S y S) (hxActive : x singletonLeft T a) (hyActive : y singletonRight T b) (hstar : e.ZeroStarError) :

                                                                Singleton-switch specialization of the general zero-star card-extension lemma for a low-slice step deleting active vertices on both sides.

                                                                structure SimpleGraph.FixedHostSubdeckIsoData {V : Type u_1} (K : SimpleGraph V) (S U U' R R' : Set V) :
                                                                Type u_1

                                                                A chosen matching of two restricted fixed-host subdecks, including the actual card isomorphism for each matched deleted vertex.

                                                                Instances For
                                                                  theorem SimpleGraph.FixedHostSubdeckIsoData.sameSubdeck {V : Type u_1} {K : SimpleGraph V} {S U U' R R' : Set V} (e : K.FixedHostSubdeckIsoData S U U' R R') :
                                                                  K.FixedHostSameSubdeck S U U' R R'

                                                                  A chosen restricted subdeck matching gives the corresponding existential same-subdeck proposition.

                                                                  noncomputable def SimpleGraph.FixedHostSubdeckIsoData.ofSameSubdeck {V : Type u_1} {K : SimpleGraph V} {S U U' R R' : Set V} (h : K.FixedHostSameSubdeck S U U' R R') :

                                                                  Choose concrete card isomorphisms from an existential restricted subdeck matching.

                                                                  Equations
                                                                  Instances For
                                                                    @[reducible, inline]
                                                                    abbrev SimpleGraph.LowSliceIsoData {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :
                                                                    Type u_1

                                                                    A chosen low-slice matching for the singleton switch.

                                                                    Equations
                                                                    Instances For
                                                                      def SimpleGraph.LowSliceZeroStarPair {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :

                                                                      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
                                                                        structure SimpleGraph.LowSliceZeroStarMatching {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :
                                                                        Type u_1

                                                                        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.

                                                                        Instances For
                                                                          theorem SimpleGraph.LowSliceZeroStarMatching.solved {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (m : K.LowSliceZeroStarMatching S T a b) :

                                                                          A perfect zero-star matching solves the singleton switch.

                                                                          noncomputable def SimpleGraph.LowSliceZeroStarMatching.of_solved {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (h : K.FixedHostSingletonSolved S T a b) :

                                                                          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.

                                                                            theorem SimpleGraph.LowSliceZeroStarMatching.to_pair {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (m : K.LowSliceZeroStarMatching S T a b) :

                                                                            A perfect zero-star matching contains, in particular, an active zero-star pair.

                                                                            theorem SimpleGraph.LowSliceZeroStarPair.solved {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (h : K.LowSliceZeroStarPair S T a b) :

                                                                            An active zero-star pair is enough to solve the singleton switch.

                                                                            theorem SimpleGraph.LowSliceZeroStarPair.of_solved {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (h : K.FixedHostSingletonSolved S T a b) :

                                                                            Conversely, any full solution restricts to an active zero-star pair. Thus LowSliceZeroStarPair is the orbit conclusion packaged as a deck-visible witness.

                                                                            theorem SimpleGraph.LowSliceZeroStarPair.iff_solved {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} :

                                                                            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.

                                                                            theorem SimpleGraph.LowSliceZeroStarPair.exists_starMismatch_of_no_pair {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (hno : ¬K.LowSliceZeroStarPair S T a b) (x : (singletonLeft T a)) (y : (singletonRight T b)) (e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y) (hFirst : x S y S) :
                                                                            ∃ (z : { w : V // w x }), e.StarMismatch z

                                                                            In a no-zero-star-pair obstruction, every active card match has a concrete deleted-star mismatch.

                                                                            theorem SimpleGraph.LowSliceZeroStarPair.no_pair_iff_all_matches_have_starMismatch {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} :
                                                                            ¬K.LowSliceZeroStarPair S T a b ∀ (x : (singletonLeft T a)) (y : (singletonRight T b)) (e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y), (x S y S) → ∃ (z : { w : V // w x }), e.StarMismatch z

                                                                            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.

                                                                            def SimpleGraph.LowSliceZeroStarPairConjecture {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :

                                                                            The current focused local conjecture: low-slice equality exposes an active zero-star pair.

                                                                            Equations
                                                                            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.

                                                                              noncomputable def SimpleGraph.LowSliceIsoData.ofSameDeck {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (h : K.LowSliceSameDeck S T a b) :
                                                                              K.LowSliceIsoData S T a b

                                                                              Choose a concrete low-slice matching from low-slice deck equality.

                                                                              Equations
                                                                              Instances For
                                                                                theorem SimpleGraph.LowSliceIsoData.first_status {V : Type u_1} [Finite V] {K : SimpleGraph V} {S T : Set V} {a b : V} (e : K.LowSliceIsoData S T a b) (x : (singletonLeft T a)) :
                                                                                x S (e.toEquiv x) S

                                                                                In finite hosts, every chosen low-slice card match has matching passive first-color status.

                                                                                theorem SimpleGraph.LowSliceIsoData.solved_of_zeroStarError_at {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (e : K.LowSliceIsoData S T a b) (x : (singletonLeft T a)) (hFirst : x S (e.toEquiv x) S) (hstar : (e.cardIso x).ZeroStarError) :

                                                                                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.

                                                                                def SimpleGraph.LowSliceIsoData.toZeroStarMatching {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (e : K.LowSliceIsoData S T a b) (hFirst : ∀ (x : (singletonLeft T a)), x S (e.toEquiv x) S) (hstar : ∀ (x : (singletonLeft T a)), (e.cardIso x).ZeroStarError) :

                                                                                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
                                                                                  @[reducible, inline]
                                                                                  abbrev SimpleGraph.ComplementarySliceIsoData {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :
                                                                                  Type u_1

                                                                                  A chosen complementary-slice matching for the singleton switch.

                                                                                  Equations
                                                                                  • One or more equations did not get rendered due to their size.
                                                                                  Instances For
                                                                                    def SimpleGraph.ComplementarySliceZeroStarPair {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :

                                                                                    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
                                                                                      structure SimpleGraph.ComplementarySliceZeroStarMatching {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :
                                                                                      Type u_1

                                                                                      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.

                                                                                      Instances For
                                                                                        theorem SimpleGraph.FixedHostCardIsoData.solved_singleton_of_zeroStarError_complementary {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b x y : V} (e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y) (hFirst : x S y S) (hxNotActive : xsingletonLeft T a) (hyNotActive : ysingletonRight T b) (hstar : e.ZeroStarError) :

                                                                                        Singleton-switch specialization of the general zero-star card-extension lemma for a complementary-slice step deleting non-singleton vertices on both sides.

                                                                                        theorem SimpleGraph.ComplementarySliceZeroStarPair.mem_not_active_of_b_not_active {V : Type u_1} {T : Set V} {a b : V} (hb : bsingletonLeft T a) {x : V} (hx : x complementaryDeleteLeft T a b) :
                                                                                        xsingletonLeft T a

                                                                                        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}.

                                                                                        theorem SimpleGraph.ComplementarySliceZeroStarPair.solved {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (hb : bsingletonLeft T a) (ha : asingletonRight T b) (h : K.ComplementarySliceZeroStarPair S T a 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.

                                                                                        theorem SimpleGraph.ComplementarySliceZeroStarMatching.solved {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (hb : bsingletonLeft T a) (ha : asingletonRight T b) (m : K.ComplementarySliceZeroStarMatching S T a b) :

                                                                                        A perfect complementary-slice zero-star matching solves the singleton switch (given the non-degeneracy assumptions on a and b).

                                                                                        theorem SimpleGraph.ComplementarySliceZeroStarPair.of_solved {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (hb : bsingletonLeft T a) (h : K.FixedHostSingletonSolved S T a b) :

                                                                                        Conversely, any full singleton-switch solution restricts to a complementary-slice zero-star pair, using b on the left side.

                                                                                        theorem SimpleGraph.ComplementarySliceZeroStarPair.iff_solved {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (hb : bsingletonLeft T a) (ha : asingletonRight T b) :

                                                                                        Complementary-slice zero-star pairs are equivalent to the desired fixed-host singleton orbit conclusion (given non-degeneracy on a, b).

                                                                                        @[reducible, inline]
                                                                                        abbrev SimpleGraph.deleteTwoVertex {V : Type u_1} (t o : V) :
                                                                                        Type u_1

                                                                                        The two-hole vertex type obtained by deleting t and o.

                                                                                        Equations
                                                                                        Instances For
                                                                                          def SimpleGraph.deleteTwo {V : Type u_1} (K : SimpleGraph V) (t o : V) :

                                                                                          The graph K - {t,o}.

                                                                                          Equations
                                                                                          Instances For
                                                                                            def SimpleGraph.deleteTwoColor {V : Type u_1} (A : Set V) (t o : V) :

                                                                                            Delete two vertices from a color.

                                                                                            Equations
                                                                                            Instances For
                                                                                              @[simp]
                                                                                              theorem SimpleGraph.mem_deleteTwoColor {V : Type u_1} (A : Set V) (t o : V) (x : deleteTwoVertex t o) :
                                                                                              x deleteTwoColor A t o x A
                                                                                              def SimpleGraph.FixedHostCardIsoData.restrictDeleteTwo {V : Type u_1} {K : SimpleGraph V} {S U U' : Set V} {x y z : V} (e : K.FixedHostCardIsoData S U U' x y) (hz : z x) :

                                                                                              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
                                                                                                structure SimpleGraph.LowSliceCardFirstError {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) (x : (singletonLeft T a)) (y : (singletonRight T b)) (e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y) :
                                                                                                Type u_1

                                                                                                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.

                                                                                                Instances For
                                                                                                  def SimpleGraph.LowSliceCardFirstError.imageZ {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} {x : (singletonLeft T a)} {y : (singletonRight T b)} {e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y} (E : K.LowSliceCardFirstError S T a b x y e) :
                                                                                                  V

                                                                                                  The image of the first-error vertex on the right card.

                                                                                                  Equations
                                                                                                  Instances For
                                                                                                    def SimpleGraph.LowSliceCardFirstError.Active {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} {x : (singletonLeft T a)} {y : (singletonRight T b)} {e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y} (E : K.LowSliceCardFirstError S T a b x y e) :

                                                                                                    The first-error witness is active when its source vertex is still in the left active color after deleting x.

                                                                                                    Equations
                                                                                                    Instances For
                                                                                                      def SimpleGraph.LowSliceCardFirstError.Inactive {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} {x : (singletonLeft T a)} {y : (singletonRight T b)} {e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y} (E : K.LowSliceCardFirstError S T a b x y e) :

                                                                                                      The first-error witness is inactive when its source vertex is outside the left active color after deleting x.

                                                                                                      Equations
                                                                                                      Instances For
                                                                                                        theorem SimpleGraph.LowSliceCardFirstError.imageZ_ne_deleted {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} {x : (singletonLeft T a)} {y : (singletonRight T b)} {e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y} (E : K.LowSliceCardFirstError S T a b x y e) :
                                                                                                        E.imageZ y

                                                                                                        The localized target vertex is still present in the right card.

                                                                                                        theorem SimpleGraph.LowSliceCardFirstError.sourceActive_iff_targetActive {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} {x : (singletonLeft T a)} {y : (singletonRight T b)} {e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y} (E : K.LowSliceCardFirstError S T a b x y e) :

                                                                                                        The first-error witness has the same active-color status on the two localized cards.

                                                                                                        theorem SimpleGraph.LowSliceCardFirstError.sourceInactive_iff_targetInactive {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} {x : (singletonLeft T a)} {y : (singletonRight T b)} {e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y} (E : K.LowSliceCardFirstError S T a b x y e) :
                                                                                                        E.zsingletonLeft T a E.imageZsingletonRight T b

                                                                                                        Equivalently, inactive first-error witnesses also stay inactive.

                                                                                                        theorem SimpleGraph.LowSliceCardFirstError.active_or_inactive {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} {x : (singletonLeft T a)} {y : (singletonRight T b)} {e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y} (E : K.LowSliceCardFirstError S T a b x y e) :

                                                                                                        Every localized first error is either active-active or inactive-inactive.

                                                                                                        theorem SimpleGraph.LowSliceCardFirstError.active_or_inactive_source {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} {x : (singletonLeft T a)} {y : (singletonRight T b)} {e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y} (E : K.LowSliceCardFirstError S T a b x y e) :

                                                                                                        Every localized first error is, in source terms, active or inactive.

                                                                                                        def SimpleGraph.LowSliceCardFirstError.sourceActiveVertex {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} {x : (singletonLeft T a)} {y : (singletonRight T b)} {e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y} (E : K.LowSliceCardFirstError S T a b x y e) (hE : E.Active) :
                                                                                                        (singletonLeft T a)

                                                                                                        Recenter an active first-error witness at its source first-error vertex.

                                                                                                        Equations
                                                                                                        Instances For
                                                                                                          def SimpleGraph.LowSliceCardFirstError.targetActiveVertex {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} {x : (singletonLeft T a)} {y : (singletonRight T b)} {e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y} (E : K.LowSliceCardFirstError S T a b x y e) (hE : E.Active) :

                                                                                                          Recenter an active first-error witness at its target first-error vertex.

                                                                                                          Equations
                                                                                                          Instances For
                                                                                                            theorem SimpleGraph.LowSliceCardFirstError.sourceFirst_iff_targetFirst {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} {x : (singletonLeft T a)} {y : (singletonRight T b)} {e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y} (E : K.LowSliceCardFirstError S T a b x y e) :
                                                                                                            E.z S E.imageZ S

                                                                                                            The first-error witness has the same passive first-color status on the two localized cards.

                                                                                                            def SimpleGraph.LowSliceLocalObstruction {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) :

                                                                                                            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
                                                                                                              theorem SimpleGraph.LowSliceZeroStarPair.exists_starMismatch_with_twoHole_of_no_pair {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (hno : ¬K.LowSliceZeroStarPair S T a b) (x : (singletonLeft T a)) (y : (singletonRight T b)) (e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y) (hFirst : x S y S) :
                                                                                                              ∃ (z : { w : V // w x }), e.StarMismatch z Nonempty ((K.deleteTwo x z).TwoColorIso (K.deleteTwo y (e.cardIso.iso.toEquiv z)) (deleteTwoColor S x z) (deleteTwoColor (singletonLeft T a) x z) (deleteTwoColor S y (e.cardIso.iso.toEquiv z)) (deleteTwoColor (singletonRight T b) y (e.cardIso.iso.toEquiv z)))

                                                                                                              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.

                                                                                                              theorem SimpleGraph.LowSliceZeroStarPair.cardFirstError_of_no_pair {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (hno : ¬K.LowSliceZeroStarPair S T a b) (x : (singletonLeft T a)) (y : (singletonRight T b)) (e : K.FixedHostCardIsoData S (singletonLeft T a) (singletonRight T b) x y) (hFirst : x S y S) :

                                                                                                              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.

                                                                                                              theorem SimpleGraph.LowSliceIsoData.firstError_of_no_pair {V : Type u_1} [Finite V] {K : SimpleGraph V} {S T : Set V} {a b : V} (e : K.LowSliceIsoData S T a b) (hno : ¬K.LowSliceZeroStarPair S T a b) (x : (singletonLeft T a)) :

                                                                                                              Under a no-zero-star-pair assumption, every edge of a chosen finite low-slice matching has a packaged first-error witness.

                                                                                                              noncomputable def SimpleGraph.LowSliceIsoData.totalStarErrorCount {V : Type u_1} [Finite V] {K : SimpleGraph V} {S T : Set V} {a b : V} (e : K.LowSliceIsoData S T a b) :

                                                                                                              The total deleted-star error of a chosen low-slice matching.

                                                                                                              Equations
                                                                                                              Instances For
                                                                                                                theorem SimpleGraph.LowSliceIsoData.totalStarErrorCount_even {V : Type u_1} [Finite V] {K : SimpleGraph V} {S T : Set V} {a b : V} (e : K.LowSliceIsoData S T a b) :

                                                                                                                The total deleted-star error of any chosen low-slice matching is even.

                                                                                                                theorem SimpleGraph.LowSliceIsoData.totalStarErrorCount_eq_zero_iff {V : Type u_1} [Finite V] {K : SimpleGraph V} {S T : Set V} {a b : V} (e : K.LowSliceIsoData S T a b) :

                                                                                                                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
                                                                                                                Instances For
                                                                                                                  def SimpleGraph.LowSliceIsoData.ofZeroStarMatching {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (m : K.LowSliceZeroStarMatching S T a b) :
                                                                                                                  K.LowSliceIsoData S T a b

                                                                                                                  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.

                                                                                                                    def SimpleGraph.LowSliceIsoData.NoZeroStarEdge {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b : V} (e : K.LowSliceIsoData S T a b) :

                                                                                                                    A chosen low-slice matching has no zero-star edge.

                                                                                                                    Equations
                                                                                                                    Instances For
                                                                                                                      theorem SimpleGraph.LowSliceIsoData.noZeroStarEdge_iff_forall_pos {V : Type u_1} [Finite V] {K : SimpleGraph V} {S T : Set V} {a b : V} (e : K.LowSliceIsoData S T a b) :
                                                                                                                      e.NoZeroStarEdge ∀ (x : (singletonLeft T a)), 0 < (e.cardIso x).starErrorCount

                                                                                                                      No zero-star edge is equivalent to every matched card carrying positive star error.

                                                                                                                      def SimpleGraph.LowSliceIsoData.IsMinimumStarError {V : Type u_1} [Finite V] {K : SimpleGraph V} {S T : Set V} {a b : V} (e : K.LowSliceIsoData S T a b) :

                                                                                                                      A chosen low-slice matching has minimum total star error among all chosen low-slice matchings.

                                                                                                                      Equations
                                                                                                                      Instances For
                                                                                                                        structure SimpleGraph.LowSliceMinimumErrorMatching {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) [Finite V] :
                                                                                                                        Type u_1

                                                                                                                        A minimum-error chosen low-slice matching. This is the formal counterpart of choosing a minimum-error active-card matching in the proof sketch.

                                                                                                                        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.

                                                                                                                          structure SimpleGraph.LowSliceMinimumErrorMatching.ActiveFirstError {V : Type u_1} [Finite V] {K : SimpleGraph V} {S T : Set V} {a b : V} (m : K.LowSliceMinimumErrorMatching S T a b) (x : (singletonLeft T a)) :
                                                                                                                          Type u_1

                                                                                                                          An active first-error witness above one edge of a minimum-error matching.

                                                                                                                          Instances For
                                                                                                                            structure SimpleGraph.LowSliceMinimumErrorMatching.InactiveFirstError {V : Type u_1} [Finite V] {K : SimpleGraph V} {S T : Set V} {a b : V} (m : K.LowSliceMinimumErrorMatching S T a b) (x : (singletonLeft T a)) :
                                                                                                                            Type u_1

                                                                                                                            An inactive first-error witness above one edge of a minimum-error matching.

                                                                                                                            Instances For

                                                                                                                              The active source vertex reached by following this first error.

                                                                                                                              Equations
                                                                                                                              Instances For

                                                                                                                                The active target vertex reached by following this first error.

                                                                                                                                Equations
                                                                                                                                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.

                                                                                                                                  Equations
                                                                                                                                  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.

                                                                                                                                    Equations
                                                                                                                                    Instances For

                                                                                                                                      A noncoherent active first error is a genuine alternating exchange step.

                                                                                                                                      Equations
                                                                                                                                      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
                                                                                                                                          Instances For

                                                                                                                                            The complementary-side source vertex reached by following an inactive first error.

                                                                                                                                            Equations
                                                                                                                                            Instances For

                                                                                                                                              The complementary-side target vertex reached by following an inactive first error.

                                                                                                                                              Equations
                                                                                                                                              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.

                                                                                                                                                  Equations
                                                                                                                                                  Instances For

                                                                                                                                                    The inactive source is the opposite endpoint b.

                                                                                                                                                    Equations
                                                                                                                                                    Instances For

                                                                                                                                                      The inactive target lies in the outside core O.

                                                                                                                                                      Equations
                                                                                                                                                      Instances For

                                                                                                                                                        The inactive target is the opposite endpoint a.

                                                                                                                                                        Equations
                                                                                                                                                        Instances For

                                                                                                                                                          An inactive first error exposes one of the opposite endpoints.

                                                                                                                                                          Equations
                                                                                                                                                          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.

                                                                                                                                                              def SimpleGraph.LowSliceMinimumErrorZeroConjecture {V : Type u_1} [Finite V] (K : SimpleGraph V) (S T : Set V) (a b : V) :

                                                                                                                                                              The strengthened minimum-error route: every low-slice equality has a minimum-error matching of total star error zero.

                                                                                                                                                              Equations
                                                                                                                                                              Instances For
                                                                                                                                                                structure SimpleGraph.LowSlicePositiveMinimumObstruction {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b : V) [Finite V] :
                                                                                                                                                                Type u_1

                                                                                                                                                                A fully packaged positive minimum-error obstruction to the current route.

                                                                                                                                                                Instances For
                                                                                                                                                                  def SimpleGraph.NoLowSlicePositiveMinimumObstruction {V : Type u_1} [Finite V] (K : SimpleGraph V) (S T : Set V) (a b : V) :

                                                                                                                                                                  The exact no-positive-obstruction form of the minimum-error route.

                                                                                                                                                                  Equations
                                                                                                                                                                  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
                                                                                                                                                                    Instances For

                                                                                                                                                                      The inactive branch is available above the matched edge x.

                                                                                                                                                                      Equations
                                                                                                                                                                      Instances For

                                                                                                                                                                        All matched edges admit an active first-error branch.

                                                                                                                                                                        Equations
                                                                                                                                                                        Instances For

                                                                                                                                                                          All matched edges admit an inactive first-error branch.

                                                                                                                                                                          Equations
                                                                                                                                                                          Instances For

                                                                                                                                                                            A positive obstruction has both active and inactive first-error branches somewhere in the chosen minimum matching.

                                                                                                                                                                            Equations
                                                                                                                                                                            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.

                                                                                                                                                                              Instances For

                                                                                                                                                                                A chosen active first-error witness over every matched edge of a positive minimum-error obstruction.

                                                                                                                                                                                Instances For

                                                                                                                                                                                  Choose an active observer system from the proposition that every edge has an active branch.

                                                                                                                                                                                  Equations
                                                                                                                                                                                  Instances For

                                                                                                                                                                                    The active transport step selected at x.

                                                                                                                                                                                    Equations
                                                                                                                                                                                    Instances For

                                                                                                                                                                                      The defect source selected at x.

                                                                                                                                                                                      Equations
                                                                                                                                                                                      Instances For

                                                                                                                                                                                        The observer successor selected at x.

                                                                                                                                                                                        Equations
                                                                                                                                                                                        Instances For

                                                                                                                                                                                          The self-map on active vertices obtained by following selected observer successors.

                                                                                                                                                                                          Equations
                                                                                                                                                                                          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
                                                                                                                                                                                            Instances For

                                                                                                                                                                                              The selected active witness at x is noncoherent.

                                                                                                                                                                                              Equations
                                                                                                                                                                                              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
                                                                                                                                                                                                Instances For

                                                                                                                                                                                                  A selected observer cycle for an active observer system.

                                                                                                                                                                                                  Equations
                                                                                                                                                                                                  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.

                                                                                                                                                                                                    Instances For

                                                                                                                                                                                                      Choose an inactive observer system from the proposition that every edge has an inactive branch.

                                                                                                                                                                                                      Equations
                                                                                                                                                                                                      Instances For

                                                                                                                                                                                                        The selected inactive source at x.

                                                                                                                                                                                                        Equations
                                                                                                                                                                                                        Instances For

                                                                                                                                                                                                          The selected inactive target at x.

                                                                                                                                                                                                          Equations
                                                                                                                                                                                                          Instances For

                                                                                                                                                                                                            The selected inactive witness at x exposes an endpoint.

                                                                                                                                                                                                            Equations
                                                                                                                                                                                                            Instances For

                                                                                                                                                                                                              The selected inactive witness at x remains in the outside core.

                                                                                                                                                                                                              Equations
                                                                                                                                                                                                              Instances For

                                                                                                                                                                                                                Every selected inactive witness exposes an endpoint.

                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                Instances For

                                                                                                                                                                                                                  Some selected inactive witness remains entirely in the outside core.

                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                  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 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
                                                                                                                                                                                                                      Instances For

                                                                                                                                                                                                                        Ruling out the three concrete strategy forks rules out every positive minimum-error obstruction.

                                                                                                                                                                                                                        The source of a packaged active exchange step.

                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                        Instances For

                                                                                                                                                                                                                          The target of a packaged active exchange step.

                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                          Instances For

                                                                                                                                                                                                                            The next base vertex obtained by pulling the target back through the chosen minimum matching.

                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                            Instances For

                                                                                                                                                                                                                              A coherent packaged active step is a side-cycle step.

                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                              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
                                                                                                                                                                                                                                  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
                                                                                                                                                                                                                                    Instances For

                                                                                                                                                                                                                                      The noncoherent part of the active exchange relation. These are the candidate descent or correction-cycle edges.

                                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                                      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.

                                                                                                                                                                                                                                        theorem SimpleGraph.LowSlicePositiveMinimumObstruction.activeObserverRel_ne {V : Type u_1} [Finite V] {K : SimpleGraph V} {S T : Set V} {a b : V} {o : K.LowSlicePositiveMinimumObstruction S T a b} {u v : (singletonLeft T a)} (h : o.ActiveObserverRel u v) :
                                                                                                                                                                                                                                        u v

                                                                                                                                                                                                                                        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.

                                                                                                                                                                                                                                        Instances For

                                                                                                                                                                                                                                          The selected witness at index n of the cycle is coherent.

                                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                                          Instances For

                                                                                                                                                                                                                                            The selected witness at index n of the cycle is noncoherent.

                                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                                            Instances For

                                                                                                                                                                                                                                              Every selected witness on the active observer cycle is coherent.

                                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                              Instances For

                                                                                                                                                                                                                                                Some selected witness on the active observer cycle is noncoherent.

                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                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
                                                                                                                                                                                                                                                  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
                                                                                                                                                                                                                                                    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
                                                                                                                                                                                                                                                      Instances For

                                                                                                                                                                                                                                                        The active observer-cycle fork with a noncoherent index is impossible.

                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                        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
                                                                                                                                                                                                                                                            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.

                                                                                                                                                                                                                                                              def SimpleGraph.twoHoleASecondColor {V : Type u_1} (T : Set V) (a t o : V) :

                                                                                                                                                                                                                                                              The a-side two-hole second color (T \ {t}) ∪ {a} on K - {t,o}.

                                                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                                              Instances For
                                                                                                                                                                                                                                                                @[simp]
                                                                                                                                                                                                                                                                theorem SimpleGraph.mem_twoHoleASecondColor {V : Type u_1} (T : Set V) (a t o : V) (x : deleteTwoVertex t o) :
                                                                                                                                                                                                                                                                x twoHoleASecondColor T a t o x T x = a
                                                                                                                                                                                                                                                                def SimpleGraph.twoHoleBSecondColor {V : Type u_1} (T : Set V) (b t o : V) :

                                                                                                                                                                                                                                                                The b-side two-hole second color (T \ {t}) ∪ {b} on K - {t,o}.

                                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                                Instances For
                                                                                                                                                                                                                                                                  @[simp]
                                                                                                                                                                                                                                                                  theorem SimpleGraph.mem_twoHoleBSecondColor {V : Type u_1} (T : Set V) (b t o : V) (x : deleteTwoVertex t o) :
                                                                                                                                                                                                                                                                  x twoHoleBSecondColor T b t o x T x = b
                                                                                                                                                                                                                                                                  def SimpleGraph.TwoHoleMatch {V : Type u_1} (K : SimpleGraph V) (S T : Set V) (a b t o t' o' : V) :
                                                                                                                                                                                                                                                                  Type u_1

                                                                                                                                                                                                                                                                  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
                                                                                                                                                                                                                                                                    theorem SimpleGraph.TwoHoleMatch.image_a_mem_right {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b t o t' o' : V} (e : K.TwoHoleMatch S T a b t o t' o') (hat : a t) (hao : a o) :
                                                                                                                                                                                                                                                                    (e.iso.toEquiv a, ) T (e.iso.toEquiv a, ) = b

                                                                                                                                                                                                                                                                    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.

                                                                                                                                                                                                                                                                    theorem SimpleGraph.TwoHoleMatch.image_second_mem_right {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b t o t' o' : V} (e : K.TwoHoleMatch S T a b t o t' o') (x : deleteTwoVertex t o) (hx : x T x = a) :
                                                                                                                                                                                                                                                                    (e.iso.toEquiv x) T (e.iso.toEquiv x) = b

                                                                                                                                                                                                                                                                    Under a two-hole match, the image of any second-colored vertex is second-colored on the b-side.

                                                                                                                                                                                                                                                                    theorem SimpleGraph.TwoHoleMatch.image_not_second_mem_right {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b t o t' o' : V} (e : K.TwoHoleMatch S T a b t o t' o') (x : deleteTwoVertex t o) (hx : xT) (hxa : x a) :
                                                                                                                                                                                                                                                                    (e.iso.toEquiv x)T (e.iso.toEquiv x) b

                                                                                                                                                                                                                                                                    Under a two-hole match, the image of a non-second-colored vertex is non-second-colored on the b-side.

                                                                                                                                                                                                                                                                    theorem SimpleGraph.TwoHoleMatch.preimage_b_mem_left {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b t o t' o' : V} (e : K.TwoHoleMatch S T a b t o t' o') (hbt' : b t') (hbo' : b o') :
                                                                                                                                                                                                                                                                    (e.iso.symm.toEquiv b, ) T (e.iso.symm.toEquiv b, ) = a

                                                                                                                                                                                                                                                                    Under a two-hole match, the preimage of the moved b-vertex is second-colored on the a-side.

                                                                                                                                                                                                                                                                    theorem SimpleGraph.TwoHoleMatch.image_T_of_maps_a_to_b {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b t o t' o' : V} (e : K.TwoHoleMatch S T a b t o t' o') (hat : a t) (hao : a o) (haT : aT) (hab : (e.iso.toEquiv a, ) = b) (x : deleteTwoVertex t o) (hxT : x T) :
                                                                                                                                                                                                                                                                    (e.iso.toEquiv x) T

                                                                                                                                                                                                                                                                    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".

                                                                                                                                                                                                                                                                    theorem SimpleGraph.TwoHoleMatch.image_outside_of_maps_b_to_a {V : Type u_1} {K : SimpleGraph V} {S T : Set V} {a b t o t' o' : V} (e : K.TwoHoleMatch S T a b t o t' o') (hbt : b t) (hbo : b o) (hba : (e.iso.toEquiv b, ) = a) (x : deleteTwoVertex t o) (hxO : x singletonOutside T a b) :

                                                                                                                                                                                                                                                                    If a two-hole match sends the moved uncolored b-vertex to the moved uncolored a-vertex, then outside vertices stay outside.