Theorem: IsCyclotomicExtension.Rat.five_pid
File: Mathlib/NumberTheory/Cyclotomic/PID.lean

tactic: apply RingOfIntegers.isPrincipalIdealRing_of_abs_discr_lt
state_before: K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ IsPrincipalIdealRing (𝓞 K)
state_after: case h
K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ ↑|discr K| <
    (2 * (π / 4) ^ NrComplexPlaces K *
        (↑(FiniteDimensional.finrank ℚ K) ^ FiniteDimensional.finrank ℚ K / ↑(FiniteDimensional.finrank ℚ K)!)) ^
      2

tactic: rw [absdiscr_prime 5 K, IsCyclotomicExtension.finrank (n := 5) K
  (irreducible_rat (by norm_num)), nrComplexPlaces_eq_totient_div_two 5, totient_prime
    PNat.prime_five]
state_before: case h
K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ ↑|discr K| <
    (2 * (π / 4) ^ NrComplexPlaces K *
        (↑(FiniteDimensional.finrank ℚ K) ^ FiniteDimensional.finrank ℚ K / ↑(FiniteDimensional.finrank ℚ K)!)) ^
      2
state_after: case h
K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ ↑|(-1) ^ ((↑5 - 1) / 2) * ↑↑5 ^ (↑5 - 2)| < (2 * (π / 4) ^ ((↑5 - 1) / 2) * (↑(↑5 - 1) ^ (↑5 - 1) / ↑(↑5 - 1)!)) ^ 2

tactic: simp only [Int.reduceNeg, PNat.val_ofNat, succ_sub_succ_eq_sub, tsub_zero, reduceDiv, even_two,
  Even.neg_pow, one_pow, cast_ofNat, Int.reducePow, one_mul, Int.cast_abs, Int.cast_ofNat,
  div_pow, gt_iff_lt, show 4! = 24 by rfl, abs_of_pos (show (0 : ℝ) < 125 by norm_num)]
state_before: case h
K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ ↑|(-1) ^ ((↑5 - 1) / 2) * ↑↑5 ^ (↑5 - 2)| < (2 * (π / 4) ^ ((↑5 - 1) / 2) * (↑(↑5 - 1) ^ (↑5 - 1) / ↑(↑5 - 1)!)) ^ 2
state_after: case h
K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ 125 < (2 * (π ^ 2 / 4 ^ 2) * (4 ^ 4 / 24)) ^ 2

tactic: suffices (2 * (3 ^ 2 / 4 ^ 2) * (4 ^ 4 / 24)) ^ 2 < (2 * (π ^ 2 / 4 ^ 2) * (4 ^ 4 / 24)) ^ 2 from
  lt_trans (by norm_num) this
state_before: case h
K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ 125 < (2 * (π ^ 2 / 4 ^ 2) * (4 ^ 4 / 24)) ^ 2
state_after: case h
K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ (2 * (3 ^ 2 / 4 ^ 2) * (4 ^ 4 / 24)) ^ 2 < (2 * (π ^ 2 / 4 ^ 2) * (4 ^ 4 / 24)) ^ 2

tactic: gcongr
state_before: case h
K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ (2 * (3 ^ 2 / 4 ^ 2) * (4 ^ 4 / 24)) ^ 2 < (2 * (π ^ 2 / 4 ^ 2) * (4 ^ 4 / 24)) ^ 2
state_after: case h.h.bc.bc.h.h
K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ 3 < π

tactic: exact pi_gt_three
state_before: case h.h.bc.bc.h.h
K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ 3 < π
state_after: no goals

tactic: norm_num
state_before: K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ 0 < ↑5
state_after: no goals

tactic: rfl
state_before: K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ 4! = 24
state_after: no goals

tactic: norm_num
state_before: K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
⊢ 0 < 125
state_after: no goals

tactic: norm_num
state_before: K : Type u
inst✝² : Field K
inst✝¹ : NumberField K
inst✝ : IsCyclotomicExtension {5} ℚ K
this : (2 * (3 ^ 2 / 4 ^ 2) * (4 ^ 4 / 24)) ^ 2 < (2 * (π ^ 2 / 4 ^ 2) * (4 ^ 4 / 24)) ^ 2
⊢ 125 < (2 * (3 ^ 2 / 4 ^ 2) * (4 ^ 4 / 24)) ^ 2
state_after: no goals