Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit 78940f4

Browse files
committed
chore(*): use notation ℝ≥0 (#5391)
1 parent 47b3c4b commit 78940f4

25 files changed

+201
-201
lines changed

src/analysis/ODE/gronwall.lean

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ variables {E : Type*} [normed_group E] [normed_space ℝ E]
3232
{F : Type*} [normed_group F] [normed_space ℝ F]
3333

3434
open metric set asymptotics filter real
35-
open_locale classical topological_space
35+
open_locale classical topological_space nnreal
3636

3737
/-! ### Technical lemmas about `gronwall_bound` -/
3838

@@ -178,7 +178,7 @@ people call this Grönwall's inequality too.
178178
179179
This version assumes all inequalities to be true in the whole space. -/
180180
theorem dist_le_of_approx_trajectories_ODE {v : ℝ → E → E}
181-
{K : nnreal} (hv : ∀ t, lipschitz_with K (v t))
181+
{K : ℝ≥0} (hv : ∀ t, lipschitz_with K (v t))
182182
{f g f' g' : ℝ → E} {a b : ℝ} {εf εg δ : ℝ}
183183
(hf : continuous_on f (Icc a b))
184184
(hf' : ∀ t ∈ Ico a b, has_deriv_within_at f (f' t) (Ioi t) t)
@@ -226,7 +226,7 @@ people call this Grönwall's inequality too.
226226
227227
This version assumes all inequalities to be true in the whole space. -/
228228
theorem dist_le_of_trajectories_ODE {v : ℝ → E → E}
229-
{K : nnreal} (hv : ∀ t, lipschitz_with K (v t))
229+
{K : ℝ≥0} (hv : ∀ t, lipschitz_with K (v t))
230230
{f g : ℝ → E} {a b : ℝ} {δ : ℝ}
231231
(hf : continuous_on f (Icc a b))
232232
(hf' : ∀ t ∈ Ico a b, has_deriv_within_at f (v t (f t)) (Ioi t) t)
@@ -262,7 +262,7 @@ end
262262
/-- There exists only one solution of an ODE \(\dot x=v(t, x)\) with
263263
a given initial value provided that RHS is Lipschitz continuous in `x`. -/
264264
theorem ODE_solution_unique {v : ℝ → E → E}
265-
{K : nnreal} (hv : ∀ t, lipschitz_with K (v t))
265+
{K : ℝ≥0} (hv : ∀ t, lipschitz_with K (v t))
266266
{f g : ℝ → E} {a b : ℝ}
267267
(hf : continuous_on f (Icc a b))
268268
(hf' : ∀ t ∈ Ico a b, has_deriv_within_at f (v t (f t)) (Ioi t) t)

src/analysis/analytic/basic.lean

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ variables {𝕜 : Type*} [nondiscrete_normed_field 𝕜]
6969
{F : Type*} [normed_group F] [normed_space 𝕜 F]
7070
{G : Type*} [normed_group G] [normed_space 𝕜 G]
7171

72-
open_locale topological_space classical big_operators
72+
open_locale topological_space classical big_operators nnreal
7373
open filter
7474

7575
/-! ### The radius of a formal multilinear series -/
@@ -79,22 +79,22 @@ namespace formal_multilinear_series
7979
/-- The radius of a formal multilinear series is the largest `r` such that the sum `Σ pₙ yⁿ`
8080
converges for all `∥y∥ < r`. -/
8181
def radius (p : formal_multilinear_series 𝕜 E F) : ennreal :=
82-
liminf at_top (λ n, 1/((nnnorm (p n)) ^ (1 / (n : ℝ)) : nnreal))
82+
liminf at_top (λ n, 1/((nnnorm (p n)) ^ (1 / (n : ℝ)) : ℝ≥0))
8383

8484
/--If `∥pₙ∥ rⁿ` is bounded in `n`, then the radius of `p` is at least `r`. -/
85-
lemma le_radius_of_bound (p : formal_multilinear_series 𝕜 E F) (C : nnreal) {r : nnreal}
85+
lemma le_radius_of_bound (p : formal_multilinear_series 𝕜 E F) (C : ℝ≥0) {r : ℝ≥0}
8686
(h : ∀ (n : ℕ), nnnorm (p n) * r^n ≤ C) : (r : ennreal) ≤ p.radius :=
8787
begin
88-
have L : tendsto (λ n : ℕ, (r : ennreal) / ((C + 1)^(1/(n : ℝ)) : nnreal))
89-
at_top (𝓝 ((r : ennreal) / ((C + 1)^(0 : ℝ) : nnreal))),
88+
have L : tendsto (λ n : ℕ, (r : ennreal) / ((C + 1)^(1/(n : ℝ)) : ℝ≥0))
89+
at_top (𝓝 ((r : ennreal) / ((C + 1)^(0 : ℝ) : ℝ≥0))),
9090
{ apply ennreal.tendsto.div tendsto_const_nhds,
9191
{ simp },
9292
{ rw ennreal.tendsto_coe,
9393
apply tendsto_const_nhds.nnrpow (tendsto_const_div_at_top_nhds_0_nat 1),
9494
simp },
9595
{ simp } },
9696
have A : ∀ n : ℕ , 0 < n →
97-
(r : ennreal) ≤ ((C + 1)^(1/(n : ℝ)) : nnreal) * (1 / (nnnorm (p n) ^ (1/(n:ℝ)) : nnreal)),
97+
(r : ennreal) ≤ ((C + 1)^(1/(n : ℝ)) : ℝ≥0) * (1 / (nnnorm (p n) ^ (1/(n:ℝ)) : ℝ≥0)),
9898
{ assume n npos,
9999
simp only [one_div, mul_assoc, mul_one, eq.symm ennreal.mul_div_assoc],
100100
rw [ennreal.le_div_iff_mul_le _ _, ← nnreal.pow_nat_rpow_nat_inv r npos, ← ennreal.coe_mul,
@@ -103,21 +103,21 @@ begin
103103
{ simp },
104104
{ simp } },
105105
have B : ∀ᶠ (n : ℕ) in at_top,
106-
(r : ennreal) / ((C + 1)^(1/(n : ℝ)) : nnreal) ≤ 1 / (nnnorm (p n) ^ (1/(n:ℝ)) : nnreal),
106+
(r : ennreal) / ((C + 1)^(1/(n : ℝ)) : ℝ≥0) ≤ 1 / (nnnorm (p n) ^ (1/(n:ℝ)) : ℝ≥0),
107107
{ apply eventually_at_top.21, λ n hn, _⟩,
108108
rw [ennreal.div_le_iff_le_mul, mul_comm],
109109
{ apply A n hn },
110110
{ simp },
111111
{ simp } },
112-
have D : liminf at_top (λ n : ℕ, (r : ennreal) / ((C + 1)^(1/(n : ℝ)) : nnreal)) ≤ p.radius :=
112+
have D : liminf at_top (λ n : ℕ, (r : ennreal) / ((C + 1)^(1/(n : ℝ)) : ℝ≥0)) ≤ p.radius :=
113113
liminf_le_liminf B,
114114
rw L.liminf_eq at D,
115115
simpa using D
116116
end
117117

118118
/-- For `r` strictly smaller than the radius of `p`, then `∥pₙ∥ rⁿ` is bounded. -/
119-
lemma bound_of_lt_radius (p : formal_multilinear_series 𝕜 E F) {r : nnreal}
120-
(h : (r : ennreal) < p.radius) : ∃ (C : nnreal), ∀ n, nnnorm (p n) * r^n ≤ C :=
119+
lemma bound_of_lt_radius (p : formal_multilinear_series 𝕜 E F) {r : ℝ≥0}
120+
(h : (r : ennreal) < p.radius) : ∃ (C : ℝ≥0), ∀ n, nnnorm (p n) * r^n ≤ C :=
121121
begin
122122
obtain ⟨N, hN⟩ : ∃ (N : ℕ), ∀ n, n ≥ N → (r : ennreal) < 1 / ↑(nnnorm (p n) ^ (1 / (n : ℝ))) :=
123123
eventually.exists_forall_of_at_top (eventually_lt_of_lt_liminf h),
@@ -143,14 +143,14 @@ begin
143143
end
144144

145145
/-- For `r` strictly smaller than the radius of `p`, then `∥pₙ∥ rⁿ` tends to zero exponentially. -/
146-
lemma geometric_bound_of_lt_radius (p : formal_multilinear_series 𝕜 E F) {r : nnreal}
146+
lemma geometric_bound_of_lt_radius (p : formal_multilinear_series 𝕜 E F) {r : ℝ≥0}
147147
(h : (r : ennreal) < p.radius) : ∃ a C, a < 1 ∧ ∀ n, nnnorm (p n) * r^n ≤ C * a^n :=
148148
begin
149-
obtain ⟨t, rt, tp⟩ : ∃ (t : nnreal), (r : ennreal) < t ∧ (t : ennreal) < p.radius :=
149+
obtain ⟨t, rt, tp⟩ : ∃ (t : ℝ≥0), (r : ennreal) < t ∧ (t : ennreal) < p.radius :=
150150
ennreal.lt_iff_exists_nnreal_btwn.1 h,
151151
rw ennreal.coe_lt_coe at rt,
152152
have tpos : t ≠ 0 := ne_of_gt (lt_of_le_of_lt (zero_le _) rt),
153-
obtain ⟨C, hC⟩ : ∃ (C : nnreal), ∀ n, nnnorm (p n) * t^n ≤ C := p.bound_of_lt_radius tp,
153+
obtain ⟨C, hC⟩ : ∃ (C : ℝ≥0), ∀ n, nnnorm (p n) * t^n ≤ C := p.bound_of_lt_radius tp,
154154
refine ⟨r / t, C, nnreal.div_lt_one_of_lt rt, λ n, _⟩,
155155
calc nnnorm (p n) * r ^ n
156156
= (nnnorm (p n) * t ^ n) * (r / t) ^ n : by { field_simp [tpos], ac_refl }
@@ -163,9 +163,9 @@ lemma min_radius_le_radius_add (p q : formal_multilinear_series 𝕜 E F) :
163163
begin
164164
refine le_of_forall_ge_of_dense (λ r hr, _),
165165
cases r, { simpa using hr },
166-
obtain ⟨Cp, hCp⟩ : ∃ (C : nnreal), ∀ n, nnnorm (p n) * r^n ≤ C :=
166+
obtain ⟨Cp, hCp⟩ : ∃ (C : ℝ≥0), ∀ n, nnnorm (p n) * r^n ≤ C :=
167167
p.bound_of_lt_radius (lt_of_lt_of_le hr (min_le_left _ _)),
168-
obtain ⟨Cq, hCq⟩ : ∃ (C : nnreal), ∀ n, nnnorm (q n) * r^n ≤ C :=
168+
obtain ⟨Cq, hCq⟩ : ∃ (C : ℝ≥0), ∀ n, nnnorm (q n) * r^n ≤ C :=
169169
q.bound_of_lt_radius (lt_of_lt_of_le hr (min_le_right _ _)),
170170
have : ∀ n, nnnorm ((p + q) n) * r^n ≤ Cp + Cq,
171171
{ assume n,
@@ -314,9 +314,9 @@ let ⟨rf, hrf⟩ := hf in hrf.coeff_zero v
314314

315315
/-- If a function admits a power series expansion, then it is exponentially close to the partial
316316
sums of this power series on strict subdisks of the disk of convergence. -/
317-
lemma has_fpower_series_on_ball.uniform_geometric_approx {r' : nnreal}
317+
lemma has_fpower_series_on_ball.uniform_geometric_approx {r' : ℝ≥0}
318318
(hf : has_fpower_series_on_ball f p x r) (h : (r' : ennreal) < r) :
319-
∃ (a C : nnreal), a < 1 ∧ (∀ y ∈ metric.ball (0 : E) r', ∀ n,
319+
∃ (a C : ℝ≥0), a < 1 ∧ (∀ y ∈ metric.ball (0 : E) r', ∀ n,
320320
∥f (x + y) - p.partial_sum n y∥ ≤ C * a ^ n) :=
321321
begin
322322
obtain ⟨a, C, ha, hC⟩ : ∃ a C, a < 1 ∧ ∀ n, nnnorm (p n) * r' ^n ≤ C * a^n :=
@@ -344,7 +344,7 @@ end
344344
/-- If a function admits a power series expansion at `x`, then it is the uniform limit of the
345345
partial sums of this power series on strict subdisks of the disk of convergence, i.e., `f (x + y)`
346346
is the uniform limit of `p.partial_sum n y` there. -/
347-
lemma has_fpower_series_on_ball.tendsto_uniformly_on {r' : nnreal}
347+
lemma has_fpower_series_on_ball.tendsto_uniformly_on {r' : ℝ≥0}
348348
(hf : has_fpower_series_on_ball f p x r) (h : (r' : ennreal) < r) :
349349
tendsto_uniformly_on (λ n y, p.partial_sum n y) (λ y, f (x + y)) at_top (metric.ball (0 : E) r') :=
350350
begin
@@ -378,7 +378,7 @@ end
378378
/-- If a function admits a power series expansion at `x`, then it is the uniform limit of the
379379
partial sums of this power series on strict subdisks of the disk of convergence, i.e., `f y`
380380
is the uniform limit of `p.partial_sum n (y - x)` there. -/
381-
lemma has_fpower_series_on_ball.tendsto_uniformly_on' {r' : nnreal}
381+
lemma has_fpower_series_on_ball.tendsto_uniformly_on' {r' : ℝ≥0}
382382
(hf : has_fpower_series_on_ball f p x r) (h : (r' : ennreal) < r) :
383383
tendsto_uniformly_on (λ n y, p.partial_sum n (y - x)) f at_top (metric.ball (x : E) r') :=
384384
begin
@@ -476,7 +476,7 @@ discussion is that the set of points where a function is analytic is open.
476476

477477
namespace formal_multilinear_series
478478

479-
variables (p : formal_multilinear_series 𝕜 E F) {x y : E} {r : nnreal}
479+
variables (p : formal_multilinear_series 𝕜 E F) {x y : E} {r : ℝ≥0}
480480

481481
/--
482482
Changing the origin of a formal multilinear series `p`, so that
@@ -504,7 +504,7 @@ begin
504504
obtain ⟨a, C, ha, hC⟩ :
505505
∃ a C, a < 1 ∧ ∀ n, nnnorm (p n) * (nnnorm x + r) ^ n ≤ C * a^n :=
506506
p.geometric_bound_of_lt_radius h,
507-
let Bnnnorm : (Σ (n : ℕ), finset (fin n)) → nnreal :=
507+
let Bnnnorm : (Σ (n : ℕ), finset (fin n)) → ℝ≥0 :=
508508
λ ⟨n, s⟩, nnnorm (p n) * (nnnorm x) ^ (n - s.card) * r ^ s.card,
509509
have : ((λ ⟨n, s⟩, ∥p n∥ * ∥x∥ ^ (n - s.card) * r ^ s.card) :
510510
(Σ (n : ℕ), finset (fin n)) → ℝ) = (λ b, (Bnnnorm b : ℝ)),
@@ -513,7 +513,7 @@ begin
513513
apply ne_of_lt,
514514
calc (∑' b, ↑(Bnnnorm b))
515515
= (∑' n, (∑' s, ↑(Bnnnorm ⟨n, s⟩))) : by exact ennreal.tsum_sigma' _
516-
... ≤ (∑' n, (((nnnorm (p n) * (nnnorm x + r)^n) : nnreal) : ennreal)) :
516+
... ≤ (∑' n, (((nnnorm (p n) * (nnnorm x + r)^n) : ℝ≥0) : ennreal)) :
517517
begin
518518
refine ennreal.tsum_le_tsum (λ n, _),
519519
rw [tsum_fintype, ← ennreal.coe_finset_sum, ennreal.coe_le_coe],
@@ -582,7 +582,7 @@ lemma change_origin_summable_aux3 (k : ℕ) (h : (nnnorm x : ennreal) < p.radius
582582
@summable ℝ _ _ _ (λ ⟨n, s, hs⟩, ∥(p n).restr s hs x∥ :
583583
(Σ (n : ℕ), {s : finset (fin n) // finset.card s = k}) → ℝ) :=
584584
begin
585-
obtain ⟨r, rpos, hr⟩ : ∃ (r : nnreal), 0 < r ∧ ((nnnorm x + r) : ennreal) < p.radius :=
585+
obtain ⟨r, rpos, hr⟩ : ∃ (r : ℝ≥0), 0 < r ∧ ((nnnorm x + r) : ennreal) < p.radius :=
586586
ennreal.lt_iff_exists_add_pos_lt.mp h,
587587
have S : @summable ℝ _ _ _ ((λ ⟨n, s, hs⟩, ∥(p n).restr s hs x∥ * (r : ℝ) ^ k) :
588588
(Σ (n : ℕ), {s : finset (fin n) // finset.card s = k}) → ℝ),

src/analysis/analytic/composition.lean

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ variables {𝕜 : Type*} [nondiscrete_normed_field 𝕜]
7272
{H : Type*} [normed_group H] [normed_space 𝕜 H]
7373

7474
open filter list
75-
open_locale topological_space big_operators classical
75+
open_locale topological_space big_operators classical nnreal
7676

7777
/-! ### Composing formal multilinear series -/
7878

@@ -349,17 +349,17 @@ geometric term). -/
349349
theorem comp_summable_nnreal
350350
(q : formal_multilinear_series 𝕜 F G) (p : formal_multilinear_series 𝕜 E F)
351351
(hq : 0 < q.radius) (hp : 0 < p.radius) :
352-
∃ (r : nnreal), 0 < r ∧ summable (λ i, nnnorm (q.comp_along_composition p i.2) * r ^ i.1 :
353-
(Σ n, composition n) → nnreal) :=
352+
∃ (r : ℝ≥0), 0 < r ∧ summable (λ i, nnnorm (q.comp_along_composition p i.2) * r ^ i.1 :
353+
(Σ n, composition n) → ℝ≥0) :=
354354
begin
355355
/- This follows from the fact that the growth rate of `∥qₙ∥` and `∥pₙ∥` is at most geometric,
356356
giving a geometric bound on each `∥q.comp_along_composition p op∥`, together with the
357357
fact that there are `2^(n-1)` compositions of `n`, giving at most a geometric loss. -/
358358
rcases ennreal.lt_iff_exists_nnreal_btwn.1 hq with ⟨rq, rq_pos, hrq⟩,
359359
rcases ennreal.lt_iff_exists_nnreal_btwn.1 hp with ⟨rp, rp_pos, hrp⟩,
360-
obtain ⟨Cq, hCq⟩ : ∃ (Cq : nnreal), ∀ n, nnnorm (q n) * rq^n ≤ Cq := q.bound_of_lt_radius hrq,
361-
obtain ⟨Cp, hCp⟩ : ∃ (Cp : nnreal), ∀ n, nnnorm (p n) * rp^n ≤ Cp := p.bound_of_lt_radius hrp,
362-
let r0 : nnreal := (4 * max Cp 1)⁻¹,
360+
obtain ⟨Cq, hCq⟩ : ∃ (Cq : ℝ≥0), ∀ n, nnnorm (q n) * rq^n ≤ Cq := q.bound_of_lt_radius hrq,
361+
obtain ⟨Cp, hCp⟩ : ∃ (Cp : ℝ≥0), ∀ n, nnnorm (p n) * rp^n ≤ Cp := p.bound_of_lt_radius hrp,
362+
let r0 : ℝ≥0 := (4 * max Cp 1)⁻¹,
363363
set r := min rp 1 * min rq 1 * r0,
364364
have r_pos : 0 < r,
365365
{ apply mul_pos (mul_pos _ _),
@@ -369,9 +369,9 @@ begin
369369
{ exact lt_of_lt_of_le zero_lt_one (le_max_right _ _) } },
370370
{ rw ennreal.coe_pos at rp_pos, simp [rp_pos, zero_lt_one] },
371371
{ rw ennreal.coe_pos at rq_pos, simp [rq_pos, zero_lt_one] } },
372-
let a : ennreal := ((4 : nnreal) ⁻¹ : nnreal),
372+
let a : ennreal := ((4 : ℝ≥0) ⁻¹ : ℝ≥0),
373373
have two_a : 2 * a < 1,
374-
{ change ((2 : nnreal) : ennreal) * ((4 : nnreal) ⁻¹ : nnreal) < (1 : nnreal),
374+
{ change ((2 : ℝ≥0) : ennreal) * ((4 : ℝ≥0) ⁻¹ : ℝ≥0) < (1 : ℝ≥0),
375375
rw [← ennreal.coe_mul, ennreal.coe_lt_coe, ← nnreal.coe_lt_coe, nnreal.coe_mul],
376376
change (2 : ℝ) * (4 : ℝ)⁻¹ < 1,
377377
norm_num },
@@ -412,7 +412,7 @@ begin
412412
... = Cq * 4⁻¹ ^ n :
413413
begin
414414
dsimp [r0],
415-
have A : (4 : nnreal) ≠ 0, by norm_num,
415+
have A : (4 : ℝ≥0) ≠ 0, by norm_num,
416416
have B : max Cp 10 :=
417417
ne_of_gt (lt_of_lt_of_le zero_lt_one (le_max_right Cp 1)),
418418
field_simp [A, B],
@@ -436,7 +436,7 @@ begin
436436
rw composition_card,
437437
simp only [nat.cast_bit0, nat.cast_one, nat.cast_pow],
438438
apply ennreal.pow_le_pow _ (nat.sub_le n 1),
439-
have : (1 : nnreal) ≤ (2 : nnreal), by norm_num,
439+
have : (1 : ℝ≥0) ≤ (2 : ℝ≥0), by norm_num,
440440
rw ← ennreal.coe_le_coe at this,
441441
exact this
442442
end
@@ -448,9 +448,9 @@ end
448448
/-- Bounding below the radius of the composition of two formal multilinear series assuming
449449
summability over all compositions. -/
450450
theorem le_comp_radius_of_summable
451-
(q : formal_multilinear_series 𝕜 F G) (p : formal_multilinear_series 𝕜 E F) (r : nnreal)
451+
(q : formal_multilinear_series 𝕜 F G) (p : formal_multilinear_series 𝕜 E F) (r : ℝ≥0)
452452
(hr : summable (λ i, nnnorm (q.comp_along_composition p i.2) * r ^ i.1 :
453-
(Σ n, composition n) → nnreal)) :
453+
(Σ n, composition n) → ℝ≥0)) :
454454
(r : ennreal) ≤ (q.comp p).radius :=
455455
begin
456456
apply le_radius_of_bound _ (tsum (λ (i : Σ (n : ℕ), composition n),

src/analysis/mean_inequalities.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -921,11 +921,11 @@ end
921921

922922
end ennreal
923923

924-
/-- Hölder's inequality for functions `α → nnreal`. The integral of the product of two functions
924+
/-- Hölder's inequality for functions `α → ℝ≥0`. The integral of the product of two functions
925925
is bounded by the product of their `ℒp` and `ℒq` seminorms when `p` and `q` are conjugate
926926
exponents. -/
927927
theorem nnreal.lintegral_mul_le_Lp_mul_Lq {p q : ℝ} (hpq : p.is_conjugate_exponent q)
928-
{f g : α → nnreal} (hf : measurable f) (hg : measurable g) :
928+
{f g : α → ℝ≥0} (hf : measurable f) (hg : measurable g) :
929929
∫⁻ a, (f * g) a ∂μ ≤ (∫⁻ a, (f a)^p ∂μ)^(1/p) * (∫⁻ a, (g a)^q ∂μ)^(1/q) :=
930930
begin
931931
simp_rw [pi.mul_apply, ennreal.coe_mul],

src/analysis/normed_space/basic.lean

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -299,12 +299,12 @@ finset.le_sum_of_subadditive nnnorm nnnorm_zero nnnorm_add_le
299299

300300
end nnnorm
301301

302-
lemma lipschitz_with.neg {α : Type*} [emetric_space α] {K : nnreal} {f : α → β}
302+
lemma lipschitz_with.neg {α : Type*} [emetric_space α] {K : ℝ≥0} {f : α → β}
303303
(hf : lipschitz_with K f) : lipschitz_with K (λ x, -f x) :=
304304
λ x y, by simpa only [edist_dist, dist_neg_neg] using hf x y
305305

306-
lemma lipschitz_with.add {α : Type*} [emetric_space α] {Kf : nnreal} {f : α → β}
307-
(hf : lipschitz_with Kf f) {Kg : nnreal} {g : α → β} (hg : lipschitz_with Kg g) :
306+
lemma lipschitz_with.add {α : Type*} [emetric_space α] {Kf : ℝ≥0} {f : α → β}
307+
(hf : lipschitz_with Kf f) {Kg : ℝ≥0} {g : α → β} (hg : lipschitz_with Kg g) :
308308
lipschitz_with (Kf + Kg) (λ x, f x + g x) :=
309309
λ x y,
310310
calc edist (f x + g x) (f y + g y) ≤ edist (f x) (f y) + edist (g x) (g y) :
@@ -314,13 +314,13 @@ calc edist (f x + g x) (f y + g y) ≤ edist (f x) (f y) + edist (g x) (g y) :
314314
... = (Kf + Kg) * edist x y :
315315
(add_mul _ _ _).symm
316316

317-
lemma lipschitz_with.sub {α : Type*} [emetric_space α] {Kf : nnreal} {f : α → β}
318-
(hf : lipschitz_with Kf f) {Kg : nnreal} {g : α → β} (hg : lipschitz_with Kg g) :
317+
lemma lipschitz_with.sub {α : Type*} [emetric_space α] {Kf : ℝ≥0} {f : α → β}
318+
(hf : lipschitz_with Kf f) {Kg : ℝ≥0} {g : α → β} (hg : lipschitz_with Kg g) :
319319
lipschitz_with (Kf + Kg) (λ x, f x - g x) :=
320320
by simpa only [sub_eq_add_neg] using hf.add hg.neg
321321

322-
lemma antilipschitz_with.add_lipschitz_with {α : Type*} [metric_space α] {Kf : nnreal} {f : α → β}
323-
(hf : antilipschitz_with Kf f) {Kg : nnreal} {g : α → β} (hg : lipschitz_with Kg g)
322+
lemma antilipschitz_with.add_lipschitz_with {α : Type*} [metric_space α] {Kf : ℝ≥0} {f : α → β}
323+
(hf : antilipschitz_with Kf f) {Kg : ℝ≥0} {g : α → β} (hg : lipschitz_with Kg g)
324324
(hK : Kg < Kf⁻¹) :
325325
antilipschitz_with (Kf⁻¹ - Kg)⁻¹ (λ x, f x + g x) :=
326326
begin
@@ -365,7 +365,7 @@ max_le_iff
365365
/-- normed group instance on the product of finitely many normed groups, using the sup norm. -/
366366
instance pi.normed_group {π : ι → Type*} [fintype ι] [∀i, normed_group (π i)] :
367367
normed_group (Πi, π i) :=
368-
{ norm := λf, ((finset.sup finset.univ (λ b, nnnorm (f b)) : nnreal) : ℝ),
368+
{ norm := λf, ((finset.sup finset.univ (λ b, nnnorm (f b)) : ℝ≥0) : ℝ),
369369
dist_eq := assume x y,
370370
congr_arg (coe : ℝ≥0 → ℝ) $ congr_arg (finset.sup finset.univ) $ funext $ assume a,
371371
show nndist (x a) (y a) = nnnorm (x a - y a), from nndist_eq_nnnorm _ _ }
@@ -431,7 +431,7 @@ lemma continuous.norm [topological_space γ] {f : γ → α} (hf : continuous f)
431431
continuous (λ x, ∥f x∥) :=
432432
continuous_norm.comp hf
433433

434-
lemma continuous_nnnorm : continuous (nnnorm : α → nnreal) :=
434+
lemma continuous_nnnorm : continuous (nnnorm : α → ℝ≥0) :=
435435
continuous_subtype_mk _ continuous_norm
436436

437437
lemma filter.tendsto.nnnorm {β : Type*} {l : filter β} {f : β → α} {a : α} (h : tendsto f l (𝓝 a)) :
@@ -1166,7 +1166,7 @@ begin
11661166
simpa using h'
11671167
end
11681168

1169-
lemma summable_of_nnnorm_bounded {f : ι → α} (g : ι → nnreal) (hg : summable g)
1169+
lemma summable_of_nnnorm_bounded {f : ι → α} (g : ι → ℝ≥0) (hg : summable g)
11701170
(h : ∀i, nnnorm (f i) ≤ g i) : summable f :=
11711171
summable_of_norm_bounded (λ i, (g i : ℝ)) (nnreal.summable_coe.2 hg) (λ i, by exact_mod_cast h i)
11721172

0 commit comments

Comments
 (0)