Documentation

LeanPool.RegtsSevenster.RS.Novel.Skein.RelTransition

Boundary-relative transition systems #

For an open fragment W : Fragment α and an Eulerian edge subset that may contain boundary-attached flags, the standard TransitionSystem is too strong: it requires every participating flag to be internally attached (attach_internal). This file defines a weaker notion.

Design #

A RelTransitionSystem W F for an edge subset F : EdgeSubset W matches the internal participating flags pairwise at common vertices, leaving boundary-attached flags unmatched (they are path endpoints).

The walk permutation κ ∘ σ is well-defined only on internal flags. Internal circuits are the orbits of this internal walk permutation.

Paths connect boundary flags in pairs: starting from a boundary flag b, follow the edge pairing σ to the partner σ b (internal), then apply matching κ, then σ again, alternating until reaching another boundary flag. The resulting pairing is pathMatch.

Representation choice for the gluing theorem #

The path matching is an involution on boundary s-flags. For the eventual gluing decomposition:

circuitCount(glued) = internalCircuitCount(F) + internalCircuitCount(G) + cycleCount(pathMatch_G ∘ pathMatch_F)

the composition of two path matchings produces closed cycles that become "cross-boundary" circuits. Representing pathMatch as an involution on boundary flags makes this composition natural.

For a closed fragment (no boundary flags), RelTransitionSystem degenerates to TransitionSystem and internalCircuitCount equals circuitCount.

Internal vs boundary flag classification #

noncomputable def RS.EdgeSubset.internalFlags {α : Type} {W : Fragment α} (F : EdgeSubset W) :

The internal flags of an edge subset: participating flags attached to a vertex.

Equations
Instances For
    theorem RS.EdgeSubset.mem_internalFlags_iff {α : Type} {W : Fragment α} {f : W.Flag} {F : EdgeSubset W} :
    f ∈ F.internalFlags ↔ f ∈ F.flags ∧ ∃ (v : W.Vertex), W.attach f = Sum.inl v

    A flag is internal exactly when it is in the subset and attached to a vertex.

    noncomputable def RS.EdgeSubset.boundaryFlags {α : Type} {W : Fragment α} (F : EdgeSubset W) :

    The boundary flags of an edge subset: participating flags attached to a boundary label.

    Equations
    Instances For

      Every participating flag is either internal or boundary.

      Internal and boundary flags are disjoint.

      theorem RS.EdgeSubset.mem_flags_of_internalFlags {α : Type} {W : Fragment α} (F : EdgeSubset W) {f : W.Flag} (hf : f ∈ F.internalFlags) :

      An internal flag is in the edge subset.

      theorem RS.EdgeSubset.mem_flags_of_boundaryFlags {α : Type} {W : Fragment α} (F : EdgeSubset W) {f : W.Flag} (hf : f ∈ F.boundaryFlags) :

      A boundary flag is in the edge subset.

      theorem RS.EdgeSubset.attach_internal_of_mem {α : Type} {W : Fragment α} (F : EdgeSubset W) {f : W.Flag} (hf : f ∈ F.internalFlags) :
      ∃ (v : W.Vertex), W.attach f = Sum.inl v

      An internal flag is attached to some vertex.

      theorem RS.EdgeSubset.attach_boundary_of_mem {α : Type} {W : Fragment α} (F : EdgeSubset W) {f : W.Flag} (hf : f ∈ F.boundaryFlags) :
      ∃ (i : α), W.attach f = Sum.inr i

      A boundary flag is attached to some label.

      A participating boundary flag lies in the boundary flags: it attaches to a label, so it cannot be internal.

      All participating flags are internal (no boundary flags).

      Equations
      Instances For
        theorem RS.EdgeSubset.mem_internalFlags_of_allInternal {α : Type} {W : Fragment α} {F : EdgeSubset W} (hall : F.allInternal) {f : W.Flag} (hf : f ∈ F.flags) :

        When all flags are internal, a participating flag is internal.

        Boundary-relative transition system #

        A boundary-relative transition system on an edge subset: a fixed-point-free involution of its internal flags matching flags at a common vertex. Boundary flags are path endpoints and are not matched. This mirrors TransitionSystem but restricts the domain from all participating flags to internal flags only.

        Instances For

          Compatibility: conversions #

          theorem RS.EdgeSubset.mem_internalFlags_of {α : Type} {W : Fragment α} {F : EdgeSubset W} {f : W.Flag} (hf : f ∈ F.flags) (hv : ∃ (v : W.Vertex), W.attach f = Sum.inl v) :

          A participating flag that is internally attached is an internal flag.

          Every TransitionSystem is a RelTransitionSystem.

          Equations
          Instances For

            Walk and circuit count on internal flags #

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

            The walk map on flags via a relative transition: follow pairing then matching.

            Equations
            Instances For

              If a flag's pairing is internal, its walk successor is internal.

              theorem RS.EdgeSubset.RelTransitionSystem.internalWalk_injOn {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) {f g : W.Flag} (hpf : W.pairing f ∈ F.internalFlags) (hpg : W.pairing g ∈ F.internalFlags) (h : κ.internalWalk f = κ.internalWalk g) :
              f = g

              The walk map is injective on flags whose pairings are internal.

              When all flags are internal, the pairing of an internal flag is internal.

              When all flags are internal, the walk preserves internal flags.

              When all flags are internal, the walk is injective.

              The walk permutation on internal flags, when all flags are internal.

              Equations
              Instances For

                The internal circuit count when all flags are internal.

                Equations
                Instances For

                  Compatibility: circuit-count agreement for closed subsets #

                  When a TransitionSystem exists (all flags internal), the internal flags equal the full flag set.

                  A standard TransitionSystem implies all flags are internal.

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

                  The equivalence between full-flag and internal-flag subtypes when all flags are internal.

                  Equations
                  Instances For

                    The walk permutations agree under the canonical equivalence.

                    Compatibility: for a closed-fragment transition system, internalCircuitCount equals circuitCount.

                    Orientation for relative transition systems #

                    An orientation compatible with a boundary-relative transition system: an in/out designation of the internal flags, flipped by the matching and by the edge pairing (when both ends are internal).

                    Instances For

                      Path chain tracing #

                      noncomputable def RS.EdgeSubset.traceChain {α : Type} {W : Fragment α} {F : EdgeSubset W} (κ : F.RelTransitionSystem) :
                      ℕ → W.Flag → Option W.Flag

                      Follow the chain from a flag: apply pairing, check if boundary; if internal, apply matching and recurse. Returns none if the fuel runs out.

                      Equations
                      Instances For