OAI/Computability/UniqueGames/PCP/PreprocessingRegularTablesLemmas.lean
50 declarations, 0 contain sorry, 0 declared as axioms
Executable degree replacement on the actual finite constraint rows
Vertices are numbered by first listing the original darts, then the dummy darts in original-vertex order. Each local cloud uses its explicit filtered dart list. Internal ports carry equality; the final port retains the original constraint, or an always-accepting loop at a dummy dart. The constructor is total, including inputs with no darts. The fixed base expander is supplied once; every input-dependent operation is an explicit finite calculation.
- def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.paddingListline 25Source documentation
Dummy coordinates, in increasing original vertex and local index order.
def paddingList {n : Nat} (padding : Fin n → Nat) : List (Σ v : Fin n, Fin (padding v)) := …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.padding
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.paddingList_nodupline 29 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.mem_paddingListline 33 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.paddingListOrderline 38 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.paddingList_lengthline 43 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.paddingOrderline 49Source documentation
Explicit list search/get indexing, with an erased cardinality cast.
def paddingOrder {n : Nat} (padding : Fin n → Nat) : (Σ v : Fin n, Fin (padding v)) ≃ Fin (∑ v, padding v) := …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.padding
- abbrev
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.Vertexline 53 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.vertexCountline 56 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.vertexOrderline 60Source documentation
The original darts precede all the newly added dummy darts.
def vertexOrder (t : GraphTables.Table) (padding : Fin t.vertices → Nat) : Vertex t padding ≃ Fin (vertexCount t padding) := …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.padding, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.Vertex, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.vertexCount
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.vertexOrder_originalline 64 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.vertexOrder_dummyline 68 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.unitOrderline 73 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.portOrderline 80Source documentation
Internal cloud ports precede the one inherited-constraint port.
def portOrder (q : Nat) : (Fin q ⊕ Unit) ≃ Fin (q + 1) := …
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.portOrder_internalline 83 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.portOrder_inheritedline 86 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.cloudGraphsline 90Source documentation
A supplied finite cloud rotation is transported by the explicit cloud list.
def cloudGraphs (t : GraphTables.Table) (padding : Fin t.vertices → Nat) {q : Nat} (tables : ∀ v, ExpanderTables.Table (PreprocessingCloudIndex.cloudSize t v + padding v) q) (v : Fin t.vertices) : PortGraph (Cloud (paddedGraph (GraphTables.semantics t) (fun w => Fin (padding w))) v) (Fin q) := …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.padding, OAI.UniqueGamesTheorem.Foundations.PCP.ExpanderTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingCloudIndex.cloudSize, OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.semantics
- def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.sourcePortGraphline 98 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.sourceGraphline 105 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.numberedPortGraphline 113 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.numberedAcceptsline 120 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.numberedAccepts_transposeline 128 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.ofCloudTablesline 142Source documentation
Materialize every reverse index and every 4096-bit constraint row.
def ofCloudTables (t : GraphTables.Table) (padding : Fin t.vertices → Nat) {q : Nat} (tables : ∀ v, ExpanderTables.Table (PreprocessingCloudIndex.cloudSize t v + padding v) q) : PortTables.Table (vertexCount t padding) (q + 1) := …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.padding, OAI.UniqueGamesTheorem.Foundations.PCP.ExpanderTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingCloudIndex.cloudSize, OAI.UniqueGamesTheorem.Foundations.PCP.PortTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.vertexCount
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.rotation_ofCloudTablesline 149 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.accepts_ofCloudTablesline 161 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.accepts_internalline 172 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.accepts_originalline 182 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.accepts_dummyline 193 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.edgeSatisfied_ofCloudTablesline 203 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.rejectionCount_ofCloudTablesline 221Source documentation
Numbering preserves the rejection count for every labeling.
theorem rejectionCount_ofCloudTables (t : GraphTables.Table) (padding : Fin t.vertices → Nat) {q : Nat} (tables : ∀ v, ExpanderTables.Table (PreprocessingCloudIndex.cloudSize t v + padding v) q) (labels : Fin (vertexCount t padding) → GraphTables.Label) : (PortTables.baseGraph (ofCloudTables t padding tables)).rejectionCount labels = (sourceGraph t padding tables).rejectionCount (fun z => labels (vertexOrder t padding z)) := by …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.padding, OAI.UniqueGamesTheorem.Foundations.PCP.ExpanderTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingCloudIndex.cloudSize, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.vertexCount, OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Label, OAI.UniqueGamesTheorem.Foundations.PCP.PortTables.baseGraph, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.ofCloudTables, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.sourceGraph, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.vertexOrder
- def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.liftedLabelline 237 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.rejectionCount_liftedLabelline 243 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.emptyTableline 257Source documentation
An empty cloud has a total, vacuous rotation table.
def emptyTable (q : Nat) : ExpanderTables.Table 0 q := …
Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.ExpanderTables.Table
- def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.resizeTableline 261Source documentation
Change only a proof-equal size index, without selecting any new numbering.
def resizeTable {n m q : Nat} (h : n = m) (table : ExpanderTables.Table n q) : ExpanderTables.Table m q := h ▸ tableMentions: OAI.UniqueGamesTheorem.Foundations.PCP.ExpanderTables.Table
- abbrev
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.BaseTableline 264 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.internalDegreeline 268 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.paddingline 270 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.cloudSize_add_paddingline 274 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.vertexCount_eq_sum_cloudPaddedSizeline 279 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.vertexCount_leline 286 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.vertexCount_eq_zero_of_no_dartsline 292 - def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.familyCloudTableline 299Source documentation
Select the family level by the bounded multiplication search.
def familyCloudTable (H : BaseTable) (t : GraphTables.Table) (v : Fin t.vertices) : ExpanderTables.Table (PreprocessingCloudIndex.cloudSize t v + padding t v) internalDegree := …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.BaseTable, OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.ExpanderTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingCloudIndex.cloudSize, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.padding, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.internalDegree
- def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.regularizeline 313Source documentation
The actual regularized output rows; no runtime proof or positivity input.
def regularize (H : BaseTable) (t : GraphTables.Table) : PortTables.Table (vertexCount t (padding t)) (internalDegree + 1) := …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.BaseTable, OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.PortTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.vertexCount, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.padding, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.internalDegree
- def
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingRegularTables.regularizeInputline 317 - theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingFamilyBridge.rotationWords_resizeTableline 338Source documentation
Transporting only the size equality leaves every serialized rotor entry unchanged; no relabeling or alternative numbering is introduced.
theorem rotationWords_resizeTable {n m q : Nat} (h : n = m) (table : ExpanderTables.Table n q) : rotationWords (resizeTable h table) = rotationWords table := by …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.ExpanderTables.Table
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingFamilyBridge.familyRotor_eq_familyCloudTableline 347Source documentation
This left side is definitionally the output
MachineRegularFamily.rotorfor the request on its physical core tape 4. The right side is exactly the archive expected on core tape 7 by the internal-row machine.theorem familyRotor_eq_familyCloudTable (H : BaseTable) (t : GraphTables.Table) (v : Fin t.vertices) (hk : 0 < cloudSize t v) : encodeWords (rotationWords (ExpanderTables.family H (PreprocessingLevels.boundedLevel (cloudSize t v)))) = encodeWords (rotationWords (familyCloudTable H t v)) := by …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Table, OAI.UniqueGamesTheorem.Foundations.PCP.ExpanderTables.family, OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingLevels.boundedLevel
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingFamilyBridge.cloudSize_pos_of_dartline 358Source documentation
An actual original dart supplies a member of its owner's cloud.
theorem cloudSize_pos_of_dart (t : GraphTables.Table) (e : Fin t.darts) : 0 < cloudSize t t.rows[e].tail := by …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Table
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingFamilyBridge.padding_zero_of_cloudSize_zeroline 364Source documentation
An empty cloud has no padding vertices either.
theorem padding_zero_of_cloudSize_zero (t : GraphTables.Table) (v : Fin t.vertices) (hk : cloudSize t v = 0) : padding t v = 0 := by …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Table
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingFamilyBridge.cloudSize_pos_of_dummyline 369Source documentation
Every actual dummy vertex also belongs to a positive original cloud.
theorem cloudSize_pos_of_dummy (t : GraphTables.Table) (v : Fin t.vertices) (j : Fin (padding t v)) : 0 < cloudSize t v := by …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Table
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingFamilyBridge.cloudSize_pos_of_paddedCloudline 378Source documentation
The same positivity fact for the common local coordinate interface.
theorem cloudSize_pos_of_paddedCloud (t : GraphTables.Table) (v : Fin t.vertices) (x : PaddedCloud t (padding t) v) : 0 < cloudSize t v := by …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Table
- theorem
OAI.UniqueGamesTheorem.Foundations.PCP.PreprocessingFamilyBridge.familyCloudWords_of_zeroline 388Source documentation
The zero-cloud branch remains genuinely empty, including its serialized rotor archive. It is not replaced by the geometric family at request zero.
theorem familyCloudWords_of_zero (H : BaseTable) (t : GraphTables.Table) (v : Fin t.vertices) (hk : cloudSize t v = 0) : encodeWords (rotationWords (familyCloudTable H t v)) = [] := by …Mentions: OAI.UniqueGamesTheorem.Foundations.PCP.GraphTables.Table