OAI/Computability/MaxCut/Machines/MachinePaddedExpanderFamilyBounds.lean
97 declarations, 0 contain sorry, 0 declared as axioms
Actual requested-size to expander-table computation
One finite program physically computes the padding level and then constructs the complete corresponding rotation table. The level output of the first phase is the input tape of the second phase. The actual execution preserves the request, retains the padded size, and has a fixed polynomial time bound in the unary request length.
- def
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamilyBounds.timeCoefficientline 10 - def
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamilyBounds.timePolynomialline 13 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamilyBounds.timePolynomial_encodingline 16 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamilyBounds.ceilingCost_leline 21 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamilyBounds.combinedCost_leline 37 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamilyBounds.familyCost_leline 47 - def
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamilyBounds.outputWordline 57 - def
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamilyBounds.outputCoefficientline 62 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamilyBounds.outputWord_length_leline 66Source documentation
Complete unary rotation-table output, including every delimiter.
theorem outputWord_length_le (H : Table (cloudSize PCP.Expanders.baseDegree) PCP.Expanders.baseDegree) (k : Nat) : (outputWord H k).length ≤ outputCoefficient * (k + 1)^2 := by …Mentions: OAI.MaxCutGames.Foundations.PCP.Expanders.baseDegree, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamilyBounds.outputWord, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamilyBounds.outputCoefficient
- def
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.ceilingInTimeline 108Source documentation
Actual geometric search, placed onto the eventual family-level tape.
noncomputable def ceilingInTime (H : SmallTable) (requested : Nat) (state : MachineExpanderFamily.State ρ fixedDegree) (register : Option Bool) : StateTransition.EvalsToInTime (TM2.step (program H)) ⟨some main, initialState state register, initialTapes requested⟩ (some ⟨some familyEntry, (state, (false, none)), handoffTapes requested⟩) ((MachineCeilingPower.timePolynomial PCP.ExpanderFamily.growth).eval (encodeWord requested).length) := by …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.SmallTable, OAI.MaxCutGames.Foundations.Complexity.MachineExpanderFamily.State, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.fixedDegree, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.program, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.main, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.initialState, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.initialTapes, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.familyEntry, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.handoffTapes, OAI.MaxCutGames.Foundations.Complexity.MachineCeilingPower.timePolynomial, OAI.MaxCutGames.Foundations.PCP.ExpanderFamily.growth, OAI.MaxCutGames.Foundations.Complexity.encodeWord
- def
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.materializeInTimeline 132Source documentation
Actual table materialization consumes the level produced by the preceding phase while retaining the original request and its computed padded size.
noncomputable def materializeInTime (H : SmallTable) (requested : Nat) (state : MachineExpanderFamily.State ρ fixedDegree) : StateTransition.EvalsToInTime (TM2.step (program H)) ⟨some familyEntry, (state, (false, none)), handoffTapes requested⟩ (some ⟨none, finalState H state, finalTapes H requested⟩) (MachineExpanderFamilyBounds.inputCoefficient * (requested + 1)^5) := by …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.SmallTable, OAI.MaxCutGames.Foundations.Complexity.MachineExpanderFamily.State, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.fixedDegree, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.program, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.familyEntry, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.handoffTapes, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.finalState, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.finalTapes, OAI.MaxCutGames.Foundations.Complexity.MachineExpanderFamilyBounds.inputCoefficient
- def
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.paddedInTimeline 155Source documentation
A single concrete finite program takes the original unary request all the way to the exact forward family table. Both phase executions are supplied by proved machines; there is no construction or runtime hypothesis.
noncomputable def paddedInTime (H : SmallTable) (requested : Nat) (state : MachineExpanderFamily.State ρ fixedDegree) (register : Option Bool) : StateTransition.EvalsToInTime (TM2.step (program H)) ⟨some main, initialState state register, initialTapes requested⟩ (some ⟨none, finalState H state, finalTapes H requested⟩) (MachinePaddedExpanderFamilyBounds.timePolynomial.eval (encodeWord requested).length) := by …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.SmallTable, OAI.MaxCutGames.Foundations.Complexity.MachineExpanderFamily.State, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.fixedDegree, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.program, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.main, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.initialState, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.initialTapes, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.finalState, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.finalTapes, OAI.MaxCutGames.Foundations.Complexity.encodeWord
- def
OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.placedInTimeline 173Source documentation
Static placements of the complete computation into a larger caller preserve every complement tape and consume exactly the same runtime budget.
noncomputable def placedInTime {K Λ : Type} [DecidableEq K] (tape : Tape → K) (view : K → Option Tape) (left : ∀ t, view (tape t) = some t) (right : ∀ j t, view j = some t → tape t = j) (labels : Label → Λ) (exit : Option Λ) (extra : K → List Bool) (H : SmallTable) (target : Λ → TM2.Stmt (fun _ : K => Bool) Λ (State ρ)) (code : ∀ l, target (labels l) = Placement.statement tape labels exit (program H l)) (requested : Nat) (state : MachineExpanderFamily.State ρ fixedDegree) (register : Option Bool) : StateTransition.EvalsToInTime (TM2.step target) (Placement.configuration view labels exit extra ⟨some main, initialState state register, initialTapes requested⟩) …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.Tape, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.Label, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.SmallTable, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.State, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.program, OAI.MaxCutGames.Foundations.Complexity.MachineExpanderFamily.State, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.fixedDegree, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.main, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.initialState, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.initialTapes
- abbrev
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.CoreTapeline 209 - abbrev
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.NativeTapeline 210 - abbrev
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.Tapeline 211 - abbrev
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.Alphabetline 212 - abbrev
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.SmallTableline 213 - abbrev
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.FamilyStateline 214 - abbrev
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.Stateline 215 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.inputNativeline 217 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.outputNativeline 218 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.powerNativeline 219 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.sizeNativeline 220 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.levelNativeline 221 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.powerTapeline 223 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.sizeTapeline 224 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.levelTapeline 225 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.familyTapeline 228Source documentation
Unused private shadows of the two public roles remain empty.
def familyTape (t : NativeTape) : Tape := …
Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.NativeTape, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.Tape
- def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.familyViewline 231 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.familyView_leftline 235 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.familyView_rightline 242 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.stateEquivline 263 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.seedStateline 266 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.readyStateline 269 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.sourceProgramline 271 - inductive
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.Labelline 275 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.programline 283Source documentation
Every size-dependent operation is performed by the checked native program. The entry load only resets the finite control state.
def program (H : SmallTable) : Label → TM2.Stmt Alphabet Label State | .start => .load (fun _ => readyState H) (.goto fun _ => .family MachinePaddedExpanderFamily.main) | .family l => Placement.statement familyTape Label.family (some .drainPower) (sourceProgram H l) | .drainPower => MachineDrain.drain powerTape .drainPower (some .drainSize) | .drainSize => MachineDrain.drain sizeTape .drainSize (some .drainLevel) | .drainLevel => MachineDrain.drain levelTape .drainLevel none
Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.SmallTable, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.Label, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.Alphabet, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.State, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.readyState, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.main, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.familyTape, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.sourceProgram, OAI.MaxCutGames.Foundations.Complexity.MachineDrain.drain, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.powerTape, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.sizeTape, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.levelTape
- def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.frameline 290 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.rotorline 294 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.resultCoreline 297 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.workingline 300 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.working_powerline 305 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.working_sizeline 308 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.working_levelline 312 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.update_working_powerline 316 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.update_working_sizeline 323 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.update_working_levelline 333 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.working_emptyline 343 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.initial_other_inline_MachineRegularFamilyline 347 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.final_other_inline_MachineRegularFamilyline 354Source documentation
The only retained native work words are the two sizes and the exhausted level.
private theorem final_other_inline_MachineRegularFamily (H : SmallTable) (k : Nat) (t : NativeTape) (hi : t ≠ inputNative) (ho : t ≠ outputNative) (hp : t ≠ powerNative) (hs : t ≠ sizeNative) (hl : t ≠ levelNative) : MachinePaddedExpanderFamily.finalTapes H k t = [] := by …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.SmallTable, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.NativeTape, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.inputNative, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.outputNative, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.powerNative, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.sizeNative, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.levelNative, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.finalTapes
- theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.initial_placementline 375 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.final_placementline 396 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.source_initial_stateline 444 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.source_final_stateline 448 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.familyInTimeline 454Source documentation
The actual native family run, including geometric-level computation.
noncomputable def familyInTime (H : SmallTable) (k : Nat) (core : CoreTape → List Bool) (hinput : core 4 = encodeWord k) (houtput : core 7 = []) : StateTransition.EvalsToInTime (TM2.step (program H)) ⟨some (.family MachinePaddedExpanderFamily.main), readyState H, frame core⟩ (some ⟨some .drainPower, readyState H, working (resultCore H k core) (encodeWord (PCP.PreprocessingLevels.paddedSize k)) (encodeWord (PCP.PreprocessingLevels.paddedSize k)) (encodeWord 0)⟩) (MachinePaddedExpanderFamilyBounds.timePolynomial.eval (encodeWord k).length) := by …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.SmallTable, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.CoreTape, OAI.MaxCutGames.Foundations.Complexity.encodeWord, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.program, OAI.MaxCutGames.Foundations.Complexity.MachinePaddedExpanderFamily.main, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.readyState, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.frame, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.working, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.resultCore, OAI.MaxCutGames.Foundations.PCP.PreprocessingLevels.paddedSize
- theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.appendTrace_inline_MachineRegularFamilyline 475 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.cleanupTraceline 480Source documentation
Every retained private symbol is physically popped.
theorem cleanupTrace (H : SmallTable) (m : Nat) (core : CoreTape → List Bool) : (advance (TM2.step (program H)))^[2*m+6] (some ⟨some .drainPower, readyState H, working core (encodeWord m) (encodeWord m) (encodeWord 0)⟩) = some ⟨none, readyState H, frame core⟩ := by …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.SmallTable, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.CoreTape, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.program, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.readyState, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.working, OAI.MaxCutGames.Foundations.Complexity.encodeWord, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.frame
- def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.cleanupInTimeline 502 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.startInTimeline 511 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.timePolynomialline 521 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.totalBudget_leline 525 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.familyCleanInTimeline 538Source documentation
Complete clean-frame execution, from the caller's actual unary request. No callback, table-construction premise, or caller-supplied runtime is assumed.
noncomputable def familyCleanInTime (H : SmallTable) (k : Nat) (core : CoreTape → List Bool) (hinput : core 4 = encodeWord k) (houtput : core 7 = []) (state : State) : StateTransition.EvalsToInTime (TM2.step (program H)) ⟨some .start, state, frame core⟩ (some ⟨none, readyState H, frame (resultCore H k core)⟩) (timePolynomial.eval (encodeWord k).length) := by …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.SmallTable, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.CoreTape, OAI.MaxCutGames.Foundations.Complexity.encodeWord, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.State, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.program, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.frame, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.readyState, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.resultCore
- theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.result_outputline 554 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.result_preserves_coreline 557 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.result_private_emptyline 561 - def
OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.placedInTimeline 566Source documentation
Direct embedding of the entire helper into another finite program.
noncomputable def placedInTime {K Λ : Type} [DecidableEq K] (tape : Tape → K) (view : K → Option Tape) (left : ∀ t, view (tape t) = some t) (right : ∀ j t, view j = some t → tape t = j) (labels : Label → Λ) (exit : Option Λ) (extra : K → List Bool) (H : SmallTable) (target : Λ → TM2.Stmt (fun _ : K => Bool) Λ State) (code : ∀ l, target (labels l) = Placement.statement tape labels exit (program H l)) (k : Nat) (core : CoreTape → List Bool) (hinput : core 4 = encodeWord k) (houtput : core 7 = []) (state : State) : StateTransition.EvalsToInTime (TM2.step target) (Placement.configuration view labels exit extra ⟨some .start, state, frame core⟩) (some (Placement.configuration view labels exit extra …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.Tape, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.Label, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.SmallTable, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.State, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.program, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.CoreTape, OAI.MaxCutGames.Foundations.Complexity.encodeWord, OAI.MaxCutGames.Foundations.Complexity.MachineRegularFamily.frame
- abbrev
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.Alphabetline 597 - abbrev
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.Stateline 598 - def
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.zeroTestline 601Source documentation
A boundary test which inspects the first unary bit without consuming it.
def zeroTest (operand : K) (exit : Option Λ) : TM2.Stmt (Alphabet (K := K)) Λ (State σ) := …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.Alphabet, OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.State
- theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.zeroTestTraceline 607 - def
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.tapesline 623Source documentation
Slots 0 and 1 are the operands; slots 2 and 3 are their saved prefixes.
def tapes (slots : Fin 4 ↪ K) (base : K → List Bool) (left right savedLeft savedRight : List Bool) : K → List Bool := … - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.tapes_leftline 628 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.tapes_rightline 633 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.tapes_savedLeftline 638 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.tapes_savedRightline 643 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.update_tapesline 648 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.tapes_selfline 666 - def
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.stopline 670 - def
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.scanline 674 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.scan_step_zero_leftline 689 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.scan_step_zero_rightline 702 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.scan_step_succline 715 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.scanTraceline 730 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.transferLeft_tapesline 761 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.transferRight_tapesline 768 - inductive
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.Labelline 775 - instance
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.(instance at line 781)line 781 - def
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.statementline 785 - def
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.stepsline 793 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.comparisonTraceline 795 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.lessThanTraceline 851Source documentation
Actual comparison on a caller frame: both complete operand tapes and all other tapes are preserved, both scratch tapes remain empty, and the finite result flag is precisely the strict comparison of the two unary values.
theorem lessThanTrace (slots : Fin 4 ↪ K) (labels : Label → Λ) (exit : Option Λ) (program : Λ → TM2.Stmt (Alphabet (K := K)) Λ (State σ)) …Mentions: OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.Label, OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.Alphabet, OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.State
- def
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.timePolynomialline 869 - theorem
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.steps_le_timeline 871 - def
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.lessThanInPolynomialTimeline 877 - abbrev
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.machineline 893 - def
OAI.MaxCutGames.Foundations.Complexity.MachineUnaryLessAt.machineInPolynomialTimeline 904