Documentation

Complexitylib.Models.TuringMachine.Combinators.RetargetCompute.Defs

Retargeted-input computation seams #

An ordinary machine begins with every head on ; its first transition moves all heads right and may also change the control state. A phase-composed machine usually enters its next phase with tapes already parked at cell 1. This file defines an executable wrapper that resumes a machine after that compulsory sentinel transition while reading its input from the last work tape.

Main definitions #

The source control state produced by its first transition from the all- initial head positions.

Equations
Instances For
    def Complexity.TM.retargetInputStarted {k : } (M : TM k) :
    TM (k + 1)

    Read the source input from work tape k, starting from the already-parked post-sentinel configuration. If the source starts halted, the wrapper also starts halted; otherwise its start state is retargetInputStartState M.

    The transition function and halt state are exactly those of retargetInput M.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      def Complexity.TM.retargetInputStartedCfg {k : } (M : TM k) (y : List Bool) (realInput : Tape) :

      Canonical phase-entry configuration for retargetInputStarted M: virtual input y is on the last work tape at head 1; source work tapes and the real output are parked and blank. The ignored real input tape is arbitrary.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]
        theorem Complexity.TM.retargetInputStartedCfg_input {k : } (M : TM k) (y : List Bool) (realInput : Tape) :
        (M.retargetInputStartedCfg y realInput).input = realInput
        theorem Complexity.TM.retargetInputStartedCfg_work_lt {k : } (M : TM k) (y : List Bool) (realInput : Tape) (i : Fin (k + 1)) (h : i < k) :