OAI/Computability/UniqueGames/PCP/SourceNoiseParameterLemmas.lean
91 declarations, 0 contain sorry, 0 declared as axioms
An executable finite-noise denominator for a positive rational target error. Using the stored rational denominator avoids rounding, searches, and choice.
- def
OAI.UniqueGamesTheorem.Foundations.Hastad.SourceNoiseParameter.noiseDenominatorline 27Source documentation
A positive rational has numerator at least one, so its reciprocal denominator is no larger than the rational itself. Adding two also ensures the noise parameter is at most one half for every input.
def noiseDenominator (ξ : ℚ) : ℕ := ξ.den + 2
- theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.SourceNoiseParameter.noiseDenominator_ge_twoline 29 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.SourceNoiseParameter.noiseDenominator_posline 33 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.SourceNoiseParameter.noiseDenominator_inv_posline 36 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.SourceNoiseParameter.noiseDenominator_inv_le_halfline 41 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.SourceNoiseParameter.noiseDenominator_inv_leline 48Source documentation
The actual computed reciprocal noise is below every positive target.
theorem noiseDenominator_inv_le {ξ : ℚ} (hξ : 0 < ξ) : (noiseDenominator ξ : ℚ)⁻¹ ≤ ξ := by …Mentions: OAI.UniqueGamesTheorem.Foundations.Hastad.SourceNoiseParameter.noiseDenominator
- abbrev
OAI.UniqueGamesTheorem.Foundations.Hastad.Cubeline 81 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.bitSignline 83 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.bitSign_sqline 85 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.bitSign_xorline 88 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.cubeXorline 92 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.walshline 94 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_symmline 97 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_sqline 101 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_xorline 105 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.coordinate_orthogonalityline 113 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_sum_orthogonalityline 118 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_orthogonalityline 135 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.coefficientline 142 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_inversionline 145 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_innerline 162 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_parsevalline 179 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.sign_parsevalline 183 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.supportline 205 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.noiseWeightline 207 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.noiseWeight_nonnegline 211 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.noiseWeight_sumline 217 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.noise_walshline 222 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.thirdQueryline 237Source documentation
The third queried Boolean table is
g * (f ∘ π) * μin sign notation.def thirdQuery (π : J → I) (f : Cube I) (g μ : Cube J) : Cube J := …
- theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_autocorrelationline 241Source documentation
Walsh autocorrelation, proved by expanding the explicit basis.
theorem walsh_autocorrelation (B : Cube J → ℝ) (h : Cube J) : (𝔼 g, B g * B (cubeXor g h)) = ∑ s, coefficient B s ^ 2 * walsh s h := by …Mentions: OAI.UniqueGamesTheorem.Foundations.Hastad.Cube, OAI.UniqueGamesTheorem.Foundations.Hastad.cubeXor, OAI.UniqueGamesTheorem.Foundations.Hastad.coefficient, OAI.UniqueGamesTheorem.Foundations.Hastad.walsh
- def
OAI.UniqueGamesTheorem.Foundations.Hastad.projectedCoefficientline 259 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.testBiasline 262 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.testBias_fourierline 266 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.testAcceptanceline 294 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.threeBit_indicatorline 299 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.testAcceptance_eqline 305Source documentation
Actual acceptance is one half plus one half of the three-answer correlation.
theorem testAcceptance_eq (ε : ℝ) (π : J → I) (A : Cube I → Bool) (B : Cube J → Bool) : testAcceptance ε π A B = (1 + testBias ε π (fun f => bitSign (A f)) (fun g => bitSign (B g))) / 2 := by …Mentions: OAI.UniqueGamesTheorem.Foundations.Hastad.Cube, OAI.UniqueGamesTheorem.Foundations.Hastad.testAcceptance, OAI.UniqueGamesTheorem.Foundations.Hastad.testBias, OAI.UniqueGamesTheorem.Foundations.Hastad.bitSign
- def
OAI.UniqueGamesTheorem.Foundations.Hastad.cubeFlipline 344 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.cubeFlip_cubeFlipline 347 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.bitSign_notline 351 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.sum_cubeFlipline 354 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.coefficient_zero_of_oddline 366 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.coefficient_sign_zero_of_foldedline 375 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.representativeline 382 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.representative_atline 386 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.representative_flipline 391 - abbrev
OAI.UniqueGamesTheorem.Foundations.Hastad.HalfCubeline 395 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.canonicalInputline 397 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.canonicalInput_flipline 401 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.foldedAnswerline 407Source documentation
One stored bit and one explicit sign correction for every queried table.
def foldedAnswer (i₀ : I) (table : HalfCube i₀ → Bool) (f : Cube I) : Bool := …
Mentions: OAI.UniqueGamesTheorem.Foundations.Hastad.HalfCube, OAI.UniqueGamesTheorem.Foundations.Hastad.Cube
- theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.foldedAnswer_flipline 411 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.foldedAnswer_zero_coefficientline 419 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.foldedAnswer_dictatorline 424 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.coordinateMaskline 429 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.cubeToggleline 431 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.cubeToggle_twiceline 435 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_coordinateMaskline 441 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_cubeToggleline 451 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.sum_cubeToggleline 456 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.restrictQueryline 469 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.restrictQuery_cubeToggleline 473 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.conditioned_coefficient_zero_invalidline 484 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.conditioned_coefficient_supportline 496Source documentation
Every coordinate returned from a nonzero conditioned Fourier mask is an actual valid local assignment, proved from the concrete restriction map.
theorem conditioned_coefficient_support (valid : I → Bool) (B : Cube {i : I // valid i = true} → ℝ) (s : Cube I) (hne : coefficient (fun f => B (restrictQuery valid f)) s ≠ 0) : ∀ i ∈ support s, valid i = true := by …Mentions: OAI.UniqueGamesTheorem.Foundations.Hastad.Cube, OAI.UniqueGamesTheorem.Foundations.Hastad.coefficient, OAI.UniqueGamesTheorem.Foundations.Hastad.restrictQuery, OAI.UniqueGamesTheorem.Foundations.Hastad.support
- def
OAI.UniqueGamesTheorem.Foundations.Hastad.conditionedFoldedAnswerline 506 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.conditionedFoldedAnswer_flipline 511 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.conditionedFoldedAnswer_zero_coefficientline 518 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.conditionedFoldedAnswer_dictatorline 525 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.parityProjectionline 550 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_supportline 553 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.sign_power_parityline 561 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.walsh_pullbackline 571 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.projectedCoefficient_eqline 581 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.projection_has_preimageline 586 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.scaled_geometric_power_le_oneline 599Source documentation
A purely algebraic decay estimate used instead of exponential bounds.
theorem scaled_geometric_power_le_one {t : ℝ} (ht : 0 ≤ t) (ht' : t ≤ 1) (n : Nat) : (n : ℝ) * (1 - t) * t ^ n ≤ 1 := by … - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.noise_decay_boundline 613 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.zeroMaskline 626 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.support_eq_empty_iffline 629 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.parityProjection_zeroline 641 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.agreementProbabilityline 648Source documentation
Choose uniform coordinates in the two masks and check the projection. An empty support contributes zero.
def agreementProbability (π : J → I) (a : Cube I) (b : Cube J) : ℝ := …
- theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.agreementProbability_nonnegline 653 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.agreementProbability_projectionline 661 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.decoderSuccessline 689Source documentation
Select independent Walsh masks by squared coefficients and uniform points in each support. The two selections use only the respective private tables.
def decoderSuccess (π : J → I) (A : Cube I → Bool) (B : Cube J → Bool) : ℝ := …
- def
OAI.UniqueGamesTheorem.Foundations.Hastad.decodingEnergyline 693 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.decodingEnergy_le_successline 696 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.bias_sq_le_weighted_energyline 730 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.decoder_four_epsilon_bias_sqline 747 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.folded_decoder_boundline 774Source documentation
A concrete folded half-table discharges the zero-coefficient condition.
theorem folded_decoder_bound (ε : ℝ) (π : J → I) (i₀ : I) (table : HalfCube i₀ → Bool) (B : Cube J → Bool) (hε : 0 < ε) (hε' : ε ≤ 1 / 2) : 4 * ε * testBias ε π (fun f => bitSign (foldedAnswer i₀ table f)) (fun g => bitSign (B g)) ^ 2 ≤ decoderSuccess π (foldedAnswer i₀ table) B := by …Mentions: OAI.UniqueGamesTheorem.Foundations.Hastad.HalfCube, OAI.UniqueGamesTheorem.Foundations.Hastad.Cube, OAI.UniqueGamesTheorem.Foundations.Hastad.testBias, OAI.UniqueGamesTheorem.Foundations.Hastad.bitSign, OAI.UniqueGamesTheorem.Foundations.Hastad.foldedAnswer, OAI.UniqueGamesTheorem.Foundations.Hastad.decoderSuccess
- def
OAI.UniqueGamesTheorem.Foundations.Hastad.validAgreementProbabilityline 782 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.validAgreementProbability_eqline 789 - def
OAI.UniqueGamesTheorem.Foundations.Hastad.validDecoderSuccessline 802 - theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.conditioned_validDecoderSuccessline 810Source documentation
Clause validity in the decoded game follows from the concrete conditioned table; no Fourier-support hypothesis is passed to this theorem.
theorem conditioned_validDecoderSuccess (valid : J → Bool) (π : J → I) (A : Cube I → Bool) (j₀ : {j : J // valid j = true}) (table : HalfCube j₀ → Bool) : validDecoderSuccess valid π A (conditionedFoldedAnswer valid j₀ table) = decoderSuccess π A (conditionedFoldedAnswer valid j₀ table) := by …Mentions: OAI.UniqueGamesTheorem.Foundations.Hastad.Cube, OAI.UniqueGamesTheorem.Foundations.Hastad.HalfCube, OAI.UniqueGamesTheorem.Foundations.Hastad.validDecoderSuccess, OAI.UniqueGamesTheorem.Foundations.Hastad.conditionedFoldedAnswer, OAI.UniqueGamesTheorem.Foundations.Hastad.decoderSuccess
- theorem
OAI.UniqueGamesTheorem.Foundations.Hastad.conditioned_folded_decoder_boundline 828