Skip to content

Commit fa1b685

Browse files
committed
finish Lemma 5.3.15
1 parent 01ff14e commit fa1b685

File tree

2 files changed

+27
-2
lines changed

2 files changed

+27
-2
lines changed

Analysis/Section_4_3.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ theorem abs_eq_abs (x: ℚ) : abs x = |x| := by
4242
abbrev dist (x y : ℚ) := |x - y|
4343

4444
/-- Definition 4.2 (Distance). We avoid the Mathlib notion of distance here because it is real-valued. -/
45-
theorem dist_eq (x y: ℚ) : dist x y = |x-y| := by simp [Rat.dist_eq]
45+
theorem dist_eq (x y: ℚ) : dist x y = |x-y| := rfl
4646

4747
/-- Proposition 4.3.3(a) / Exercise 4.3.1 -/
4848
theorem abs_nonneg (x: ℚ) : |x| ≥ 0 := by sorry

Analysis/Section_5_3.lean

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -363,7 +363,32 @@ theorem Real.lim_of_bounded_away_zero {a:ℕ → ℚ} (ha: bounded_away_zero a)
363363
theorem Real.inv_of_bounded_away_zero_cauchy {a:ℕ → ℚ} (ha: bounded_away_zero a) (ha_cauchy: (a:Sequence).isCauchy) :
364364
((a⁻¹:ℕ → ℚ):Sequence).isCauchy := by
365365
-- This proof is written to follow the structure of the original text.
366-
sorry -- TODO
366+
rw [bounded_away_zero_def] at ha
367+
obtain ⟨ c, hc, ha ⟩ := ha
368+
have ha' (n:ℕ) : a n ≠ 0 := by replace ha := ha n; contrapose! ha; simp [ha, hc]
369+
simp_rw [Sequence.isCauchy_of_coe, Section_4_3.dist_eq] at ha_cauchy ⊢
370+
intro ε hε
371+
replace ha_cauchy := ha_cauchy (c^2 * ε) (by positivity)
372+
obtain ⟨ N, ha_cauchy ⟩ := ha_cauchy
373+
use N
374+
intro n m ⟨hn, hm⟩
375+
replace ha_cauchy := ha_cauchy n m ⟨hn, hm⟩
376+
calc
377+
_ = |(a m - a n) / (a m * a n)| := by
378+
congr
379+
field_simp [ha' m, ha' n]
380+
simp [mul_comm]
381+
_ ≤ |a m - a n| / c^2 := by
382+
rw [abs_div, abs_mul, sq]
383+
gcongr
384+
. exact ha m
385+
exact ha n
386+
_ = |a n - a m| / c^2 := by
387+
rw [abs_sub_comm]
388+
_ ≤ (c^2 * ε) / c^2 := by
389+
gcongr
390+
_ = ε := by
391+
field_simp [hc]
367392

368393
/-- Lemma 5.3.17 (Reciprocation is well-defined) -/
369394
theorem Real.inv_of_equiv {a b:ℕ → ℚ} (ha: bounded_away_zero a) (ha_cauchy: (a:Sequence).isCauchy) (hb: bounded_away_zero b) (hb_cauchy: (b:Sequence).isCauchy) (hlim: LIM a = LIM b) :

0 commit comments

Comments
 (0)