Documentation

MathlibNt.SieveTheory.LinearSieve.Suzuki.SuzukiUpperRosserRelativeFiniteDepth

Finite-depth geometric control of the relative upper Rosser iterate #

The depth-zero state is kept as the exact quotient by the ambient Euler product. The dimension-one local-product estimate is used once, at initialization; later reverse-pair steps are paid by the relative Lyapunov contraction.

theorem MathlibNt.SieveTheory.SwitchingPrinciple.upperRosserAlternatingPairDiscreteRelativeIterate_zero_eq_and_le_localProduct {S : BoundingSieve} {K z r : } {q : } {P : Finset } (hq : Nat.Prime q) (hlocal : HasDimensionOneLocalProductBound S K) (hqz : q z) (hP : PS.prodPrimes.primeFactors) (hqP : pP, q < p) (hzP : pP, p z) :
upperRosserAlternatingPairDiscreteRelativeIterate (⇑S.nu) 0 q r P = r ^ 2 / pP, (1 - S.nu p) upperRosserAlternatingPairDiscreteRelativeIterate (⇑S.nu) 0 q r P r ^ 2 * (Real.log (z + 1) / Real.log (q + 1) * (1 + K / Real.log (q + 1)))

Depth-zero initialization, with the Euler-product denominator displayed before it is paid by the existing local-product bound.

theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserAlternatingPairDiscreteRelativeIterate_finiteDepth_geometric (K : ) (hK : 1 K) :
∃ (Q : ), 2 Q ∀ (S : BoundingSieve) (k q : ) (r z : ) (P : Finset ), Q qNat.Prime qHasDimensionOneLocalProductBound S K3 rq zPS.prodPrimes.primeFactors(∀ pP, q < p)(∀ pP, p z)upperRosserAlternatingPairDiscreteRelativeIterate (⇑S.nu) k q r P 101 / 100 * (Real.log (z + 1) / Real.log (q + 1)) * (9 / 10) ^ k * r ^ 2

Finite-depth geometric estimate for the relative reverse-pair state.

The prefactor is exactly the one-time initialization cost of the depth-zero Euler-product denominator. It is not charged again at recursive depths.

theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserBoundaryChainsFixedDepthRelativeDensity_geometric (K : ) (hK : 1 K) :
∃ (Q : ), 2 Q ∀ (S : BoundingSieve) (k q : ) (z Δ s : ), Q q2 z0 < Δs = Real.log Δ / Real.log zHasDimensionOneLocalProductBound S K(∀ pS.prodPrimes.primeFactors, p z)q S.prodPrimes.primeFactorsLinearSieve.upperRosserBoundaryChainsFixedDepthRelativeDensity (⇑S.nu) (Δ⌋₊ + 1) q ({pS.prodPrimes.primeFactors | q < p}) k 9 * (101 / 100) * (Real.log (z + 1) / Real.log (q + 1)) * (9 / 10) ^ k

Consumer for the actual fixed-depth boundary-chain relative density.

theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserBoundaryChains_finiteRelativeBlock_geometric (K : ) (hK : 1 K) :
∃ (Q : ), 2 Q ∀ (S : BoundingSieve) (L n q : ) (z Δ s : ), Q q2 z0 < Δs = Real.log Δ / Real.log zHasDimensionOneLocalProductBound S K(∀ pS.prodPrimes.primeFactors, p z)q S.prodPrimes.primeFactorsjFinset.range n, LinearSieve.upperRosserBoundaryChainsFixedDepthRelativeDensity (⇑S.nu) (Δ⌋₊ + 1) q ({pS.prodPrimes.primeFactors | q < p}) (L + j) 90 * (101 / 100) * (Real.log (z + 1) / Real.log (q + 1)) * (9 / 10) ^ L

Every finite block of relative boundary layers has a geometric tail bound. The remaining logarithmic prefactor is precisely the one-time depth-zero initialization cost; this statement does not mislabel it as carrier-uniform.