Documentation

MathlibNt.SieveTheory.Switching.BoundaryChainIntegrals

Boundary-chain tails and recursive integrals #

Reversed finite Rosser chains embed into alternating-pair iterates. Uniform absolute tails and inner/outer Darboux comparisons connect their fixed-depth densities to continuous boundary-mass integrals.

All declarations retain the MathlibNt.SieveTheory.SwitchingPrinciple namespace.

The finite carrier generated by the reverse Rosser-pair recursion. Lists are stored in reverse order, so the innermost pair is visible at the head.

Equations
Instances For

    The exact even-suffix inequalities carried by a reverse-built chain, at the current terminal prime and adaptive state.

    Equations
    Instances For
      theorem MathlibNt.SieveTheory.SwitchingPrinciple.reverse_mem_upperRosserAlternatingPairDiscreteChains {z r : } {q k : } {P : Finset } {l : List } (hz : 1 < z) (hq : Nat.Prime q) (hP : pl, p P) (hprime : pP, Nat.Prime p) (hqP : pP, q < p) (hsorted : l.SortedGT) (hlen : l.length = 2 * k) (hsuffix : UpperRosserEvenSuffixCondition z q r l) :

      Exact alternating-prefix inequalities embed a decreasing chain, reversed, in the adaptive pair carrier. Thus every inherited screen and cutoff is retained at every recursive pair.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.sum_upperRosserAlternatingPairDiscreteChains_le_iterate (w : ) {k q : } {r : } {P : Finset } (hr : 3 r) (hq : Nat.Prime q) (hP : pP, Nat.Prime p) (hqP : pP, q < p) (hw : pP, 0 w p) :

      The weighted reverse-chain carrier is bounded by the existing adaptive pair iterate. Nonnegativity permits enlargement to every admissible pair at each stage.

      Every actual boundary chain of depth 2k lies in the reverse-pair carrier. This is the bridge from the natural Rosser cutoff to the adaptive discrete iterate; it uses every even-prefix inequality through its suffix form.

      The reverse-pair carrier dominates the fixed-depth boundary density for any nonnegative ambient weight. This weight-generic form is what permits the same geometric carrier to be used before or after Euler normalization.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.upperRosserBoundaryChainsFixedDepthDensity_le_alternatingPairDiscreteIterate {S : BoundingSieve} {z Δ s : } {q k : } (hz : 2 z) ( : 0 < Δ) (hs : s = Real.log Δ / Real.log z) (hcut : pS.prodPrimes.primeFactors, p z) (hq : q S.prodPrimes.primeFactors) :
      LinearSieve.upperRosserBoundaryChainsFixedDepthDensity (fun (p : ) => S.nu p / (1 - S.nu p)) (Δ⌋₊ + 1) q ({pS.prodPrimes.primeFactors | q < p}) k upperRosserAlternatingPairDiscreteIterate (fun (p : ) => S.nu p / (1 - S.nu p)) k q 3 ({pS.prodPrimes.primeFactors | q < p})

      The actual normalized fixed-depth boundary-chain density is dominated by the reverse-pair iterate. No unordered or factorial majorant is used: the injection reverses each canonical chain and preserves its monomial exactly.

      The actual fixed-depth boundary density on the relative Euler-product scale is dominated by the relative adaptive reverse-pair state. This is the exact embedding needed before proving a contraction that preserves the sieve product.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserBoundaryChainsFixedDepthDensity_eventually_geometric (K : ) (hK : 1 K) :
      ∃ (N : ) (C : ), 0 C ∀ (S : BoundingSieve) (k q : ) (z Δ s : ), 2 z0 < Δs = Real.log Δ / Real.log zHasDimensionOneLocalProductBound S K(∀ pS.prodPrimes.primeFactors, p z)q S.prodPrimes.primeFactorsLinearSieve.upperRosserBoundaryChainsFixedDepthDensity (fun (p : ) => S.nu p / (1 - S.nu p)) (Δ⌋₊ + 1) q ({pS.prodPrimes.primeFactors | q < p}) (k + N) 9 * C * (9 / 10) ^ k

      The geometric reverse-pair estimate applies to the actual normalized boundary-chain density, uniformly in the level, sieve, and terminal prime.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserBoundaryChainsFixedDepthDensity_uniform_tail (K : ) (hK : 1 K) :
      ∃ (N : ) (τ : ), Filter.Tendsto τ Filter.atTop (nhds 0) ∀ (S : BoundingSieve) (L n q : ) (z Δ s : ), 2 z0 < Δs = Real.log Δ / Real.log zHasDimensionOneLocalProductBound S K(∀ pS.prodPrimes.primeFactors, p z)q S.prodPrimes.primeFactorsjFinset.range n, LinearSieve.upperRosserBoundaryChainsFixedDepthDensity (fun (p : ) => S.nu p / (1 - S.nu p)) (Δ⌋₊ + 1) q ({pS.prodPrimes.primeFactors | q < p}) (L + j + N) τ L

      A genuine uniform tail function for the actual normalized boundary-chain density at each terminal prime. The offset is the finite number of coarse steps, and the displayed envelope tends to zero independently of all sieve parameters.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserBoundaryChainsFixedDepthDensity_uniform_tail_lt (K ρ : ) (hK : 1 K) ( : 0 < ρ) :
      ∃ (N : ) (L : ), ∀ (S : BoundingSieve) (n q : ) (z Δ s : ), 2 z0 < Δs = Real.log Δ / Real.log zHasDimensionOneLocalProductBound S K(∀ pS.prodPrimes.primeFactors, p z)q S.prodPrimes.primeFactorsjFinset.range n, LinearSieve.upperRosserBoundaryChainsFixedDepthDensity (fun (p : ) => S.nu p / (1 - S.nu p)) (Δ⌋₊ + 1) q ({pS.prodPrimes.primeFactors | q < p}) (L + j + N) < ρ

      Equivalently, after one uniform pair-depth cutoff, every finite remaining block of the actual normalized boundary-chain density is smaller than a prescribed error.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.normalizedBoundaryTail_mul_eulerProduct_eq_orderedMass {P : Finset } {q : } {f : } (hq : q P) (hfactor : pP, 1 - f p 0) (A : ) :
      f q / (1 - f q) * (A / pP with q < p, (1 - f p)) * pP, (1 - f p) = (f q * pP with p < q, (1 - f p)) * A

      Multiplication by the complete Euler product cancels the normalized denominators above a distinguished prime. What remains is its density times the product of the factors at all earlier primes.

      A sieve density is bounded by its normalized Euler increment.

      The ordered masses left after exact Euler cancellation have total at most one. This is the finite telescoping identity behind the global Rosser tail.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserBoundaryChains_global_uniform_absolute_tail (K : ) (hK : 1 K) :
      ∃ (N : ) (τ : ), Filter.Tendsto τ Filter.atTop (nhds 0) (∀ (L : ), 0 τ L) ∀ (S : BoundingSieve) (L n : ) (z Δ s : ), 2 z0 < Δs = Real.log Δ / Real.log zHasDimensionOneLocalProductBound S K(∀ pS.prodPrimes.primeFactors, p z)(∑ qS.prodPrimes.primeFactors, S.nu q / (1 - S.nu q) * ((∑ jFinset.range n, LinearSieve.upperRosserBoundaryChainsFixedDepthDensity (⇑S.nu) (Δ⌋₊ + 1) q ({pS.prodPrimes.primeFactors | q < p}) (L + j + N)) / pS.prodPrimes.primeFactors with q < p, (1 - S.nu p))) * pS.prodPrimes.primeFactors, (1 - S.nu p) τ L

      After exact cancellation of the skipped Euler factors, the geometric reverse-pair estimate gives a uniform absolute tail for the complete outer-prime sum. Unlike a pointwise terminal-prime estimate, this bound is summable because the remaining ordered terminal masses telescope to at most one. The bound is absolute; it does not contain an additional full Euler-product factor.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.integral_screened_upperRosserBoundaryMassAux_succ_le (k : ) {c s a r w : } (hc : 0 < c) (hca : c a) (har : a r) (hr : r 1) (hw : 0 w) :
      ( (x : ) in Set.Ioo c 1, x⁻¹ * if x < r + w then LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - r - x) a x else 0) ( (x : ) in Set.Ioo a r, x⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - r - x) a x) + c⁻¹ * (c⁻¹ * c⁻¹) ^ (k + 1) * w

      Removing a one-cell thickening from the inherited upper face costs at most its width times the uniform screened integrand bound.

      The fixed-depth inner Darboux sum is bounded by the exact inner integral in the Rosser recursion. The extra term is the cost of deleting the one-cell thickening used to absorb the ordered-prime boundary.

      On a sufficiently fine fixed mesh, the inner Rosser integral based at the cell's lower endpoint is uniformly approximated from above by the integral based at the true cutoff anywhere in that cell.

      The positive-depth inner Darboux sum is bounded by the exact recursive integral at the true distinguished-prime cutoff. This simultaneously removes the ordered-prime screen thickening and the cellwise lower-cutoff displacement.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserFixedDepthMesh_correctedInnerDarboux_succ_le_trueIntegral_add (k : ) {K s₀ s₁ c ε η ρ B : } (hK : 0 K) (hc : 0 < c) (hc1 : c < 1) ( : 0 ε) ( : 0 < η) ( : 0 < ρ) (hB : 0 B) :

      The inner successor estimate with its local-product correction included. The cutoff is uniform over the compact residual range and every distinguished prime in its mesh cell.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserFixedDepthMesh_outerDarboux_succ_le_integral_add (k : ) {s₀ s₁ a ε : } (ha : 0 < a) (ha1 : a < 1) ( : 0 < ε) :
      ∃ (N : ), ∀ (m : ), N msSet.Icc s₀ s₁, j : Fin (m + 1), ( (x₁ : ) in Set.Ioo a (upperRosserFixedDepthMeshRight a m j), x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - upperRosserFixedDepthMeshRight a m j - x₁) a x₁) * (upperRosserFixedDepthMeshRight a m j / upperRosserFixedDepthMeshLeft a m j - 1) ( (x₀ : ) in Set.Ioo a 1, x₀⁻¹ * (x₁ : ) in Set.Ioo a x₀, x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - x₀ - x₁) a x₁) + ε / a + a⁻¹ * (a⁻¹ * a⁻¹) ^ (k + 1) * upperRosserFixedDepthMeshWidth a m / a ^ 2

      A sufficiently fine fixed mesh turns the exact positive-depth inner integrals at its right endpoints into an outer Darboux sum. The estimate is uniform over a compact interval of residual levels.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserFixedDepthMesh_outerDarboux_succ_movingLower_le_integral_add (k : ) {s₀ s₁ c ε : } (hc : 0 < c) (hc1 : c < 1) ( : 0 < ε) :
      ∃ (N : ), ∀ (m : ), N msSet.Icc s₀ s₁, aSet.Icc c 1, j : Fin (m + 1), ( (x₁ : ) in Set.Ioo a (upperRosserFixedDepthMeshRight c m j), x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - upperRosserFixedDepthMeshRight c m j - x₁) a x₁) * (upperRosserFixedDepthMeshRight c m j / upperRosserFixedDepthMeshLeft c m j - 1) ( (x₀ : ) in Set.Ioo c 1, x₀⁻¹ * (x₁ : ) in Set.Ioo a x₀, x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - x₀ - x₁) a x₁) + ε / c + c⁻¹ * (c⁻¹ * c⁻¹) ^ (k + 1) * upperRosserFixedDepthMeshWidth c m / c ^ 2

      A fixed mesh based at a uniform support cutoff also controls inner Rosser integrals whose actual lower cutoff varies above it. The crossing cell is covered by the global outer-endpoint modulus.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserFixedDepthMesh_screenedOuterDarboux_succ_movingLower_le_integral_add (k : ) {s₀ s₁ c ε : } (hc : 0 < c) (hc1 : c < 1) ( : 0 < ε) :
      ∃ (N : ), ∀ (m : ), N msSet.Icc s₀ s₁, aSet.Icc c 1, ∀ (r w : ), j : Fin (m + 1), (if upperRosserFixedDepthMeshRight c m j r + w then (x₁ : ) in Set.Ioo a (upperRosserFixedDepthMeshRight c m j), x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - upperRosserFixedDepthMeshRight c m j - x₁) a x₁ else 0) * (upperRosserFixedDepthMeshRight c m j / upperRosserFixedDepthMeshLeft c m j - 1) ( (x₀ : ) in Set.Ioo c 1, x₀⁻¹ * if x₀ < r + w then (x₁ : ) in Set.Ioo a x₀, x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - x₀ - x₁) a x₁ else 0) + ε / c + c⁻¹ * (c⁻¹ * c⁻¹) ^ (k + 1) * upperRosserFixedDepthMeshWidth c m / c ^ 2

      A fixed mesh based at a uniform support cutoff controls the screened outer Rosser sum even when the true lower cutoff varies above the mesh base. Both the lower cutoff and the moving upper screen are retained for recursive use.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserFixedDepthMesh_screenedOuterDarboux_succ_le_integral_add (k : ) {s₀ s₁ a ε : } (ha : 0 < a) (ha1 : a < 1) ( : 0 < ε) :
      ∃ (N : ), ∀ (m : ), N msSet.Icc s₀ s₁, ∀ (r w : ), j : Fin (m + 1), (if upperRosserFixedDepthMeshRight a m j < r + w then (x₁ : ) in Set.Ioo a (upperRosserFixedDepthMeshRight a m j), x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - upperRosserFixedDepthMeshRight a m j - x₁) a x₁ else 0) * (upperRosserFixedDepthMeshRight a m j / upperRosserFixedDepthMeshLeft a m j - 1) ( (x₀ : ) in Set.Ioo a 1, x₀⁻¹ * if x₀ < r + w then (x₁ : ) in Set.Ioo a x₀, x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - x₀ - x₁) a x₁ else 0) + ε / a + a⁻¹ * (a⁻¹ * a⁻¹) ^ (k + 1) * upperRosserFixedDepthMeshWidth a m / a ^ 2

      The outer positive-depth Darboux estimate remains uniform after imposing a moving upper screen. Right-endpoint evaluation makes the discontinuity one-sided: an active mesh endpoint forces its whole open cell to be active.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.integral_screened_outerRosserBoundaryMassAux_succ_le_massAux (k : ) {s a b r w : } (ha : 0 < a) (har : a r) (hb1 : b 1) (hw : 0 w) (hr : r = min b (s / 3)) :
      ( (x₀ : ) in Set.Ioo a 1, x₀⁻¹ * if x₀ < r + w then (x₁ : ) in Set.Ioo a x₀, x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - x₀ - x₁) a x₁ else 0) LinearSieve.upperRosserBoundaryMassAux (k + 2) s a b + (a⁻¹ * a⁻¹) ^ (k + 2) * w

      Removing a one-cell thickening from an inherited moving outer Rosser face costs at most the mesh width times the uniform bound for the complete outer integrand. The endpoint b is retained for recursive applications.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.integral_screened_outerRosserBoundaryMassAux_succ_le (k : ) {s a r w : } (ha : 0 < a) (har : a r) (_hr1 : r 1) (hw : 0 w) (hr : r = min 1 (s / 3)) :
      ( (x₀ : ) in Set.Ioo a 1, x₀⁻¹ * if x₀ < r + w then (x₁ : ) in Set.Ioo a x₀, x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - x₀ - x₁) a x₁ else 0) LinearSieve.upperRosserBoundaryMassAux (k + 2) s a 1 + (a⁻¹ * a⁻¹) ^ (k + 2) * w

      Removing the one-cell thickening from the global moving outer Rosser face costs at most the mesh width times the uniform bound for the complete outer integrand.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserFixedDepthMesh_screenedOuterDarboux_succ_movingLower_le_massAux_add (k : ) {s₀ s₁ c ε : } (hc : 0 < c) (hc1 : c < 1) ( : 0 < ε) :
      ∃ (N : ), ∀ (m : ), N msSet.Icc s₀ s₁, aSet.Icc c 1, b1, a min b (s / 3)j : Fin (m + 1), (if upperRosserFixedDepthMeshRight c m j min b (s / 3) + upperRosserFixedDepthMeshWidth c m then (x₁ : ) in Set.Ioo a (upperRosserFixedDepthMeshRight c m j), x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - upperRosserFixedDepthMeshRight c m j - x₁) a x₁ else 0) * (upperRosserFixedDepthMeshRight c m j / upperRosserFixedDepthMeshLeft c m j - 1) LinearSieve.upperRosserBoundaryMassAux (k + 2) s a b + (a⁻¹ * a⁻¹) ^ (k + 2) * upperRosserFixedDepthMeshWidth c m + ε / c + c⁻¹ * (c⁻¹ * c⁻¹) ^ (k + 1) * upperRosserFixedDepthMeshWidth c m / c ^ 2

      The moving-lower outer Darboux sum is bounded by the recursive Rosser mass with its inherited upper face. This is the induction-closed outer quadrature: the exact screen is min b (s / 3), while the mesh itself only uses the common positive support cutoff c.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserFixedDepthMesh_correctedScreenedOuterDarboux_succ_movingLower_le_massAux_add (k : ) {K s₀ s₁ c ε ρ : } (hK : 0 K) (hc : 0 < c) (hc1 : c < 1) ( : 0 < ε) ( : 0 < ρ) :
      ∃ (N : ), ∀ (m : ), N m∃ (z₀ : ), 2 z₀ ∀ (z : ), z₀ zsSet.Icc s₀ s₁, aSet.Icc c 1, b1, a min b (s / 3)j : Fin (m + 1), (if upperRosserFixedDepthMeshRight c m j min b (s / 3) + upperRosserFixedDepthMeshWidth c m then (x₁ : ) in Set.Ioo a (upperRosserFixedDepthMeshRight c m j), x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - upperRosserFixedDepthMeshRight c m j - x₁) a x₁ else 0) * (upperRosserFixedDepthMeshRight c m j / upperRosserFixedDepthMeshLeft c m j * (1 + K / (upperRosserFixedDepthMeshLeft c m j * Real.log z)) - 1) LinearSieve.upperRosserBoundaryMassAux (k + 2) s a b + (a⁻¹ * a⁻¹) ^ (k + 2) * upperRosserFixedDepthMeshWidth c m + ε / c + c⁻¹ * (c⁻¹ * c⁻¹) ^ (k + 1) * upperRosserFixedDepthMeshWidth c m / c ^ 2 + ρ

      Corrected form of the induction-closed outer quadrature. The local-product correction is absorbed uniformly while both the true lower cutoff and inherited upper face remain variable.

      The screened outer Darboux sum is bounded directly by the next continuous Rosser mass, with explicit losses for the one-cell moving-face thickening and for right-endpoint quadrature.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_upperRosserFixedDepthMesh_correctedScreenedOuterDarboux_succ_le_mass_add (k : ) {K s₀ s₁ a ε ρ : } (hK : 0 K) (ha : 0 < a) (ha1 : a < 1) ( : 0 < ε) ( : 0 < ρ) :
      ∃ (N : ), ∀ (m : ), N m∃ (z₀ : ), 2 z₀ ∀ (z : ), z₀ zsSet.Icc s₀ s₁, a min 1 (s / 3)j : Fin (m + 1), (if upperRosserFixedDepthMeshRight a m j < min 1 (s / 3) + upperRosserFixedDepthMeshWidth a m then (x₁ : ) in Set.Ioo a (upperRosserFixedDepthMeshRight a m j), x₁⁻¹ * LinearSieve.upperRosserBoundaryMassAux (k + 1) (s - upperRosserFixedDepthMeshRight a m j - x₁) a x₁ else 0) * (upperRosserFixedDepthMeshRight a m j / upperRosserFixedDepthMeshLeft a m j * (1 + K / (upperRosserFixedDepthMeshLeft a m j * Real.log z)) - 1) LinearSieve.upperRosserBoundaryMassAux (k + 2) s a 1 + (a⁻¹ * a⁻¹) ^ (k + 2) * upperRosserFixedDepthMeshWidth a m + ε / a + a⁻¹ * (a⁻¹ * a⁻¹) ^ (k + 1) * upperRosserFixedDepthMeshWidth a m / a ^ 2 + ρ

      The complete corrected outer mesh sum is bounded by the next continuous Rosser mass. Both the local-product correction and the moving-face cell are absorbed into explicit errors.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_sum_nu_div_one_sub_mul_upperRosserBoundaryMassAux_zero_le_logKernel_add_screened (K ρ c : ) (hK : 1 K) ( : 0 < ρ) (hc : 0 < c) (hc1 : c < 1) :
      ∃ (z₀ : ), 2 z₀ ∀ (S : BoundingSieve) (z s x₀ a : ) (T : Finset ), z₀ zHasDimensionOneLocalProductBound S Kc ax₀ 1TS.prodPrimes.primeFactors(∀ pT, a < Real.log p / Real.log z Real.log p / Real.log z < x₀)pT, S.nu p / (1 - S.nu p) * LinearSieve.upperRosserBoundaryMassAux 0 (s - x₀ - Real.log p / Real.log z) a (Real.log p / Real.log z) LinearSieve.upperRosserBoundaryLogKernel s a x₀ + ρ

      Uniform inner Stieltjes comparison for the terminal depth-zero residual. After the ordering constraints are imposed, its support is the single moving logarithmic interval defining upperRosserBoundaryLogKernel.

      theorem MathlibNt.SieveTheory.SwitchingPrinciple.exists_sum_nu_div_one_sub_mul_upperRosserBoundaryMassAux_zero_le_logKernel_add (K ρ : ) (hK : 1 K) ( : 0 < ρ) :
      ∃ (z₀ : ), 2 z₀ ∀ (S : BoundingSieve) (z s x₀ a : ) (T : Finset ), z₀ zHasDimensionOneLocalProductBound S K1 / 6 ax₀ 1TS.prodPrimes.primeFactors(∀ pT, a < Real.log p / Real.log z Real.log p / Real.log z < x₀)pT, S.nu p / (1 - S.nu p) * LinearSieve.upperRosserBoundaryMassAux 0 (s - x₀ - Real.log p / Real.log z) a (Real.log p / Real.log z) LinearSieve.upperRosserBoundaryLogKernel s a x₀ + ρ

      Compatibility specialization of the terminal inner comparison to the traditional one-sixth screen.