Documentation

LeanPool.CCDN.Surface.CongruenceFamily

A coherent choice of proper auxiliaries for every finite smooth residue family. The structure stores conclusions of the determinant theorem; its existence is proved from the equation.

The restriction of a family of smooth residues, indexed by the primes of P, to a subset Q ⊆ P.

Equations
Instances For

    The unique family of smooth residues indexed by the empty set of primes.

    Equations
    Instances For

      A choice, for every finite set P of primes and every family r of smooth residues of f modulo the primes of P, of a nonzero integer polynomial that is not divisible by f over ℚ, has degree at most A (B^(1/√d) / ∏ p + 1)(1 + log B + ∑ log p) (with d the degree of f and p ranging over P) and vanishes at every integer zero of f in the box of radius B lying in the residue classes r.

      Instances For
        theorem CCDN.exists_surface_congruence_family (f : MvPolynomial (Fin 3) ℤ) (hir : AbsolutelyIrreducible f) (hd : 0 < f.totalDegree) {K H B : ℝ} (hK : 0 ≤ K) (hH : 1 ≤ H) (hB : 1 ≤ B) (hcoeff : CoefficientHeightLE f H) (hheight : Real.log H ≤ K * (Real.log B + 1)) :

        An absolutely irreducible integer surface equation f of positive degree, whose coefficient height H satisfies log H ≤ K (log B + 1), admits a congruence family of auxiliaries with degree constant surfaceCongruenceDegreeConstant d K, where d is the degree of f.

        The auxiliary polynomial of a congruence family attached to the empty set of primes: it vanishes at every integer zero of f in the box.

        Equations
        Instances For

          The auxiliary attached to the empty set of primes is F.initial, whatever the (unique) residue family and primality proof.

          The initial auxiliary F.initial vanishes at every integer zero of f in the box of radius B.

          theorem CCDN.SurfaceCongruenceFamily.point_vanishes {f : MvPolynomial (Fin 3) ℤ} {B A : ℝ} (F : SurfaceCongruenceFamily f B A) (x : IntPoint 3) (hx : InBox x B) (hxf : (MvPolynomial.eval x) f = 0) (P : Finset ℕ) (hP : ∀ p ∈ P, Nat.Prime p) (hs : ∀ p ∈ P, ∃ (j : Fin 3), (MvPolynomial.eval fun (i : Fin 3) => ↑(x i)) ((MvPolynomial.pderiv j) ((MvPolynomial.map (Int.castRingHom (ZMod p))) f)) ≠ 0) :

          If an integer zero x of f in the box is a smooth point of f modulo every prime of P, then the auxiliary attached to P and to the residues of x vanishes at x.