Skip to main content
AlexKontorovich/PrimeNumberTheoremAnd
Source indexedlemma · leanprover/lean4:v4.32.0

Erdos392.exists_phi_div_self_lt

PrimeNumberTheoremAnd.IEANTN.Erdos392 · PrimeNumberTheoremAnd/IEANTN/Erdos392.lean:2610 to 2624

Source documentation

For any ε > 0, there exists a ≠ 0 with φ(a)/a < ε.

Exact Lean statement

lemma exists_phi_div_self_lt {ε : ℝ} (hε : 0 < ε) :
    ∃ a : ℕ, a ≠ 0 ∧ (a.totient : ℝ) / a < ε

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
lemma exists_phi_div_self_lt {ε : } (hε : 0 < ε) :     a : , a  0  (a.totient : ) / a < ε := by  obtain n, hn :  n : , ∏ p  filter Prime (range n), (1 - 1 / (p : )) < ε :=    (prod_one_sub_one_div_prime_tendsto_zero.eventually (gt_mem_nhds hε)).exists  use ∏ p  filter Prime (range n), p  rw [totient_eq_div_primeFactors_mul, primeFactors_prod]  · rw [Nat.div_self] <;> norm_num    · rw [ Finset.prod_div_distrib]      refine prod_ne_zero_iff.mpr fun p hp  (mem_filter.mp hp).2.ne_zero, ?_      convert hn using 1      exact prod_congr rfl fun x hx  by        rw [cast_sub <| succ_le_of_lt (mem_filter.mp hx).2.pos]        simp [sub_div, (mem_filter.mp hx).2.ne_zero]    · exact fun _ _ hi'  hi'.pos  · aesop