OAI/Computability/MaxCut/Machines/MachineStateFrame.lean
24 declarations, 0 contain sorry, 0 declared as axioms
- def
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameStatementline 13Source documentation
Same code and stacks, with an untouched caller-register component.
def frameStatement : TM2.Stmt Γ Λ σ → TM2.Stmt Γ Λ (σ × τ) | .push k f next => .push k (fun state => f state.1) (frameStatement next) | .peek k f next => .peek k (fun state bit => (f state.1 bit, state.2)) (frameStatement next) | .pop k f next => .pop k (fun state bit => (f state.1 bit, state.2)) (frameStatement next) | .load f next => .load (fun state => (f state.1, state.2)) (frameStatement next) | .branch f yes no => .branch (fun state => f state.1) (frameStatement yes) (frameStatement no) | .goto f => .goto (fun state => f state.1) | .halt => .halt - def
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameConfigurationline 25 - def
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameProgramline 28 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameConfiguration_stateline 31 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameConfiguration_metadataline 34 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameConfiguration_tapesline 37 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameStatement_pushBoundline 40 - def
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.statementline 45Source documentation
Optional continuation and labels use the existing subroutine semantics.
def statement (labels : Λ → Λ') (exit : Option Λ') (q : TM2.Stmt Γ Λ σ) : TM2.Stmt Γ Λ' (σ × τ) := … - def
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.configurationline 49 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.configuration_stateline 53 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.configuration_metadataline 57 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.configuration_tapesline 61 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.statement_pushBoundline 65 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frame_stepAuxline 75 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frame_stepline 97Source documentation
This identity also covers the final halted configuration.
theorem frame_step (source : Λ → TM2.Stmt Γ Λ σ) (ambient : τ) (c : TM2.Cfg Γ Λ σ) : TM2.step (frameProgram source) (frameConfiguration ambient c) = (TM2.step source c).map (frameConfiguration ambient) := by …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameProgram, OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameConfiguration
- theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frame_advanceline 109 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frame_iterateline 118 - def
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameExecutionline 131Source documentation
Actual execution with the same step count, budget, and tapes.
def frameExecution (source : Λ → TM2.Stmt Γ Λ σ) (ambient : τ) {start : TM2.Cfg Γ Λ σ} {finish : Option (TM2.Cfg Γ Λ σ)} {budget : ℕ} (run : StateTransition.EvalsToInTime (TM2.step source) start finish budget) : StateTransition.EvalsToInTime (TM2.step (frameProgram source)) (frameConfiguration ambient start) (finish.map (frameConfiguration ambient)) budget where …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameProgram, OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameConfiguration
- theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.frameExecution_stepsline 145 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.stepAux_simulationline 150 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.step_simulationline 157 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.traceline 170 - def
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.executionline 181 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineStateFrame.execution_stepsline 191