@@ -69,7 +69,6 @@ lemma has_pos_bound : ∃ M > 0, ∀ x, ∥f x∥ ≤ M * ∥x∥ :=
6969 ⟨max 1 M, lt_of_lt_of_le zero_lt_one (le_max_left 1 _), λ _, le_trans
7070 (hf _) (mul_le_mul_of_nonneg_right (le_max_right _ _) (norm_nonneg _))⟩
7171
72- -- some lemmas about things having bounds and things being bounds
7372lemma ratio_has_pos_bound : ∃ M > 0 , ∀ x, ∥f x∥ / ∥x∥ ≤ M :=
7473 let ⟨M, hMp, hMb⟩ := has_pos_bound f in ⟨M, hMp,
7574 λ x, or.elim (lt_or_eq_of_le (norm_nonneg x))
@@ -79,11 +78,12 @@ lemma ratio_has_pos_bound : ∃ M > 0, ∀ x, ∥f x∥ / ∥x∥ ≤ M :=
7978def of_linear_map_of_bounded {f : E →ₗ[k] F}
8079 (h : ∃ M, ∀ x, ∥f x∥ ≤ M * ∥x∥) : E →L[k] F := ⟨f, h⟩
8180
82- -- the zero map and the identity maps are bounded
81+ / -- the zero map is bounded. -/
8382def zero : E →L[k] F := ⟨0 , 0 , λ x, by rw zero_mul; exact le_of_eq norm_zero⟩
83+ /-- the identity map is bounded. -/
8484def id : E →L[k] E := ⟨linear_map.id, 1 , λ x, le_of_eq (one_mul _).symm⟩
8585
86- -- boundedness respects a bunch of operations
86+ / -- the composition of two bounded linear maps is bounded. -/
8787def comp (g : F →L[k] G) (f : E →L[k] F) : E →L[k] G :=
8888 ⟨linear_map.comp g.to_linear_map f.to_linear_map,
8989 let ⟨Mg, hMgp, hMgb⟩ := has_pos_bound g in
@@ -139,8 +139,6 @@ instance : vector_space k (E →L[k] F) := {
139139 smul_add := λ _ _ _, ext $ λ _, smul_add _ _ _
140140}
141141
142-
143- -- endomorphism algebra
144142instance : ring (E →L[k] E) := {
145143 mul := (*),
146144 one := 1 ,
@@ -165,7 +163,7 @@ instance : algebra k (E →L[k] E) := {
165163 commutes' := λ _ _, ext $ λ _, map_smul _ _ _,
166164}
167165
168- -- a bounded linear map is continuous.
166+ / -- bounded linear maps are continuous. -/
169167lemma tendsto (x : E): f →_{x} (f x) :=
170168 tendsto_iff_norm_tendsto_zero.2 $ let ⟨M, hf⟩ := f.bounded in
171169 (squeeze_zero (λ _, norm_nonneg _)
@@ -175,50 +173,12 @@ lemma tendsto (x : E): f →_{x} (f x) :=
175173protected theorem continuous : continuous f :=
176174 continuous_iff_continuous_at.2 (tendsto f)
177175
178- /-
179- theorem of_continuous_linear_map (f : E →ₗ[ k ] F) (hf : continuous f)
180- (hk : normed_field.nontrivial k) : E →L[ k ] F :=
181- ⟨f,
182- let ⟨ϖ, hϖn, hϖ⟩ := hk in
183- have hϖp : 0 < ∥ϖ∥, from (norm_pos_iff _).2 hϖn,
184- have hltϖ : 1 < ∥ϖ∥⁻¹, from one_lt_inv hϖp hϖ,
185-
186- let ⟨δ, hδp, hδ⟩ :=
187- exists_delta_of_continuous hf ((norm_pos_iff _).2 hϖn) 0 in
188-
189- ⟨δ⁻¹, λ x, or.elim (lt_or_eq_of_le (norm_nonneg x))
190-
191- (λ hxp,
192- have hδx : δ⁻¹ * ∥x∥ > 0, from mul_pos (inv_pos hδp) hxp,
193- have hη : ∀ c : ℝ, c > 0 → ∃ η : k, c < ∥η∥ ∧ ∥η∥ ≤ c * ∥ϖ∥⁻¹, from
194- (λ c hcp, let ⟨n, hltn, hnlt⟩ := exists_int_pow_near hcp hltϖ in
195- ⟨ϖ⁻¹^(n + 1),
196- by rwa [normed_field.norm_fpow, norm_inv],
197- begin
198- have tmp : ∥ϖ∥⁻¹ ≠ 0, from _,
199- rw [normed_field.norm_fpow, norm_inv, fpow_add tmp, fpow_one],
200- exact mul_le_mul_of_nonneg_right hltn (le_of_lt (inv_pos hϖp)),
201- end⟩),
202- let ⟨η, hltη, hηlt⟩ := hη _ (mul_pos (inv_pos hδp) hxp) in
203-
204- have hηp : 0 < ∥η∥, from lt_trans hδx hltη,
205- have hηn : η ≠ 0, from (norm_pos_iff _).1 hηp,
206- have hηx : ∥η⁻¹ • x∥ ≤ δ, from le_of_lt (by
207- erw [norm_smul, norm_inv, mul_comm, div_lt_iff hηp,
208- mul_comm, ←div_lt_iff hδp]; rwa [ mul_comm ] at hltη),
209-
210- have hfηx : ∥f (η⁻¹ • x)∥ ≤ ∥ϖ∥,
211- by simp [ dist_eq_norm ] at hδ; exact le_of_lt (hδ _ hηx),
212-
213- calc ∥f x∥ = _ : linear_map.norm_mul_map_smul f η x hηn
214- ... ≤ ∥η∥ * ∥ϖ∥ : mul_le_mul_of_nonneg_left hfηx (norm_nonneg _)
215- ... ≤ δ⁻¹ * ∥x∥ : by erw [le_div_iff hϖp] at hηlt; exact hηlt)
216- (λ heq,
217- have hf : f.to_fun 0 = 0, from linear_map.map_zero f,
218- by rw [←heq, (norm_eq_zero _).1 heq.symm, hf, mul_zero, norm_zero])⟩⟩
219- -/
220176end bounded_linear_map
221177
178+
179+ -- deriv.lean is dependent on `is_bounded_linear_map`
180+ -- and has not yet been refactored.
181+
222182structure is_bounded_linear_map (k : Type *)
223183 [normed_field k] {E : Type *} [normed_space k E] {F : Type *} [normed_space k F] (L : E → F)
224184 extends is_linear_map k L : Prop :=
0 commit comments