Documentation

LeanPool.CCDN.ArithmeticHeights.ProductOfBalls

The slice bound for a product of balls of volume one #

Bombieri–Gubler, Lemma C.3.7. Partition the coordinates of ι → ℝ into blocks by a map blk : ι → κ, and let prodBallPi blk be the product over the blocks of the euclidean ball of volume one in that block's coordinates. Then for every measurable convex symmetric A, the Gauss measure of A is at most vol (A ∩ prodBallPi blk).

The induction is on the number of coordinates, splitting off the block of a chosen coordinate; the remaining blocks keep the same label type κ, with one label whose block has become empty — and an empty block imposes no condition, so no re-indexing of the labels is needed.

Main definitions #

Main results #

Implementation notes #

⚠ The induction is on coordinates, not on blocks, and that removes all re-indexing. Splitting off the block of one coordinate leaves a smaller coordinate set with the same label type; the label just peeled off now has an empty block, and the condition attached to an empty block — 0 ≤ ballRadius 0 ^ 2 — is vacuous. Inducting on the number of blocks instead would force the labels to be renumbered at every step.

⚠ The radius is indexed by the cardinality of the block, not by the block. ballRadius n is the radius of the ball of volume one in EuclideanSpace ℝ (Fin n); a block is a subtype, and unitVolumeRadius_euclideanSpace identifies its radius with ballRadius of its cardinality. This is the one place where the index type is changed, and it is done once rather than at every step of the induction.

References #

E. Bombieri and W. Gubler, Heights in Diophantine Geometry, Cambridge University Press (2006), Lemma C.3.7.

This is Layer 4.5 (infrastructure) of the ArithmeticHeights roadmap.

noncomputable def gaussPi {ι : Type u_1} [Fintype ι] (x : ι → ℝ) :

The Gauss density on ι → ℝ for the euclidean norm.

Equations
Instances For
    theorem gaussPi_le_one {ι : Type u_1} [Fintype ι] (x : ι → ℝ) :
    theorem gaussPi_neg {ι : Type u_1} [Fintype ι] (x : ι → ℝ) :
    theorem gaussPi_eq_gaussDensity {ι : Type u_1} [Fintype ι] (x : ι → ℝ) :

    The Gauss density is log-concave: the quadratic form ∑ x i ^ 2 is convex.

    noncomputable def ballRadius (n : ℕ) :

    The radius of the ball of volume one in n dimensions: Bombieri–Gubler's ρ(n).

    Equations
    Instances For
      theorem hasSliceBound_ballPi (α : Type u_1) [Fintype α] :

      The slice bound for a single block: the ball of volume one in α → ℝ.

      theorem hasSliceBound_univ_of_le_one {E : Type u_1} [MeasurableSpace E] [AddCommGroup E] [Module ℝ E] {μ : MeasureTheory.Measure E} {g : E → ENNReal} (hg : ∀ (x : E), g x ≤ 1) {Q : Set E} (hQ : ∀ (x : E), x ∈ Q) :
      theorem convex_setOf_sum_sq_le {ι : Type u_1} {S : Type u_2} [Fintype S] (f : S → ι) (c : ℝ) :
      Convex ℝ {x : ι → ℝ | ∑ j : S, x (f j) ^ 2 ≤ c}
      theorem measurableSet_setOf_sum_sq_le {ι : Type u_1} {S : Type u_2} [Fintype S] (f : S → ι) (c : ℝ) :
      MeasurableSet {x : ι → ℝ | ∑ j : S, x (f j) ^ 2 ≤ c}
      theorem neg_mem_setOf_sum_sq_le {ι : Type u_1} {S : Type u_2} [Fintype S] (f : S → ι) (c : ℝ) {x : ι → ℝ} (hx : x ∈ {x : ι → ℝ | ∑ j : S, x (f j) ^ 2 ≤ c}) :
      -x ∈ {x : ι → ℝ | ∑ j : S, x (f j) ^ 2 ≤ c}
      def prodBallPi {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq κ] (blk : ι → κ) :
      Set (ι → ℝ)

      The product over the blocks of blk of the euclidean ball of volume one in that block's coordinates: Bombieri–Gubler's Q_N = B_{ρ(n₁)} × ⋯ × B_{ρ(n_r)}.

      Equations
      Instances For
        theorem prodBallPi_eq_iInter {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq κ] (blk : ι → κ) :
        prodBallPi blk = ⋂ (k : κ), {x : ι → ℝ | ∑ j : { j : ι // blk j = k }, x ↑j ^ 2 ≤ ballRadius (Fintype.card { j : ι // blk j = k }) ^ 2}
        theorem measurableSet_prodBallPi {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq κ] [Countable κ] (blk : ι → κ) :
        theorem convex_prodBallPi {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq κ] (blk : ι → κ) :
        theorem neg_mem_prodBallPi {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq κ] (blk : ι → κ) {x : ι → ℝ} (hx : x ∈ prodBallPi blk) :

        Prékopa–Leindler on EuclideanSpace ℝ α for an arbitrary finite index type.

        Prékopa–Leindler on α → ℝ for an arbitrary finite index type.

        Prékopa–Leindler on a finite-dimensional real inner product space.

        theorem hasSliceBound_prodBallPi {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq κ] [Countable κ] (blk : ι → κ) :

        Bombieri–Gubler, Lemma C.3.7: the Gauss measure of a measurable convex symmetric set is at most its volume inside a product of euclidean balls of volume one.

        def prodBall {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq κ] (blk : ι → κ) :

        The product of balls of volume one, in EuclideanSpace ℝ ι.

        Equations
        Instances For
          theorem prodBall_eq_preimage {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq κ] (blk : ι → κ) :
          theorem measurableSet_prodBall {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq κ] [Countable κ] (blk : ι → κ) :
          theorem convex_prodBall {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq κ] (blk : ι → κ) :
          theorem neg_mem_prodBall {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq κ] (blk : ι → κ) {x : EuclideanSpace ℝ ι} (hx : x ∈ prodBall blk) :
          theorem hasSliceBound_prodBall {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq κ] [Countable κ] (blk : ι → κ) :

          Bombieri–Gubler, Lemma C.3.7 on EuclideanSpace ℝ ι.