OAI/Computability/UniqueGames/Repetition/CollisionLemmas.lean

GitHub source file

61 declarations, 0 contain sorry, 0 declared as axioms

Finite conditional projection kernels for the Dinur--Steurer argument. The outer distribution samples the right question and the inner distribution samples the left question conditional on it. These are genuine normalized finite distributions; no norm inequality or repetition claim is a field.

  1. structure OAI.UniqueGamesTheorem.Repetition.ProjectionKernel line 27
  2. def OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.toGame line 39
  3. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.toGame_isProjection line 49
  4. def OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.apply line 53

    Source documentation

    Apply the projection operator to an arbitrary real assignment table.

    def apply (K : ProjectionKernel Q₁ Q₂ A₁ A₂)
        (f : Q₁ → A₁ → ℝ) (y : Q₂) (b : A₂) : ℝ :=
    …

    Mentions: OAI.UniqueGamesTheorem.Repetition.ProjectionKernel

  5. def OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.energy line 58

    Source documentation

    Squared Hilbert norm, with the actual right-question marginal.

    def energy (K : ProjectionKernel Q₁ Q₂ A₁ A₂) (f : Q₁ → A₁ → ℝ) : ℝ :=
    …

    Mentions: OAI.UniqueGamesTheorem.Repetition.ProjectionKernel

  6. def OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.assignment line 61
  7. def OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.assignmentEnergy line 65
  8. def OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.collisionValue line 69

    Source documentation

    Maximum squared collision norm of an ordinary deterministic left strategy.

    def collisionValue [Nonempty A₁] (K : ProjectionKernel Q₁ Q₂ A₁ A₂) : ℝ := by
    …

    Mentions: OAI.UniqueGamesTheorem.Repetition.ProjectionKernel

  9. def OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.vectorEnergy line 73
  10. def OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.vectorMass line 76
  11. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.energy_nonneg line 79
  12. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.assignmentEnergy_le_collisionValue line 84
  13. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.collisionValue_le_iff line 90
  14. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.exists_optimal_assignment line 96
  15. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.collisionValue_nonneg line 104
  16. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.apply_assignment line 110
  17. def OAI.UniqueGamesTheorem.Repetition.leftQuestionMarginal line 159
  18. def OAI.UniqueGamesTheorem.Repetition.rightQuestionMarginal line 166
  19. def OAI.UniqueGamesTheorem.Repetition.leftGivenRight line 175

    Source documentation

    The fallback exists even when the question types were not supplied with Nonempty instances: it is a marginal of the game's actual probability law.

    def leftGivenRight (G : Game Q₁ Q₂ A₁ A₂) (y : Q₂) : FiniteDistribution Q₁ :=
    …
  20. theorem OAI.UniqueGamesTheorem.Repetition.rightQuestionMarginal_mul_leftGivenRight line 182

    Source documentation

    Exact disintegration, including right questions of marginal probability zero. The conditional law is never assumed to reconstruct the question law.

    theorem rightQuestionMarginal_mul_leftGivenRight
        (G : Game Q₁ Q₂ A₁ A₂) (x : Q₁) (y : Q₂) :
        (rightQuestionMarginal G).weight y * (leftGivenRight G y).weight x =
          G.questions.weight (x, y) :=
    …

    Mentions: OAI.UniqueGamesTheorem.Repetition.rightQuestionMarginal, OAI.UniqueGamesTheorem.Repetition.leftGivenRight

  21. def OAI.UniqueGamesTheorem.Repetition.kernelOfGame line 192

    Source documentation

    A projection game's predicate and actual question distribution determine the conditional kernel used by the collision argument.

    def kernelOfGame (G : Game Q₁ Q₂ A₁ A₂) (hG : IsProjection G) :
        ProjectionKernel Q₁ Q₂ A₁ A₂ where
    …

    Mentions: OAI.UniqueGamesTheorem.Repetition.IsProjection, OAI.UniqueGamesTheorem.Repetition.ProjectionKernel

  22. theorem OAI.UniqueGamesTheorem.Repetition.kernelOfGame_question_weight line 199
  23. theorem OAI.UniqueGamesTheorem.Repetition.toGame_kernelOfGame line 204
  24. theorem OAI.UniqueGamesTheorem.Repetition.kernelOfGame_success line 216
  25. theorem OAI.UniqueGamesTheorem.Repetition.kernelOfGame_value line 222
  26. def OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.reindex line 253

    Source documentation

    Transport both normalized question laws and the projection predicate.

    def reindex (K : ProjectionKernel Q₁ Q₂ A₁ A₂)
        (eQ₁ : Q₁ ≃ R₁) (eQ₂ : Q₂ ≃ R₂)
        (eA₁ : A₁ ≃ B₁) (eA₂ : A₂ ≃ B₂) : ProjectionKernel R₁ R₂ B₁ B₂ where
    …

    Mentions: OAI.UniqueGamesTheorem.Repetition.ProjectionKernel

  27. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.apply_reindex line 264

    Source documentation

    Reindexing the operator equals pulling back its assignment table.

    theorem apply_reindex (K : ProjectionKernel Q₁ Q₂ A₁ A₂)
        (eQ₁ : Q₁ ≃ R₁) (eQ₂ : Q₂ ≃ R₂)
        (eA₁ : A₁ ≃ B₁) (eA₂ : A₂ ≃ B₂)
        (f : R₁ → B₁ → ℝ) (y : R₂) (b : B₂) :
        (K.reindex eQ₁ eQ₂ eA₁ eA₂).apply f y b =
          K.apply (fun x a => f (eQ₁ x) (eA₁ a)) (eQ₂.symm y) (eA₂.symm b) := by
    …

    Mentions: OAI.UniqueGamesTheorem.Repetition.ProjectionKernel, OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.apply

  28. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.energy_reindex line 283
  29. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.assignmentEnergy_reindex line 298
  30. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.collisionValue_reindex line 321

    Source documentation

    No strategy is lost under bijective question and answer encodings.

    theorem collisionValue_reindex [Nonempty A₁] [Nonempty B₁]
        (K : ProjectionKernel Q₁ Q₂ A₁ A₂)
        (eQ₁ : Q₁ ≃ R₁) (eQ₂ : Q₂ ≃ R₂)
        (eA₁ : A₁ ≃ B₁) (eA₂ : A₂ ≃ B₂) :
        (K.reindex eQ₁ eQ₂ eA₁ eA₂).collisionValue = K.collisionValue := by
    …

    Mentions: OAI.UniqueGamesTheorem.Repetition.ProjectionKernel, OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.collisionValue

  31. theorem OAI.UniqueGamesTheorem.Repetition.FiniteLaw.probability_product_eq_left_expectation line 360
  32. theorem OAI.UniqueGamesTheorem.Repetition.FiniteLaw.probability_product_eq_right_expectation line 372
  33. theorem OAI.UniqueGamesTheorem.Repetition.FiniteLaw.expectation_mono line 385
  34. def OAI.UniqueGamesTheorem.Repetition.leftFactorStrategy line 397
  35. def OAI.UniqueGamesTheorem.Repetition.rightFactorStrategy line 402
  36. theorem OAI.UniqueGamesTheorem.Repetition.success_product_le_left line 407
  37. theorem OAI.UniqueGamesTheorem.Repetition.success_product_le_right line 423
  38. theorem OAI.UniqueGamesTheorem.Repetition.product_value_le_min line 439
  39. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.sq_expectation_le_expectation_sq line 468
  40. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.apply_assignment_nonneg line 480
  41. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.sum_apply_assignment_le_one line 488

    Source documentation

    The projected distribution has total mass at most one; missing mass is the possibility that a partial projection rejects the chosen left answer.

    theorem sum_apply_assignment_le_one (K : ProjectionKernel Q₁ Q₂ A₁ A₂)
        (labels : Q₁ → A₁) (y : Q₂) :
        (∑ b, K.apply (assignment labels) y b) ≤ 1 := by
    …

    Mentions: OAI.UniqueGamesTheorem.Repetition.ProjectionKernel, OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.assignment

  42. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.success_eq_outer_apply line 512
  43. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.success_sq_le_assignmentEnergy line 527
  44. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.value_sq_le_collisionValue line 541
  45. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.exists_best_response line 549

    Source documentation

    Choose the actual best right answer separately at each right question.

    theorem exists_best_response [Nonempty A₂]
        (K : ProjectionKernel Q₁ Q₂ A₁ A₂) (labels : Q₁ → A₁) :
        ∃ answers : Q₂ → A₂, ∀ y b,
          K.apply (assignment labels) y b ≤ K.apply (assignment labels) y (answers y) := by
    …

    Mentions: OAI.UniqueGamesTheorem.Repetition.ProjectionKernel, OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.assignment

  46. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.assignmentEnergy_le_value line 565
  47. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.collisionValue_le_value line 591
  48. theorem OAI.UniqueGamesTheorem.Repetition.ProjectionKernel.collisionValue_le_one line 596
  49. def OAI.UniqueGamesTheorem.Repetition.rowMass line 626

    Source documentation

    The mass at each vertex, before or after determinization.

    def rowMass (h : V → A → ℝ) (v : V) : ℝ := ∑ a, h v a
  50. def OAI.UniqueGamesTheorem.Repetition.deterministicVector line 629

    Source documentation

    Move the full mass of each row to its selected label.

    def deterministicVector [DecidableEq A] (h : V → A → ℝ) (labels : V → A)
        (v : V) (a : A) : ℝ :=
    …
  51. theorem OAI.UniqueGamesTheorem.Repetition.deterministicVector_rowMass line 634
  52. theorem OAI.UniqueGamesTheorem.Repetition.rowMass_nonnegative line 640
  53. theorem OAI.UniqueGamesTheorem.Repetition.deterministicVector_nonnegative line 645
  54. theorem OAI.UniqueGamesTheorem.Repetition.deterministicVector_linear_image line 653
  55. theorem OAI.UniqueGamesTheorem.Repetition.entry_eq_zero_of_rowMass_eq_zero line 660
  56. def OAI.UniqueGamesTheorem.Repetition.rowLaw line 668

    Source documentation

    A zero row is harmless and uses a fixed fallback label.

    def rowLaw [Nonempty A] (h : V → A → ℝ) (hh : ∀ v a, 0 ≤ h v a)
        (v : V) : FiniteDistribution A := by
    …
  57. theorem OAI.UniqueGamesTheorem.Repetition.rowLaw_expectation_mul_mass line 684
  58. theorem OAI.UniqueGamesTheorem.Repetition.square_expectation_le line 698

    Source documentation

    Finite Jensen for the square, proved by expanding nonnegative variance.

    theorem square_expectation_le {Ω : Type*} [Fintype Ω]
        (law : FiniteDistribution Ω) (f : Ω → ℝ) :
        law.expectation f ^ 2 ≤ law.expectation (fun x => f x ^ 2) := by
    …
  59. theorem OAI.UniqueGamesTheorem.Repetition.exists_expectation_le line 725
  60. theorem OAI.UniqueGamesTheorem.Repetition.exists_deterministic_preserving_mass line 746

    Source documentation

    One label per vertex preserves every row's mass and can only improve the nonnegative weighted squared image under any fixed linear map. In particular, the same theorem applies separately at each coordinate of a vector-valued assignment; no product or independence property of those coordinates is used.

    theorem exists_deterministic_preserving_mass [Nonempty A]
        (h : V → A → ℝ) (hh : ∀ v a, 0 ≤ h v a)
        (w : T → ℝ) (hw : ∀ t, 0 ≤ w t) (c : T → V → A → ℝ) :
        ∃ labels : V → A,
          (∑ t, w t * (∑ v, ∑ a, c t v a * h v a) ^ 2) ≤
            ∑ t, w t * (∑ v, c t v (labels v) * rowMass h v) ^ 2 := by
    …

    Mentions: OAI.UniqueGamesTheorem.Repetition.rowMass

  61. theorem OAI.UniqueGamesTheorem.Repetition.exists_deterministic_vector line 794

    Source documentation

    The same conclusion stated directly as a deterministic nonnegative vector. Its row masses are exactly those of the original vector.

    theorem exists_deterministic_vector [Nonempty A] [DecidableEq A]
        (h : V → A → ℝ) (hh : ∀ v a, 0 ≤ h v a)
        (w : T → ℝ) (hw : ∀ t, 0 ≤ w t) (c : T → V → A → ℝ) :
        ∃ labels : V → A,
          (∀ v a, 0 ≤ deterministicVector h labels v a) ∧
          (∀ v, rowMass (deterministicVector h labels) v = rowMass h v) ∧
          (∑ t, w t * (∑ v, ∑ a, c t v a * h v a) ^ 2) ≤
            ∑ t, w t * (∑ v, ∑ a, c t v a * deterministicVector h labels v a) ^ 2 := by
    …

    Mentions: OAI.UniqueGamesTheorem.Repetition.deterministicVector, OAI.UniqueGamesTheorem.Repetition.rowMass