Documentation

LeanPool.RegtsSevenster.RS.Novel.Skein.OpenCircuits

Open circuit count for boundary-relative transition systems #

For an edge subset F that may have boundary flags, the internal circuit count (internalCircuitCount) is defined only when F.allInternal holds. This file generalises the count to open edge subsets by restricting to the periodic flags — internal flags whose forward walk eventually returns to them.

Main definitions #

Main results #

1. PeriodicFlag #

A flag on a closed circuit: it is internal, every intermediate pairing stays internal, and the walk returns to it.

Equations
Instances For

    A periodic flag is internal.

    Periodicity helpers #

    theorem RS.EdgeSubset.iterWalk_add_period {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) (f : W.Flag) (n k : ℕ) (hperiod : iterWalk κ f n = f) :
    iterWalk κ f (n + k) = iterWalk κ f k

    Shift a period: iterWalk κ f (n + k) = iterWalk κ f k when iterWalk κ f n = f.

    theorem RS.EdgeSubset.all_pairings_internal_of_periodic {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) {f : W.Flag} (hper : κ.PeriodicFlag f) (j : ℕ) :

    All pairings along a periodic walk are internal.

    theorem RS.EdgeSubset.iterWalk_mem_internal_of_periodic {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) {f : W.Flag} (hper : κ.PeriodicFlag f) (j : ℕ) (hj : 1 ≤ j) :

    All iterates along a periodic walk are internal.

    The walk-successor of a periodic flag is periodic (same period).

    2. periodicFlags #

    The finset of periodic flags.

    Equations
    Instances For

      Membership in periodicFlags iff PeriodicFlag.

      A periodic flag is internal.

      Walk closure on periodic flags #

      The walk maps periodic flags to periodic flags.

      The walk is injective on periodic flags.

      3. walkPermPeriodic #

      The walk permutation restricted to periodic flags.

      Equations
      Instances For

        4. openCircuitCount #

        The open circuit count: half the orbit count of the walk on periodic flags.

        Equations
        Instances For

          Backward period extraction #

          theorem RS.EdgeSubset.iterWalk_period_of_repeat {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) (f : W.Flag) (i d : ℕ) (hcont : ∀ j < i + d, W.pairing (iterWalk κ f j) ∈ F.internalFlags) (heq : iterWalk κ f i = iterWalk κ f (i + d)) :
          iterWalk κ f d = f

          If the walk repeats at positions i and i + d (with all intermediate pairings internal), then it has period d from position 0.

          Pigeonhole period extraction #

          5. Compatibility with internalCircuitCount #

          theorem RS.EdgeSubset.periodic_of_allInternal {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) (hall : F.allInternal) {f : W.Flag} (hf : f ∈ F.internalFlags) :

          Under allInternal, every internal flag is periodic (via pigeonhole on the walk iterates).

          noncomputable def RS.EdgeSubset.periodicEquivInternal {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) (hall : F.allInternal) :

          The equivalence between periodic-flag and internal-flag subtypes under allInternal.

          Equations
          Instances For

            The two walk permutations agree under the canonical equivalence.

            Compatibility: for a closed edge subset, openCircuitCount equals internalCircuitCount.

            6. Boundary paths are not periodic #

            theorem RS.EdgeSubset.traceChain_none_of_all_internal_pairings {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) {f : W.Flag} (h : ∀ (j : ℕ), W.pairing (iterWalk κ f j) ∈ F.internalFlags) (fuel : ℕ) :
            traceChain κ fuel f = none

            The chain from a flag with all-internal pairings always returns none (never reaches the boundary).

            theorem RS.EdgeSubset.not_periodic_of_boundary_chain {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) (f : W.Flag) (hterm : ∃ (fuel : ℕ) (b : W.Flag), traceChain κ fuel f = some b) :

            A flag whose chain reaches the boundary is not periodic.

            Dichotomy: periodic or boundary-terminating #

            theorem RS.EdgeSubset.internal_periodic_or_terminates {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) (f : W.Flag) (hf : f ∈ F.internalFlags) :
            κ.PeriodicFlag f ∨ ∃ (fuel : ℕ) (b : W.Flag), traceChain κ fuel f = some b

            Every internal flag is either periodic or its chain reaches the boundary.

            The edge-pairing reversal on periodic flags #

            Reversing every periodic flag along its own edge conjugates the walk permutation into its inverse, which is what makes the open circuits come in pairs.

            The periodic flags are closed under the edge pairing: a closed circuit's edges lie wholly on it.

            noncomputable def RS.EdgeSubset.revPerm {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) :

            The edge-pairing reversal on periodic flags.

            Equations
            Instances For

              The reversal conjugates the walk to its inverse: traversing a circuit backwards.

              theorem RS.EdgeSubset.revPerm_mul_self {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) :
              revPerm κ * revPerm κ = 1

              The reversal is an involution.

              Equivalently, it is its own inverse.