OAI/Computability/MaxCut/PCP/PreprocessingRegularTables.lean
110 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.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.paddingListline 23Source 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.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.padding
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.paddingList_nodupline 27 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.mem_paddingListline 31 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.paddingListOrderline 36 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.paddingList_lengthline 41 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.paddingOrderline 47Source 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.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.padding
- abbrev
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.Vertexline 51 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.vertexCountline 54 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.vertexOrderline 58Source 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.MaxCutGames.Foundations.PCP.GraphTables.Table, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.padding, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.Vertex, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.vertexCount
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.vertexOrder_originalline 62 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.vertexOrder_dummyline 66 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.unitOrderline 71 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.portOrderline 78Source documentation
Internal cloud ports precede the one inherited-constraint port.
def portOrder (q : Nat) : (Fin q ⊕ Unit) ≃ Fin (q + 1) := …
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.portOrder_internalline 81 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.portOrder_inheritedline 84 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.cloudGraphsline 88Source 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.MaxCutGames.Foundations.PCP.GraphTables.Table, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.padding, OAI.MaxCutGames.Foundations.PCP.ExpanderTables.Table, OAI.MaxCutGames.Foundations.PCP.PreprocessingCloudIndex.cloudSize, OAI.MaxCutGames.Foundations.PCP.GraphTables.semantics
- def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.sourcePortGraphline 96 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.sourceGraphline 103 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.numberedPortGraphline 111 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.numberedAcceptsline 118 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.numberedAccepts_transposeline 126 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.ofCloudTablesline 140Source 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.MaxCutGames.Foundations.PCP.GraphTables.Table, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.padding, OAI.MaxCutGames.Foundations.PCP.ExpanderTables.Table, OAI.MaxCutGames.Foundations.PCP.PreprocessingCloudIndex.cloudSize, OAI.MaxCutGames.Foundations.PCP.PortTables.Table, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.vertexCount
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.rotation_ofCloudTablesline 147 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.accepts_ofCloudTablesline 159 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.accepts_internalline 170 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.accepts_originalline 180 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.accepts_dummyline 191 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.edgeSatisfied_ofCloudTablesline 201 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.rejectionCount_ofCloudTablesline 219Source 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.MaxCutGames.Foundations.PCP.GraphTables.Table, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.padding, OAI.MaxCutGames.Foundations.PCP.ExpanderTables.Table, OAI.MaxCutGames.Foundations.PCP.PreprocessingCloudIndex.cloudSize, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.vertexCount, OAI.MaxCutGames.Foundations.PCP.GraphTables.Label, OAI.MaxCutGames.Foundations.PCP.PortTables.baseGraph, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.ofCloudTables, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.sourceGraph, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.vertexOrder
- def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.liftedLabelline 235 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.rejectionCount_liftedLabelline 241 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.emptyTableline 254Source documentation
An empty cloud has a total, vacuous rotation table.
def emptyTable (q : Nat) : ExpanderTables.Table 0 q := …
Mentions: OAI.MaxCutGames.Foundations.PCP.ExpanderTables.Table
- def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.resizeTableline 258Source 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.MaxCutGames.Foundations.PCP.ExpanderTables.Table
- abbrev
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.BaseTableline 261 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.internalDegreeline 265 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.paddingline 267 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.cloudSize_add_paddingline 271 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.vertexCount_eq_sum_cloudPaddedSizeline 276 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.vertexCount_leline 283 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.vertexCount_eq_zero_of_no_dartsline 289 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.familyCloudTableline 296Source 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.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.BaseTable, OAI.MaxCutGames.Foundations.PCP.GraphTables.Table, OAI.MaxCutGames.Foundations.PCP.ExpanderTables.Table, OAI.MaxCutGames.Foundations.PCP.PreprocessingCloudIndex.cloudSize, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.padding, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.internalDegree
- def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.regularizeline 310Source 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.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.BaseTable, OAI.MaxCutGames.Foundations.PCP.GraphTables.Table, OAI.MaxCutGames.Foundations.PCP.PortTables.Table, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.vertexCount, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.padding, OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.internalDegree
- def
OAI.MaxCutGames.Foundations.PCP.PreprocessingRegularTables.regularizeInputline 314 - def
OAI.MaxCutGames.Foundations.PCP.VertexPadding.reverseFunctionline 327Source documentation
Original darts use the original reversal; dummy darts stay fixed.
def reverseFunction (G : ConstraintGraph V (V × D) A) (extra : ℕ) : (V ⊕ Fin extra) × D → (V ⊕ Fin extra) × D | (Sum.inl v, d) => (Sum.inl (G.reverse (v, d)).1, (G.reverse (v, d)).2) | (Sum.inr w, d) => (Sum.inr w, d) - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.reverseFunction_involutiveline 332 - def
OAI.MaxCutGames.Foundations.PCP.VertexPadding.padline 341Source documentation
Actual regular padding by an arbitrary finite number of dummy vertices.
def pad (G : ConstraintGraph V (V × D) A) (extra : ℕ) : ConstraintGraph (V ⊕ Fin extra) ((V ⊕ Fin extra) × D) A where … - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.pad_tailline 359 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.pad_reverse_inlline 362 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.pad_reverse_inrline 367 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.edgeSatisfied_inlline 371 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.edgeSatisfied_inrline 382 - def
OAI.MaxCutGames.Foundations.PCP.VertexPadding.extendLabelingline 386 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.extendLabeling_inlline 389 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.extendLabeling_inrline 392 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.pad_satisfiableline 395 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.satisfiable_of_padline 403 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.rejectionCount_eq_sum_inline_VertexPaddingline 410 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.pad_rejectionCountline 416Source documentation
Exact counts for every padded labeling, without any condition on dummy labels.
theorem pad_rejectionCount [Fintype V] [Fintype D] (G : ConstraintGraph V (V × D) A) (htail : G.tail = Prod.fst) (extra : ℕ) (labeling : V ⊕ Fin extra → A) : (pad G extra).rejectionCount labeling = G.rejectionCount (fun v => labeling (Sum.inl v)) := by …Mentions: OAI.MaxCutGames.Foundations.PCP.ConstraintGraph, OAI.MaxCutGames.Foundations.PCP.VertexPadding.pad
- def
OAI.MaxCutGames.Foundations.PCP.VertexPadding.extraVerticesline 428 - abbrev
OAI.MaxCutGames.Foundations.PCP.VertexPadding.Vertexline 430 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.card_vertexline 432 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.le_card_vertexline 436 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.card_vertex_leline 440 - def
OAI.MaxCutGames.Foundations.PCP.VertexPadding.familyVertexEquivline 446Source documentation
Exact coordinate bridge to the proved geometric family.
noncomputable def familyVertexEquiv : Vertex V ≃ ExpanderFamily.Vertex (ExpanderFamily.level (Fintype.card V)) := …Mentions: OAI.MaxCutGames.Foundations.PCP.VertexPadding.Vertex, OAI.MaxCutGames.Foundations.PCP.ExpanderFamily.Vertex, OAI.MaxCutGames.Foundations.PCP.ExpanderFamily.level
- def
OAI.MaxCutGames.Foundations.PCP.VertexPadding.paddedGline 454 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.paddedG_tailline 457 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.paddedG_rejectionCountline 460 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.rejectionCount_eqline 467 - def
OAI.MaxCutGames.Foundations.PCP.VertexPadding.liftLabelline 474 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.liftLabel_inlline 477 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.liftLabel_inrline 480 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.rejectionCount_liftLabelline 484 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.paddedG_satisfiableline 491 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.card_padded_dartsline 495 - theorem
OAI.MaxCutGames.Foundations.PCP.VertexPadding.card_padded_darts_leline 499 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.vertexEquivline 525Source documentation
Old vertices occupy the initial interval and dummy vertices the final one.
def vertexEquiv (h : n ≤ m) : Fin n ⊕ Fin (m - n) ≃ Fin m := …
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.vertexEquiv_inlline 528 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.vertexEquiv_inr_valline 531 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.vertexEquiv_symm_oldline 534 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.dartEquivline 539Source documentation
The port number is retained by the coordinate conversion.
def dartEquiv (h : n ≤ m) : (Fin n ⊕ Fin (m - n)) × Fin d ≃ Fin m × Fin d := … - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.dartEquiv_applyline 543 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.sumGraphline 548Source documentation
Concrete sum-type padding, before converting to integer vertex indices.
def sumGraph (table : Table n d) (m : Nat) : ConstraintGraph (Fin n ⊕ Fin (m - n)) ((Fin n ⊕ Fin (m - n)) × Fin d) Label := … - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.paddedGraphline 554Source documentation
The same graph, with the explicit initial/final-interval vertex ordering.
def paddedGraph (table : Table n d) (h : n ≤ m) : ConstraintGraph (Fin m) (Fin m × Fin d) Label where … - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.paddedGraph_reverse_equivline 571 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.paddedGraph_accepts_equivline 579 - def
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.padline 587Source documentation
Executable materialization of every padded rotation and predicate row.
def pad (table : Table n d) (h : n ≤ m) : Table m d := …
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.rotation_padline 593 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.accepts_padline 597 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.pad_validline 603Source documentation
These are the actual finite table validity laws, not additional premises.
theorem pad_valid (table : Table n d) (h : n ≤ m) : Function.Involutive (rotation (pad table h)) ∧ ∀ e a b, PortTables.accepts (pad table h) (rotation (pad table h) e) b a = PortTables.accepts (pad table h) e a b := …Mentions: OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.pad, OAI.MaxCutGames.Foundations.PCP.PortTables.accepts
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.constraintGraph_ext_inline_PreprocessingPaddingTablesline 609 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.baseGraph_padline 624Source documentation
Full semantic identity with the concrete padding and explicit reindexing.
@[simp] theorem baseGraph_pad (table : Table n d) (h : n ≤ m) : baseGraph (pad table h) = paddedGraph table h := by …Mentions: OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.pad, OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.paddedGraph
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.rotation_pad_equivline 632 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.rotation_pad_oldline 640 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.rotation_pad_newline 647 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.accepts_pad_oldline 654 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.accepts_pad_newline 660 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.reverseIndex_pad_oldline 666 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.reverseIndex_pad_newline 672 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.relation_ext_inline_PreprocessingPaddingTablesline 678 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.relations_pad_oldline 688Source documentation
The entire old 4096-bit relation row is retained.
theorem relations_pad_old (table : Table n d) (h : n ≤ m) (v : Fin n) (p : Fin d) : (pad table h).relations[rowIndex m d (v.castLE h, p)] = table.relations[rowIndex n d (v, p)] := by …Mentions: OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.pad
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.relations_pad_newline 697Source documentation
Every bit of every added relation row PortTables.accepts.
theorem relations_pad_new (table : Table n d) (h : n ≤ m) (v : Fin (m - n)) (p : Fin d) : (pad table h).relations[rowIndex m d (vertexEquiv h (Sum.inr v), p)] = Vector.replicate 4096 true := by …Mentions: OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.pad, OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.vertexEquiv
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.paddedGraph_edgeSatisfied_equivline 708Source documentation
Pointwise satisfaction commutes with the explicit sum-coordinate map.
theorem paddedGraph_edgeSatisfied_equiv (table : Table n d) (h : n ≤ m) (labeling : Fin m → Label) (e : (Fin n ⊕ Fin (m - n)) × Fin d) : (paddedGraph table h).edgeSatisfied labeling (dartEquiv h e) = (sumGraph table m).edgeSatisfied (fun v => labeling (vertexEquiv h v)) e := by …Mentions: OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.paddedGraph, OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.dartEquiv, OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.sumGraph, OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.vertexEquiv
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.edgeSatisfied_pad_equivline 720 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.edgeSatisfied_pad_oldline 727 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.edgeSatisfied_pad_newline 735 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.pad_rejectionCountline 742Source documentation
Exact occurrence counts for arbitrary labels on all old and added vertices.
theorem pad_rejectionCount (table : Table n d) (h : n ≤ m) (labeling : Fin m → Label) : (baseGraph (pad table h)).rejectionCount labeling = (baseGraph table).rejectionCount (fun v => labeling (v.castLE h)) := by …Mentions: OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.pad
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.pad_labeling_satisfies_iffline 761Source documentation
A particular padded labeling satisfies exactly when its old restriction does.
theorem pad_labeling_satisfies_iff (table : Table n d) (h : n ≤ m) (labeling : Fin m → Label) : (∀ e, (baseGraph (pad table h)).edgeSatisfied labeling e = true) ↔ ∀ e, (baseGraph table).edgeSatisfied (fun v => labeling (v.castLE h)) e = true := by …Mentions: OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.pad
- def
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.extendLabelingline 777Source documentation
A computable extension uses label zero on every dummy vertex.
def extendLabeling (h : n ≤ m) (labeling : Fin n → Label) : Fin m → Label := …
- theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.extendLabeling_oldline 780 - theorem
OAI.MaxCutGames.Foundations.PCP.PreprocessingPaddingTables.pad_satisfiable_iffline 784