TM0PostAdapter #
Part of the dependency closure of the small undecidable group constructions.
def
Undecidability.TM0PostAdapter.machine
{Q : Type u_1}
[Inhabited Q]
(M : Turing.TM0.Machine Bool Q)
:
Convert Mathlib's atomic move-or-write TM0 into the combined
write-and-move binary machine used by Post's rewriting construction.
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Undecidability.TM0PostAdapter.Represents
{Q : Type u_1}
(c : Turing.TM0.Cfg Bool Q)
(d : PostMachine.Config (Phase Q))
:
The finite-list tape represents Mathlib's quotient tape; trailing blank cells are therefore harmless.
Equations
Instances For
theorem
Undecidability.TM0PostAdapter.respects
{Q : Type u_1}
[Inhabited Q]
(M : Turing.TM0.Machine Bool Q)
:
One atomic TM0 step is simulated by one combined step for a move and by
two combined steps for a write.
theorem
Undecidability.TM0PostAdapter.eval_dom_iff
{Q : Type u_1}
[Inhabited Q]
(M : Turing.TM0.Machine Bool Q)
(input : List Bool)
:
(StateTransition.eval (PostMachine.step (machine M)) (init input)).Dom ↔ (Turing.TM0.eval M input).Dom
The combined machine has the same halting domain as the Mathlib machine.
theorem
Undecidability.TM0PostAdapter.terminates_iff_tm0_eval_dom
{Q : Type u_1}
[Inhabited Q]
(M : Turing.TM0.Machine Bool Q)
(input : List Bool)
:
theorem
Undecidability.TM0PostAdapter.thue_iff_tm0_eval_dom
{Q : Type u_1}
[Inhabited Q]
(M : Turing.TM0.Machine Bool Q)
(input : List Bool)
:
ThueEq (PostMachine.system (machine M)) (PostMachine.encode (init input)) PostMachine.target ↔ (Turing.TM0.eval M input).Dom
Direct fixed-target Thue characterization of Mathlib TM0 halting.
theorem
Undecidability.TM0PostAdapter.thue_system_finite
{Q : Type u_1}
[Inhabited Q]
[Finite Q]
(M : Turing.TM0.Machine Bool Q)
: