Documentation

DescriptiveComplexity.Problems.Machine.HaltHard.Table

The transition table of the simulating machine #

The control of the machine M(c) of PCP-HARDNESS.md §2.8, as one deterministic step function DescriptiveComplexity.HaltHard.simStep : SimQ c → SimSym c → Option (SimSym c × SimQ c × Bool) (the Boolean is “move right”). Determinism is what makes the backward direction of the simulation a case analysis rather than an invariant hunt, and the drawn machine's transition relations are read off the graph of this function.

The tape layout is the one of Tags.lean: frames left of the fixed separator mid, bounded by the movable endL; the value mirrored right of mid, its head block ending at the movable endR, so that every operation on the head of the value works at endR and grows into the blank half-tape – no marker ever crosses a letter. The states fall into walk families between the unique letters endL/mid/endR/headers:

The states of the simulating machine; see the module docstring for the role of each family.

Instances For
    Dependency graph
    Dependency graph

    The states are finitely many: CPos c is finite and every family is indexed by at most one position.

    Dependency graph

    The dispatch of stepNormal (codeAt p), with the head reading mid: the first action of each shape's handler.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      Dependency graph

      The deterministic step table (none = no move; the Boolean is “move right”). The docstring of the file names each family; within a family the letter-specific actions come first and the walk catch-alls after.

      Instances For
        Dependency graph