Documentation

CslibFrontier.Computability.Complexity.Problems.Graph.RotationSystem.Recognition.Input

Full fixed rotations on dense listed graphs #

This auxiliary input uses the existing listed Graph, indexed darts and rotations. A vertex is free (none) or has its entire clockwise cyclic dart order prescribed (some word). Binary dart indices retain both ends of loops and every parallel occurrence. some [] is the complete order of an isolated point. Raw input is validated before algebraic queries or recovery.

Feasible asks for the existing componentwise numerical genus-zero rotation. No equivalence with a geometric drawing, or with a parity system, is asserted here.

Main definitions #

Main results #

Raw dense listed graph and one optional complete binary dart order per vertex.

  • graph : Graph

    The existing graph, retaining indexed edge occurrences.

  • orders : List (Option (List ℕ))

    none is free; some word prescribes the complete clockwise cyclic order.

Instances For
    theorem Cslib.Complexity.Graph.RotationRecognition.encFixedRotationInput_graph_budget {γ✝ : Type} {encIn✝ : γ✝ ↪ List Bool} {S✝ : γ✝ → ℕ} {g✝ : γ✝ → FixedRotationInput} :
    Turing.MultiTapeTM.ComputableInSpace g✝ encIn✝ encFixedRotationInput S✝ → Turing.MultiTapeTM.ComputableInSpace (fun (a : γ✝) => (g✝ a).graph) encIn✝ encGraph S✝

    Framed existing binary graph, then a framed list of optional framed binary dart words.

    Instances For
      theorem Cslib.Complexity.Graph.RotationRecognition.encFixedRotationInput_mk_inO {γ : Type} {encIn : γ ↪ List Bool} {x0 : γ → Graph} {T0 S0 : γ → ℕ} {x1 : γ → List (Option (List ℕ))} {T1 S1 : γ → ℕ} (h0 : Turing.MultiTapeTM.ComputableInO x0 encIn encGraph T0 S0) (h1 : Turing.MultiTapeTM.ComputableInO x1 encIn (Turing.MultiTapeTM.encList (Turing.MultiTapeTM.encOption (Turing.MultiTapeTM.encList Turing.MultiTapeTM.encNat))) T1 S1) :
      Turing.MultiTapeTM.ComputableInO (fun (x : γ) => { graph := x0 x, orders := x1 x }) encIn encFixedRotationInput (fun (x : γ) => T0 x + T1 x) fun (x : γ) => S0 x + S1 x

      All binary dart indices at a vertex, in edge/end order. The scan uses the actual edge count.

      Instances For

        Raw validity: dense declared vertices, closed endpoints, exact order-table width, and every prescribed word enumerating its entire endpoint fiber exactly once.

        Instances For

          Both endpoints of every listed edge of a valid input lie below its declared vertex count.

          Total finite validity test; malformed binary names and indices are only compared/read.

          Instances For

            Validation implements the complete fixed/free contract on every raw input.

            Next position in a complete cyclic word, with a total zero fallback.

            Instances For

              A rotation follows every prescribed complete cyclic word literally, without reflection. Empty prescribed words impose no successor equation.

              Instances For

                The existing numerical feasibility predicate, with all prescribed full orders. This is an internal target for a future proved algebraic criterion, not a new definition of planarity.

                Instances For

                  Only successive entries inside the directed block are constrained. In particular, a proper block's last entry is not required to return to its first entry.

                  Instances For

                    A singleton block has no internal successor equation.

                    Fiber membership retains both the binary width and the exact endpoint.

                    A dart's own binary index belongs to exactly its endpoint fiber.

                    Raw fibers contain no repeated dart indices, even on loops or parallel edges.

                    Every raw fiber is bounded by the actual dart-list length.