Skip to content

Commit 1c247e9

Browse files
committed
tfae seems to appear in lower cases more frequently
1 parent 92593bc commit 1c247e9

1 file changed

Lines changed: 16 additions & 19 deletions

File tree

Mathlib/Analysis/InnerProductSpace/NormDet.lean

Lines changed: 16 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ theorem normDet_eq_zero_iff_rank_range_ne {f : U →ₗ[𝕜] V} :
136136
f.normDet = 0 ↔ finrank 𝕜 f.range ≠ finrank 𝕜 U := by
137137
simp [normDet_eq_zero_iff_ker_ne_bot, ← f.finrank_range_add_finrank_ker]
138138

139-
theorem TFAE_normDet_ne_zero (f : U →ₗ[𝕜] V) :
139+
theorem normDet_ne_zero_tfae (f : U →ₗ[𝕜] V) :
140140
List.TFAE [f.normDet ≠ 0,
141141
f.ker = ⊥,
142142
finrank 𝕜 f.range = finrank 𝕜 U,
@@ -157,10 +157,10 @@ theorem TFAE_normDet_ne_zero (f : U →ₗ[𝕜] V) :
157157
private noncomputable def orthonormalBasis_range {ι : Type*} [Fintype ι] {f : U →ₗ[𝕜] V}
158158
(hf : f.ker = ⊥) (b : OrthonormalBasis ι 𝕜 U) : OrthonormalBasis ι 𝕜 f.range :=
159159
let h : Nonempty (OrthonormalBasis (Fin (finrank 𝕜 U)) 𝕜 f.range) :=
160-
(f.TFAE_normDet_ne_zero.out 1 3).mp hf
160+
(f.normDet_ne_zero_tfae.out 1 3).mp hf
161161
h.some.reindex (Fintype.equivFinOfCardEq <| (Module.finrank_eq_card_basis b.toBasis).symm).symm
162162

163-
theorem TFAE_normDet_eq_zero (f : U →ₗ[𝕜] V) :
163+
theorem normDet_eq_zero_tfae (f : U →ₗ[𝕜] V) :
164164
List.TFAE [f.normDet = 0,
165165
f.ker ≠ ⊥,
166166
finrank 𝕜 f.range ≠ finrank 𝕜 U,
@@ -171,7 +171,7 @@ theorem TFAE_normDet_eq_zero (f : U →ₗ[𝕜] V) :
171171
tfae_have 13 := f.normDet_eq_zero_iff_rank_range_ne
172172
tfae_have 34 := by simpa using finrank_range_le f
173173
tfae_have 35 := by
174-
have h := (f.TFAE_normDet_ne_zero.out 2 3).not
174+
have h := (f.normDet_ne_zero_tfae.out 2 3).not
175175
simpa using h
176176
tfae_have 26 := ker_eq_bot.not
177177
tfae_finish
@@ -212,10 +212,7 @@ theorem normDet_eq_norm_det (f : U →ₗ[𝕜] U) : f.normDet = ‖f.det‖ :=
212212
-/
213213
@[simp]
214214
theorem _root_.LinearIsometry.normDet_eq_one (f : U →ₗᵢ[𝕜] V) : f.toLinearMap.normDet = 1 := by
215-
have hrank : finrank 𝕜 U = finrank 𝕜 f.range :=
216-
f.equivRange.toLinearEquiv.finrank_eq
217-
let b := (stdOrthonormalBasis 𝕜 f.toLinearMap.range)
218-
rw [← hrank] at b
215+
obtain ⟨b⟩ := (f.normDet_ne_zero_tfae.out 4 3).mp f.injective
219216
rw [normDet_eq_norm_det_toMatrix_rangeRestrict _ (stdOrthonormalBasis 𝕜 U) b]
220217
apply CStarRing.norm_of_mem_unitary
221218
exact Matrix.det_of_mem_unitary <| (f.equivRange).toMatrix_mem_unitaryGroup _ _
@@ -248,7 +245,7 @@ theorem normDet_smul (f : U →ₗ[𝕜] V) (c : 𝕜) :
248245
· nontriviality U
249246
simp [hc, zero_pow finrank_pos.ne.symm]
250247
by_cases h : f.ker = ⊥
251-
· obtain ⟨bv⟩ := (f.TFAE_normDet_ne_zero.out 1 3).mp h
248+
· obtain ⟨bv⟩ := (f.normDet_ne_zero_tfae.out 1 3).mp h
252249
let bu : OrthonormalBasis (Fin (finrank 𝕜 U)) 𝕜 U := stdOrthonormalBasis 𝕜 U
253250
let bv' : OrthonormalBasis (Fin (finrank 𝕜 U)) 𝕜 (c • f).range := bv.map
254251
(LinearIsometryEquiv.ofEq _ _ (LinearMap.range_smul _ _ hc).symm)
@@ -275,7 +272,7 @@ theorem _root_.ContinuousLinearMap.normDet_sq [CompleteSpace V] (f : U →L[𝕜
275272
have : CompleteSpace f.range := FiniteDimensional.complete 𝕜 f.range
276273
let bu := stdOrthonormalBasis 𝕜 U
277274
by_cases h : f.ker = ⊥
278-
· obtain ⟨b⟩ := (f.TFAE_normDet_ne_zero.out 1 3).mp h
275+
· obtain ⟨b⟩ := (f.normDet_ne_zero_tfae.out 1 3).mp h
279276
have hf : f = f.range.subtypeₗᵢ.toContinuousLinearMap ∘L f.rangeRestrict := rfl
280277
conv_rhs => rw [hf]
281278
rw [ContinuousLinearMap.adjoint_comp, ← ContinuousLinearMap.comp_assoc,
@@ -290,7 +287,7 @@ theorem _root_.ContinuousLinearMap.normDet_sq [CompleteSpace V] (f : U →L[𝕜
290287
simp [f.toLinearMap.normDet_eq_norm_det_toMatrix_rangeRestrict bu b, RCLike.conj_mul]
291288
exact f.range.subtypeₗᵢ.adjoint_comp_self
292289
· trans 0
293-
· simp [show f.normDet = 0 from (f.TFAE_normDet_eq_zero.out 1 0).mp h]
290+
· simp [show f.normDet = 0 from (f.normDet_eq_zero_tfae.out 1 0).mp h]
294291
symm
295292
rw [det_eq_zero_iff_ker_ne_bot, ContinuousLinearMap.ker_adjoint_comp_self]
296293
exact h
@@ -322,8 +319,8 @@ theorem normDet_sq_eq_det_gram {ι : Type*} [Fintype ι] [DecidableEq ι] (f : U
322319
ext i j
323320
simp [LinearMap.toMatrix_apply]
324321
· trans 0
325-
· simp [show f.normDet = 0 from (f.TFAE_normDet_eq_zero.out 1 0).mp h]
326-
have hrank := (f.TFAE_normDet_eq_zero.out 1 3).mp h
322+
· simp [show f.normDet = 0 from (f.normDet_eq_zero_tfae.out 1 0).mp h]
323+
have hrank := (f.normDet_eq_zero_tfae.out 1 3).mp h
327324
symm
328325
contrapose! hrank with h0
329326
rw [finrank_eq_card_basis b.toBasis]
@@ -333,9 +330,9 @@ theorem normDet_comp (f : U →ₗ[𝕜] V) (g : V →ₗ[𝕜] W) :
333330
(g ∘ₗ f).normDet = (g.domRestrict f.range).normDet * f.normDet := by
334331
by_cases hf : f.ker = ⊥
335332
· let bu : OrthonormalBasis (Fin (finrank 𝕜 U)) 𝕜 U := stdOrthonormalBasis 𝕜 U
336-
obtain ⟨bv⟩ := (f.TFAE_normDet_ne_zero.out 1 3).mp hf
333+
obtain ⟨bv⟩ := (f.normDet_ne_zero_tfae.out 1 3).mp hf
337334
by_cases hgf : (g ∘ₗ f).ker = ⊥
338-
· obtain ⟨bw⟩ := ((g ∘ₗ f).TFAE_normDet_ne_zero.out 1 3).mp hgf
335+
· obtain ⟨bw⟩ := ((g ∘ₗ f).normDet_ne_zero_tfae.out 1 3).mp hgf
339336
let bw' : OrthonormalBasis (Fin (finrank 𝕜 U)) 𝕜 (g.domRestrict f.range).range :=
340337
bw.map (LinearIsometryEquiv.ofEq _ _ (by simp [LinearMap.range_comp]))
341338
rw [(g ∘ₗ f).normDet_eq_norm_det_toMatrix_rangeRestrict bu bw,
@@ -405,8 +402,8 @@ theorem hausdorffMeasure_image [MeasurableSpace U] [BorelSpace U] [MeasurableSpa
405402
(f : U →ₗ[ℝ] V) (s : Set U) :
406403
μH[finrank ℝ U] (f '' s) = ENNReal.ofReal f.normDet * μH[finrank ℝ U] s := by
407404
by_cases h : f.ker = ⊥
408-
· have hrank : finrank ℝ ↥f.range = finrank ℝ U := (f.TFAE_normDet_ne_zero.out 1 2).mp h
409-
obtain ⟨bv⟩ := (f.TFAE_normDet_ne_zero.out 1 3).mp h
405+
· have hrank : finrank ℝ ↥f.range = finrank ℝ U := (f.normDet_ne_zero_tfae.out 1 2).mp h
406+
obtain ⟨bv⟩ := (f.normDet_ne_zero_tfae.out 1 3).mp h
410407
let g : U ≃ₗᵢ[ℝ] f.range := (stdOrthonormalBasis ℝ U).equiv bv (Equiv.refl _)
411408
suffices μH[finrank ℝ U] ((f.range.subtypeₗᵢ.comp g.toLinearIsometry) ''
412409
((g.symm.toLinearIsometry.toLinearMap ∘ₗ f.rangeRestrict) '' s)) =
@@ -417,10 +414,10 @@ theorem hausdorffMeasure_image [MeasurableSpace U] [BorelSpace U] [MeasurableSpa
417414
normDet_comp_of_finrank_eq _ _ hrank.symm, g.symm.toLinearIsometry.normDet_eq_one]
418415
simp
419416
· suffices μH[finrank ℝ U] (f.range.subtypeₗᵢ '' (f.rangeRestrict '' s)) = 0 by
420-
simpa [(f.TFAE_normDet_eq_zero.out 1 0).mp h, Set.image_image]
417+
simpa [(f.normDet_eq_zero_tfae.out 1 0).mp h, Set.image_image]
421418
rw [(LinearIsometry.isometry _).hausdorffMeasure_image (by simp)]
422419
have h : (finrank ℝ f.range : ℝ) < finrank ℝ U := by
423-
exact_mod_cast (f.TFAE_normDet_eq_zero.out 1 3).mp h
420+
exact_mod_cast (f.normDet_eq_zero_tfae.out 1 3).mp h
424421
simp [Real.hausdorffMeasure_of_finrank_lt h]
425422

426423
/--

0 commit comments

Comments
 (0)