OAI/Computability/UniqueGames/PCP/LoopState.lean
24 declarations, 0 contain sorry, 0 declared as axioms
Exact tape invariant for the old-dart loop. The cursor stores the remaining input rows, while the reversed tape stores precisely the output headers and the blocks already emitted. The scan and index-scan tapes are unconstrained: the next lookup prefixes fresh copies and retains old residues as suffixes. Finite control state is specified by the actual execution theorems using this tape invariant.
- def
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.inputBitsline 24 - def
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.prefixWordsline 28Source documentation
The output headers are included even before the first old row is read.
def prefixWords (input : GenericGraphTables.Table q) (e : Nat) : List Nat := …
Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GenericGraphTables.Table
- def
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.prefixBitsline 33 - def
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.cursorWordsline 36 - def
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.cursorBitsline 39 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.prefixWords_zeroline 42 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.prefixBits_zeroline 48 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.prefixWords_succline 54 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.prefixBits_succline 67 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.prefixBits_reverse_succline 74 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.prefixWords_fullline 81 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.prefixBits_fullline 91Source documentation
At the terminal guard the stored prefix is the complete concrete output encoding.
theorem prefixBits_full (input : GenericGraphTables.Table q) : prefixBits input input.darts = GraphTables.tableBits (Table.build input) := by …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GenericGraphTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.prefixBits, OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.tableBits, OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.Table.build
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.cursorBits_zeroline 96 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.cursorWords_succline 101 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.cursorBits_succline 112 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.cursorBits_fullline 120 - structure
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.Readyline 129Source documentation
Guard-to-guard tape contract. Only scan and indexScan may contain residues.
structure Ready (input : GenericGraphTables.Table q) (e : Nat) (base : Tape → List Bool) : Prop where …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GenericGraphTables.Table
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.Ready.of_agreeline 148Source documentation
Changing only lookup residues preserves the complete loop contract.
theorem Ready.of_agree {input : GenericGraphTables.Table q} {e : Nat} {base next : Tape → List Bool} (ready : Ready input e base) (agree : ∀ tape, tape ≠ .scan → tape ≠ .indexScan → next tape = base tape) : Ready input e next where …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GenericGraphTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.Ready
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.Ready.update_scanline 168 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.Ready.update_indexScanline 175 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.Ready.counter_succline 182 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.Ready.counter_at_endline 189 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.Ready.cursor_at_endline 194 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.AlphabetTable.LoopState.Ready.reversed_at_endline 198