OAI/Computability/UniqueGames/Machines/PoweringMachineRelationLemmas.lean
102 declarations, 0 contain sorry, 0 declared as axioms
A rotor step on the live unary port-table encoding. First read the reverse dart identifier; then read that dart's tail vertex. This uses no division or runtime graph data in finite control. Both positional selections are proved from the actual serialization.
- abbrev
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRelation.Alphabetline 16 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRelation.addressline 18 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRelation.valueline 21 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRelation.selectedline 25 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRelation.instructionline 37 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRelation.relationTraceline 44Source documentation
Actual predicate access, with serialization selection discharged.
theorem relationTrace (source : K) (tape : Fin 5 → K) (distinct : Function.Injective tape) (outside : ∀ i, source ≠ tape i) (port : Fin d) (position : Fin 4096) (labels : MachineAffineLookup.Label → Λ) (exit : Option Λ) (program : Λ → TM2.Stmt (Alphabet (K := K)) Λ (σ × Option Bool)) …Mentions: OAI.UniqueGamesTheorem.Foundations.Complexity.MachineAffineLookup.Label, OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRelation.Alphabet
- theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRelation.steps_leline 64 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRelation.value_eq_acceptsline 75Source documentation
The semantic two-label predicate is the field used by the row producer.
theorem value_eq_accepts (table : PortTables.Table n d) (vertex : Fin n) (port : Fin d) (left right : PortTables.Label) : value table vertex port (GraphTables.relationIndex (left, right)) = GraphTables.bitWord (PortTables.accepts table (vertex, port) left right) := rflMentions: OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRelation.value
- def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRelation.machineline 80 - abbrev
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.Alphabetline 99 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.reverseRoleline 101 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.endpointRoleline 104 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.reverseRole_injectiveline 107 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.endpointRole_injectiveline 108 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.source_outside_reverseline 109 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.reverse_outside_endpointline 110 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.reverseTapesline 112 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.endpointTapesline 113 - inductive
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.Labelline 115 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.instructionline 120 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.reverseIdline 129 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.reverseAddressline 132 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.endpointAddressline 135 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.reverse_selectedline 138 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.endpoint_selectedline 148 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.afterReverseline 154 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.finalTapesline 159 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.stepsline 165 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.rotorTraceline 169 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.finalTapes_endpointline 219 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.finalTapes_otherline 230 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.steps_leline 239 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineRotor.machineline 258Source documentation
Its finite description depends on the fixed degree and selected port; the vertex count and graph table are runtime tape data.
def machine (degree port : Nat) : FinTM2 where …
- abbrev
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.Alphabetline 285 - abbrev
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.Tapeline 286 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.firstline 288 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.shiftline 290 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.shift_injectiveline 292 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.rotorRoleline 296 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.rotorRole_injectiveline 301 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.Labelline 305 - instance
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.labelFintypeline 309 - instance
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.labelDecidableEqline 316 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.entryline 323 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.copyInstructionline 327 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.instructionline 334 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.stepsline 347 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.finalTapesline 353 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.finalTapes_otherline 362 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.wordTraceline 383Source documentation
Actual execution together with its endpoint word. No trace or running-time hypothesis is needed: the recursive proof composes the concrete instructions.
theorem wordTrace (table : PortTables.Table n d) (t : Nat) (placement : Tape t → K) (distinct : Function.Injective placement) (vertex : Fin n) (ports : Fin t → Fin d) (labels : Label t → Λ) (exit : Option Λ) (program : Λ → TM2.Stmt (Alphabet (K := K)) Λ (σ × Option Bool)) …Mentions: OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.Tape, OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.Label, OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.Alphabet
- theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.steps_leline 458 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.machineline 472 - abbrev
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.Tapeline 491 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.tableline 493 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.startline 494 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.queryline 495 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.scanline 496 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.reverseline 497 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.scratchline 498 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.leftEndpointline 499 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.rightEndpointline 500 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.leftCopyline 501 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.rightCopyline 502 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.rowOutputline 503 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.endpointline 505 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.endpoint_falseline 508 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.endpoint_trueline 509 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordSharedRoleline 512Source documentation
Table, query, scan, reverse identifier, scratch, selected endpoint.
def wordSharedRole (target : Bool) (i : Fin 6) : Fin 11 := …
- def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.trajectoryPlacementline 518Source documentation
Position zero is the caller's starting vertex; later positions are the separate physical trajectory tapes.
def trajectoryPlacement {t max : Nat} (h : t ≤ max) : Fin (t + 1) → Tape max := …Mentions: OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.Tape
- def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacementline 521 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement_inl_zeroline 526 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement_inl_oneline 528 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement_inl_twoline 530 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement_inl_threeline 532 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement_inl_fourline 534 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement_inl_fiveline 536 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement_firstline 538 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement_succline 540 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.relationPlacementline 543 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.relationPlacement_zeroline 547 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.relationPlacement_oneline 548 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.relationPlacement_twoline 549 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.relationPlacement_threeline 550 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.relationPlacement_fourline 551 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.relationPlacement_fiveline 552 - def
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.equalityPlacementline 554 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.equalityPlacement_zeroline 558 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.equalityPlacement_oneline 559 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.equalityPlacement_twoline 560 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.equalityPlacement_threeline 561 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.equalityPlacement_fourline 562 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.equalityPlacement_fiveline 563 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordSharedRole_injectiveline 565 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordSharedRole_ne_startline 568 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordSharedRole_ne_rowOutputline 572 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.trajectoryPlacement_injectiveline 576 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordShared_ne_trajectoryline 597 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement_injectiveline 611Source documentation
Every tape used by a bounded word is placed on its own physical tape.
theorem wordPlacement_injective {t max : Nat} (ht : t ≤ max) (target : Bool) : Function.Injective (wordPlacement ht target) := by …Mentions: OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement
- theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.relationPlacement_injectiveline 628 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.equalityPlacement_injectiveline 632 - theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement_ne_rowOutputline 637Source documentation
Word subroutines cannot use the row-output tape, even temporarily.
theorem wordPlacement_ne_rowOutput {t max : Nat} (ht : t ≤ max) (target : Bool) (i : PoweringMachineWord.Tape t) : wordPlacement ht target i ≠ rowOutput max := by …Mentions: OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineWord.Tape, OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement, OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.rowOutput
- theorem
OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.shared_ne_wordPlacement_succline 655Source documentation
A shared role is disjoint from every trajectory tape. This supplies the position-frame premise of
PoweringMachineWord.finalTapes_other.theorem shared_ne_wordPlacement_succ {t max : Nat} (ht : t ≤ max) (target : Bool) (role : Fin 11) (i : Fin t) : (Sum.inl role : Tape max) ≠ wordPlacement ht target (.inr i.succ) := by …Mentions: OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.Tape, OAI.UniqueGamesTheorem.Foundations.Complexity.PoweringMachineTapes.wordPlacement