@@ -88,7 +88,7 @@ private theorem smoothingSeminormSeq_tendsto_aux {L : ℝ} (hL : 0 ≤ L) {ε :
8888theorem zero_mem_lowerBounds_smoothingSeminormSeq_range (x : R) :
8989 0 ∈ lowerBounds (Set.range fun n : ℕ+ => μ (x ^ (n : ℕ)) ^ (1 / (n : ℝ))) := by
9090 rintro y ⟨n, rfl⟩
91- exact rpow_nonneg (apply_nonneg μ _) _
91+ positivity
9292
9393/-- `smoothingSeminormSeq` is bounded below (by zero). -/
9494theorem smoothingSeminormSeq_bddBelow (x : R) :
@@ -111,15 +111,15 @@ theorem tendsto_smoothingFun_of_eq_zero {x : R} (hx : μ x = 0) :
111111 have hL0 : (iInf fun n : PNat => μ (x ^ (n : ℕ)) ^ (1 / (n : ℝ))) = 0 :=
112112 le_antisymm
113113 (ciInf_le_of_le (smoothingSeminormSeq_bddBelow μ x) (1 : PNat) (le_of_eq (h0 1 (le_refl _))))
114- (le_ciInf fun n => rpow_nonneg (apply_nonneg μ _) _ )
114+ (le_ciInf fun n ↦ by positivity )
115115 simpa only [hL0] using tendsto_atTop_of_eventually_const h0
116116
117117/-- If `μ 1 ≤ 1` and `μ x ≠ 0`, then `smoothingFun μ x` is the limit of
118118`smoothingSeminormSeq μ x`. -/
119119theorem tendsto_smoothingFun_of_ne_zero (hμ1 : μ 1 ≤ 1 ) {x : R} (hx : μ x ≠ 0 ) :
120120 Tendsto (smoothingSeminormSeq μ x) atTop (𝓝 (smoothingFun μ x)) := by
121121 let L := iInf fun n : PNat => μ (x ^ (n : ℕ)) ^ (1 / (n : ℝ))
122- have hL0 : 0 ≤ L := le_ciInf fun x => rpow_nonneg (apply_nonneg _ _) _
122+ have hL0 : 0 ≤ L := le_ciInf fun x ↦ by positivity
123123 rw [Metric.tendsto_atTop]
124124 intro ε hε
125125 /- For each `ε > 0`, we can find a positive natural number `m1` such that
@@ -247,7 +247,7 @@ theorem tendsto_smoothingFun_of_map_one_le_one (hμ1 : μ 1 ≤ 1) (x : R) :
247247/-- If `μ 1 ≤ 1`, then `smoothingFun μ x` is nonnegative. -/
248248theorem smoothingFun_nonneg (hμ1 : μ 1 ≤ 1 ) (x : R) : 0 ≤ smoothingFun μ x := by
249249 apply ge_of_tendsto (tendsto_smoothingFun_of_map_one_le_one μ hμ1 x)
250- simpa [eventually_atTop, ge_iff_le] using ⟨1 , fun _ _ ↦ rpow_nonneg (apply_nonneg μ _) _ ⟩
250+ simpa [eventually_atTop, ge_iff_le] using ⟨1 , fun _ _ ↦ by positivity ⟩
251251
252252/-- If `μ 1 ≤ 1`, then `smoothingFun μ 1 ≤ 1`. -/
253253theorem smoothingFun_one_le (hμ1 : μ 1 ≤ 1 ) : smoothingFun μ 1 ≤ 1 := by
@@ -398,7 +398,7 @@ private theorem limsup_mu_le (hμ1 : μ 1 ≤ 1) {s : ℕ → ℕ} (hs_le : ∀
398398 · use 0
399399 simp only [mem_lowerBounds, eventually_map, eventually_atTop, ge_iff_le,
400400 Set.mem_setOf_eq, forall_exists_index]
401- exact fun _ m hm ↦ le_trans (rpow_nonneg (apply_nonneg μ _) _ ) (hm m (le_refl _))
401+ exact fun _ m hm ↦ le_trans (by positivity ) (hm m (le_refl _))
402402 _ ≤ 1 := (μ_limsup_le_one μ hs_le hψ_lim)
403403 _ = smoothingFun μ x ^ a := by rw [ha, rpow_zero]
404404 · have ha_pos : 0 < a := lt_of_le_of_ne a_in.1 (Ne.symm ha)
@@ -465,15 +465,14 @@ theorem isNonarchimedean_smoothingFun (hμ1 : μ 1 ≤ 1) (hna : IsNonarchimedea
465465 limsup (fun n : ℕ => μ (x ^ mu (ψ n)) ^ (1 / (ψ n : ℝ)) * μ (y ^ nu (ψ n)) ^ (1 / (ψ n : ℝ)))
466466 atTop ≤ limsup (fun n : ℕ => μ (x ^ mu (ψ n)) ^ (1 / (ψ n : ℝ))) atTop *
467467 limsup (fun n : ℕ => μ (y ^ nu (ψ n)) ^ (1 / (ψ n : ℝ))) atTop :=
468- limsup_mul_le (Frequently.of_forall (fun n => rpow_nonneg (apply_nonneg _ _) _ ))
468+ limsup_mul_le (Frequently.of_forall (fun n ↦ by positivity ))
469469 (μ_bddAbove μ hμ1 hmu_le x ψ).isBoundedUnder_of_range
470- (Eventually.of_forall (fun n => rpow_nonneg (apply_nonneg _ _) _ ))
470+ (Eventually.of_forall (fun n ↦ by positivity ))
471471 (μ_bddAbove μ hμ1 hnu_le y ψ).isBoundedUnder_of_range
472472 have h_bdd : IsBoundedUnder LE.le atTop fun n : ℕ => μ (y ^ nu (ψ n)) ^ (1 / (ψ n : ℝ)) :=
473473 RingSeminorm.isBoundedUnder μ hμ1 hnu_le ψ
474474 apply le_trans hxy' (mul_le_mul hx hy (le_limsup_of_frequently_le (Frequently.of_forall
475- (fun n ↦ rpow_nonneg (apply_nonneg μ _) _)) h_bdd)
476- (rpow_nonneg (smoothingFun_nonneg μ hμ1 x) _))
475+ (fun n ↦ by positivity)) h_bdd) (rpow_nonneg (smoothingFun_nonneg μ hμ1 x) _))
477476 apply le_of_forall_sub_le
478477 /- Fix `ε > 0`. We first show that `smoothingFun μ x ^ a * smoothingFun μ y ^ b + ε ≤
479478 max (smoothingFun μ x) (smoothingFun μ y) + ε`. -/
@@ -502,8 +501,8 @@ theorem isNonarchimedean_smoothingFun (hμ1 : μ 1 ≤ 1) (hna : IsNonarchimedea
502501 have hex : ∃ n : PNat, μ (x ^ mu (ψ n)) ^ (1 / (ψ n : ℝ)) * μ (y ^ nu (ψ n)) ^ (1 / (ψ n : ℝ)) <
503502 smoothingFun μ x ^ a * smoothingFun μ y ^ b + ε :=
504503 Filter.exists_lt_of_limsup_le (bddAbove_range_mul (μ_bddAbove μ hμ1 hmu_le _ _)
505- (fun n => rpow_nonneg (apply_nonneg _ _) _ ) (μ_bddAbove μ hμ1 hnu_le _ _)
506- fun n => rpow_nonneg (apply_nonneg _ _) _ ).isBoundedUnder_of_range hxy hε
504+ (fun n ↦ by positivity ) (μ_bddAbove μ hμ1 hnu_le _ _)
505+ ( fun n ↦ by positivity) ).isBoundedUnder_of_range hxy hε
507506 obtain ⟨N, hN⟩ := hex
508507 /- By definition of `smoothingFun`, and applying the inequality `hN`, it suffices to show that
509508 `μ ((x + y) ^ ψ N) ^ (1 / ψ N) ≤ μ (x ^ mu (ψ N)) ^ (1 / ψ N) * μ (y ^ nu ψ N) ^ (1 / ψ N)`. -/
0 commit comments