Documentation

CslibFrontier.Computability.Complexity.Problems.Graph.RotationSystem

Rotation systems of listed multigraphs #

A dart is an edge-list position and one of its two ends. Loops retain two different darts; parallel edges retain their different list positions. A rotation permutes darts in one cycle at each incident vertex. This extra structure retains argument order when the graph comes from CSP incidences. It does not impose a degree bound.

The face successor reverses an edge and then takes the inverse vertex rotation. Faces are all its orbits, including singleton orbits. Isolated declared vertices have no darts and are not represented by this face quotient. No genus-zero condition, geometric realization or planarity recognition theorem is asserted here.

Main definitions #

@[reducible, inline]

A listed edge occurrence together with a choice of endpoint.

Instances For

    The endpoint of an indexed edge end; false selects the first endpoint.

    Instances For

      Reverse an edge while retaining its edge-list occurrence.

      Instances For
        @[simp]

        Reversing twice returns the same indexed end.

        Even a loop has two distinct indexed ends.

        Edge reversal as a permutation of all indexed ends.

        Instances For

          There are two darts per listed edge, counting loops and parallel occurrences.

          A cyclic order of the darts at each incident vertex. No cyclic start point is chosen.

          Instances For

            Rotating around a vertex keeps that endpoint.

            Reverse an edge, then turn backwards around its new endpoint.

            Instances For
              @[reducible, inline]

              All face orbits, including the singleton orbits omitted by nontrivial cycle factors.

              Instances For

                A dart and its face successor lie in the same face orbit.

                Reverse every vertex rotation, corresponding to reversal of the global orientation.

                Instances For