The non-separated repair move: the flipped-segment ledger #
The non-separated case of the per-move path ledger: a repair square
whose two re-paired edges are traversed coherently
(o.isOut c = o.isOut a). The repaired walk reverses the segment
between the two match-pairs, and the transported orientation must
flip isOut exactly on the reversed segment.
Main results #
EdgeSubset.RepairSegment— the abstract reversal-segment package: a pairing-closed set of internal flags containingbandc, avoidingaandd, and closed under the matching except at the two cut pointsb,c.EdgeSubset.RelTransitionSystem.Orientation.segFlip— the flipped-segment orientation of the repaired system (valid exactly because the flip meets the non-separated condition at the cuts).EdgeSubset.throughSummand_segFlip— the flipped-segment ledger: the constrained summand over the repaired system with the flipped-segment orientation equals the old summand at every fixed circuit exponent (total+1: the vertex transposition's−1cancels against the cut-block∂-sign, and the reversed segment telescopes to∏_{f ∈ S} sign(φ f) = 1).EdgeSubset.WalkReach/EdgeSubset.exists_repairSegment— the same-component configuration (the walk fromcreachesa) and the construction of the reversal segment from it; covers both the same-circuit and the same-path (chain) reversal sub-cases.EdgeSubset.squareLocalized_of_walkReach— a same-component square is localized, so the path sign is untouched (committedpathMatch_repair_of_localized).EdgeSubset.RepairSquare.swapandrepair_swap_matchEq— the square with the roles of the two re-paired edges exchanged produces the same repaired system.
The two counting inputs #
The ledger needs the circuit-count parity of the move, which is a separate, orbit-counting question. It is named here and proved in the parity files:
NonSeparatedSegmentParity— a same-component square preserves the circuit-count parity (the segment reversal maps the two traversal orbits of the affected component to two orbits, Δ = 0);NonSeparatedMergeParity— a square whosec-edge lies on a circuit not carryingaflips the count parity (the splice merges the circuit intoa's component, Δ = −1).
The abstract reversal-segment package #
The reversal-segment data for a repair square: a pairing-closed
set of internal flags containing the two cut flags b, c,
avoiding a, d, and closed under the matching away from the
cuts. The repaired matching sends the cuts outside (b ↦ d,
c ↦ a), so the set is exactly the flag support of the walk
segment the repair reverses.
- haS : a ∉ S
- hdS : d ∉ S
- int_of_mem (f : W.Flag) : f ∈ S → f ∈ F.internalFlags
Instances For
The complement is closed under the pairing.
The complement is closed under the matching away from a, d.
Boundary flags are never on the segment.
The flipped-segment orientation of the repaired system #
The flipped-segment orientation: flip isOut exactly on
the reversal segment. The result is an orientation of the
repaired system: at the cuts the new matches a ↔ c, b ↔ d
flip orientation exactly because the move is non-separated
(isOut c = isOut a).
Equations
Instances For
Off the segment it is unchanged.
The ∂-flip of the colouring on the segment #
The ∂-flip of a core odd colouring on the segment edges.
Equations
- RS.EdgeSubset.segFlipColouring hSpair φ = ⟨fun (g : ↥F.coreFlags) => if ↑g ∈ S then RS.oddPartner ℓ (↑φ g) else ↑φ g, ⋯⟩
Instances For
The segment-flipped colouring, unfolded.
It is an involution, so it is a bijection of the colouring sum.
The ∂-flip preserves the odd boundary constraint when the
segment carries no boundary flags.
The flipped-segment ledger #
The pairing sign as a total function #
Vertex-local in-sets #
The in-flags at a vertex whose colours the flip on S leaves
alone.
Equations
- RS.EdgeSubset.keepS S o₀ vv = {g ∈ RS.relInSetAt o₀ vv | g ∉ S}
Instances For
The in-flags at a vertex whose colours the flip on S
reverses.
Equations
- RS.EdgeSubset.flipS S o₀ vv = {g ∈ RS.relInSetAt o₀ vv | g ∈ S}
Instances For
Membership in the kept part of a vertex's in-set.
Membership in the flipped part of a vertex's in-set.
The flip on S splits a vertex's in-set into the kept and the
flipped part.
A product over a vertex's in-set splits along that partition.
The pair blocks #
The parametric vertex data of the move #
The flipped-segment ledger: the constrained summand of the repaired system over the flipped-segment orientation and equals the old summand at every fixed circuit exponent.
The same-component configuration and its segment #
The walk from c reaches a with internal pairings: the
same-component configuration of the non-separated move (both the
same-circuit and the same-chain reversal sub-cases).
Equations
- RS.EdgeSubset.WalkReach κ c a = ∃ (m : ℕ), 1 ≤ m ∧ (∀ j < m, W.pairing (RS.EdgeSubset.iterWalk κ c j) ∈ F.internalFlags) ∧ RS.EdgeSubset.iterWalk κ c m = a
Instances For
Iterates along an internally-continuing walk are internal.
The orientation is constant along the walk positions of an internally-continuing walk.
The reversal segment of a same-component non-separated
square: the flags of the walk from c up to (excluding) a, on
both sides of each visited edge.
Localization of the same-component square #
The chain membership is closed under the pairing.
The chain membership is closed along internally-continuing walks.
A same-component square is localized: c's component either
is a circuit carrying all four flags, or is the chain of a
boundary flag carrying them.
On a component with an orientation, membership of a on c's
periodic orbit forces the forward reach under the non-separated
condition: the pairing-side (reverse) membership contradicts the
orientation.
Orbit membership on a periodic component is periodic.
The swapped square #
The square with the two re-paired edges exchanged.
The swapped square repairs to the same system.
The inputs and the dispatch #
Input (segment count parity): a same-component
square preserves the circuit-count parity — the segment reversal
maps the two traversal orbits of the affected component onto two
orbits of the same sizes (Δ = 0 on circuits; chains carry no
periodic flags). Proved in OrbitParities.lean.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Input (merge count parity): a square whose
c-edge lies on a circuit not carrying a flips the count parity
— the splice merges the circuit into a's component (Δ = −1).
Proved in OrbitParities.lean.
Equations
- One or more equations did not get rendered due to their size.