OAI/Computability/MaxCut/Machines/MachineRegisterEmit.lean
14 declarations, 0 contain sorry, 0 declared as axioms
- abbrev
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.Alphabetline 14 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.finishline 16 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.emitStatementline 22Source documentation
The fixed literal push chain executes in one TM2 transition.
def emitStatement (destination : K) (offset : Nat) (exit : Option Λ) : TM2.Stmt (Alphabet (K := K)) Λ (σ × Option Bool) := …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.Alphabet
- theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.emitStepline 26 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.prefix_encodeWordline 37 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.registerEmitTraceline 42Source documentation
Caller-program form of the full exact trace. No execution premise is used.
theorem registerEmitTrace (source destination scratch : K) (sourceDestination : source ≠ destination) (sourceScratch : source ≠ scratch) (destinationScratch : destination ≠ scratch) (offset : Nat) (firstLabel secondLabel emitLabel : Λ) (exit : Option Λ) (program : Λ → TM2.Stmt (Alphabet (K := K)) Λ (σ × Option Bool)) …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.program, OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.Alphabet
- def
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.registerEmitInTimeline 72Source documentation
Timed witness retaining the exact
2*n+5-transition execution.def registerEmitInTime (source destination scratch : K) (sourceDestination : source ≠ destination) (sourceScratch : source ≠ scratch) (destinationScratch : destination ≠ scratch) (offset : Nat) (firstLabel secondLabel emitLabel : Λ) (exit : Option Λ) (program : Λ → TM2.Stmt (Alphabet (K := K)) Λ (σ × Option Bool)) …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.program, OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.Alphabet
- def
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.programline 96Source documentation
The three labels are transfer, restore-and-copy, and fixed-offset emission.
def program (source destination scratch : K) (offset : Nat) (exit : Option (Fin 3)) : Fin 3 → TM2.Stmt (Alphabet (K := K)) (Fin 3) (σ × Option Bool) := …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.Alphabet
- def
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.programInTimeline 104 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.machineline 120Source documentation
Three Boolean stacks, three labels, and one optional Boolean register.
def machine (offset : Nat) : FinTM2 where …
- def
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.machineInTimeline 131 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.emitStatement_pushesline 143 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.program_pushes_leline 149 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.machine_pushes_leline 163Source documentation
The fixed offset is included in the finite program's push bound.
theorem machine_pushes_le (offset : Nat) : Runtime.programPushBound (machine offset) ≤ max 2 offset := by …Mentions: OAI.MaxCutGames.Foundations.Complexity.Runtime.programPushBound, OAI.MaxCutGames.Foundations.Complexity.MachineRegisterEmit.machine