@@ -167,8 +167,6 @@ theorem eval_one_cyclotomic_not_prime_pow {R : Type*} [Ring R] {n : ℕ}
167167 exact Nat.pow_right_injective hp.two_le hxy
168168
169169set_option backward.isDefEq.respectTransparency false in
170- -- Fix the non-terminal simp!
171- set_option linter.flexible false in
172170theorem sub_one_pow_totient_lt_cyclotomic_eval {n : ℕ} {q : ℝ} (hn' : 2 ≤ n) (hq' : 1 < q) :
173171 (q - 1 ) ^ totient n < (cyclotomic n ℝ).eval q := by
174172 have hn : 0 < n := pos_of_gt hn'
@@ -196,9 +194,8 @@ theorem sub_one_pow_totient_lt_cyclotomic_eval {n : ℕ} {q : ℝ} (hn' : 2 ≤
196194 have : ¬eval (↑q) (cyclotomic n ℂ) = 0 := by simpa using (cyclotomic_pos' n hq').ne'
197195 suffices Units.mk0 (Real.toNNReal (q - 1 )) (by simp [hq']) ^ totient n <
198196 Units.mk0 ‖(cyclotomic n ℂ).eval ↑q‖₊ (by simp_all) by
199- simp [← Units.val_lt_val, Units.val_pow_eq_pow_val, Units.val_mk0, ← NNReal.coe_lt_coe,
200- hq'.le, coe_nnnorm, NNReal.coe_pow,
201- Real.coe_toNNReal', sub_nonneg] at this
197+ simp only [← Units.val_lt_val, Units.val_pow_eq_pow_val, Units.val_mk0, ← NNReal.coe_lt_coe,
198+ hq'.le, coe_nnnorm, NNReal.coe_pow, Real.coe_toNNReal', sub_nonneg, sup_of_le_left] at this
202199 convert this
203200 rw [eq_comm]
204201 simp [cyclotomic_nonneg n hq'.le]
@@ -223,8 +220,6 @@ theorem sub_one_pow_totient_le_cyclotomic_eval {q : ℝ} (hq' : 1 < q) :
223220 | _ + 2 => (sub_one_pow_totient_lt_cyclotomic_eval le_add_self hq').le
224221
225222set_option backward.isDefEq.respectTransparency false in
226- -- TODO: non-terminal simps followed by positivity
227- set_option linter.flexible false in
228223theorem cyclotomic_eval_lt_add_one_pow_totient {n : ℕ} {q : ℝ} (hn' : 3 ≤ n) (hq' : 1 < q) :
229224 (cyclotomic n ℝ).eval q < (q + 1 ) ^ totient n := by
230225 have hn : 0 < n := pos_of_gt hn'
@@ -275,7 +270,7 @@ theorem cyclotomic_eval_lt_add_one_pow_totient {n : ℕ} {q : ℝ} (hn' : 3 ≤
275270 simp only [cyclotomic_eq_prod_X_sub_primitiveRoots hζ, eval_prod, eval_C, eval_X, eval_sub,
276271 nnnorm_prod, Units.mk0_prod]
277272 convert Finset.prod_lt_prod' (M := NNRealˣ) _ _
278- swap; · exact fun _ => Units.mk0 (Real.toNNReal (q + 1 )) (by simp; positivity)
273+ swap; · exact fun _ => Units.mk0 (Real.toNNReal (q + 1 )) (by positivity)
279274 · simp [Complex.card_primitiveRoots]
280275 · simp only [Finset.mem_attach, forall_true_left, Subtype.forall, ←
281276 Units.val_le_val, ← NNReal.coe_le_coe, Units.val_mk0,
0 commit comments