Documentation

Complexitylib.BooleanAnalysis.Sensitivity.Internal.Construction

Sensitivity separation: construction #

Adapted from OpenAI's formalization at revision adc7f1241b42e322a6451854ab7e4b4c146bf78a. Source: https://github.com/openai/math/blob/adc7f1241b42e322a6451854ab7e4b4c146bf78a/lean/OAI/Combinatorics/Sensitivity/Construction.lean

Imports, namespaces, module visibility, documentation, and formatting are adapted for complexitylib. The source theorem statements and mathematical proofs are retained.

Extend the initial Hamming-ball predicates to all index counts.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    @[reducible, inline]

    Coordinates for the regular-tournament construction at a given level.

    Equations
    Instances For

      The single remaining predicate after all recursive levels.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        theorem Complexity.BooleanAnalysis.Sensitivity.Internal.construction_base_blocks (d M : ℕ) (b : Fin M) (q : Fin (1 + d)) :
        constructionBase d M (1 + d) q (flip (fun (x : Fin M × Fin (d + 2)) => false) (baseBlock b)) = true
        theorem Complexity.BooleanAnalysis.Sensitivity.Internal.construction_profiles {M r : ℕ} (d : ℕ) (T : RegularTournament M) (A : GoodLabeling T.toTournament r) (hM : 0 < M) (hr : 0 < r) (hbudget : ↑(max r 16) / ↑M * 3 ^ (d + 1) ≤ 2) (n : ℕ) :
        n ≤ d → towerSide T.toTournament A.label (constructionBase d M) (d + 1) n false ≤ 2 * (d + 2) * M ^ n ∧ towerSide T.toTournament A.label (constructionBase d M) (d + 1) n true ≤ 2 * (d + 2) * M ^ (n + 1)
        theorem Complexity.BooleanAnalysis.Sensitivity.Internal.terminalPredicate_sensitivityAt {M r : ℕ} (d : ℕ) (T : RegularTournament M) (A : GoodLabeling T.toTournament r) (hM : 0 < M) (hr : 0 < r) (hbudget : ↑(max r 16) / ↑M * 3 ^ (d + 1) ≤ 2) :
        (∀ (x : ConstructionCoordinates d M r d → Bool), terminalPredicate d T A x = false → sensitivityAt (terminalPredicate d T A) x ≤ 2 * (d + 2) * M ^ d) ∧ ∀ (x : ConstructionCoordinates d M r d → Bool), terminalPredicate d T A x = true → sensitivityAt (terminalPredicate d T A) x ≤ 2 * (d + 2) * M ^ (d + 1)

        Disjoin M independent copies of the terminal predicate.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          theorem Complexity.BooleanAnalysis.Sensitivity.Internal.finalBoolean_sensitivity {M r : ℕ} (d : ℕ) (T : RegularTournament M) (A : GoodLabeling T.toTournament r) (hM : 0 < M) (hr : 0 < r) (hbudget : ↑(max r 16) / ↑M * 3 ^ (d + 1) ≤ 2) :
          sensitivity (finalBoolean d T A) ≤ 2 * (d + 2) * M ^ (d + 1)

          Number of coordinates of the final Boolean function.

          Equations
          Instances For

            Reindex the final Boolean function onto an ordinary finite Boolean cube.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              theorem Complexity.BooleanAnalysis.Sensitivity.Internal.finalWitness_sensitivity {M r : ℕ} (d : ℕ) (T : RegularTournament M) (A : GoodLabeling T.toTournament r) (hM : 0 < M) (hr : 0 < r) (hbudget : ↑(max r 16) / ↑M * 3 ^ (d + 1) ≤ 2) :
              sensitivity (finalWitness d T A) ≤ 2 * (d + 2) * M ^ (d + 1)