theorem
proved
prove_lower_bound_le
show as:
view math explainer →
open explainer
Read the cached plain-language explainer.
open lean source
IndisputableMonolith.Numerics.Interval.Tactic on GitHub at line 38.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
formal source
35 (h_contains : I.contains x) (h_hi : I.hi < b) : x < (b : ℝ) :=
36 I.hi_lt_implies_contains_lt h_hi h_contains
37
38theorem prove_lower_bound_le {I : Interval} {x : ℝ} {b : ℚ}
39 (h_contains : I.contains x) (h_lo : b ≤ I.lo) : (b : ℝ) ≤ x :=
40 I.lo_ge_implies_contains_ge h_lo h_contains
41
42theorem prove_upper_bound_le {I : Interval} {x : ℝ} {b : ℚ}
43 (h_contains : I.contains x) (h_hi : I.hi ≤ b) : x ≤ (b : ℝ) :=
44 I.hi_le_implies_contains_le h_hi h_contains
45
46/-- Prove that φ is in its interval -/
47theorem phi_interval_contains :
48 phiInterval.contains ((1 + Real.sqrt 5) / 2) := phi_in_phiInterval
49
50/-- Prove that log(φ) is in its interval -/
51theorem log_phi_interval_contains :
52 logPhiInterval.contains (Real.log ((1 + Real.sqrt 5) / 2)) := log_phi_in_interval
53
54/-- Example: Prove log(φ) > 0.48 (using interval lo = 481/1000 = 0.481) -/
55theorem log_phi_gt_048 : (0.48 : ℝ) < Real.log ((1 + Real.sqrt 5) / 2) := by
56 have h := log_phi_in_interval
57 -- logPhiInterval.lo = 481/1000 > 0.48
58 have h1 : (0.48 : ℝ) < (481 / 1000 : ℚ) := by norm_num
59 exact lt_of_lt_of_le h1 h.1
60
61/-- Example: Prove log(φ) < 0.49 (using interval hi = 482/1000 = 0.482) -/
62theorem log_phi_lt_049 : Real.log ((1 + Real.sqrt 5) / 2) < (0.49 : ℝ) := by
63 have h := log_phi_in_interval
64 -- logPhiInterval.hi = 482/1000 < 0.49
65 have h1 : ((482 / 1000 : ℚ) : ℝ) < (0.49 : ℝ) := by norm_num
66 exact lt_of_le_of_lt h.2 h1
67
68/-- Example: Prove φ > 1.61 (using interval lo = 1618/1000) -/