IndisputableMonolith.Cosmology.TensorToScalarRatioFromRS
IndisputableMonolith/Cosmology/TensorToScalarRatioFromRS.lean · 58 lines · 7 declarations
show as:
view math explainer →
1import Mathlib
2import IndisputableMonolith.Constants
3
4/-!
5# Tensor-to-Scalar Ratio from RS — A2 Inflation Depth
6
7RS prediction: r = 2/(45φ²) ∈ (0.015, 0.020).
8
9Lean status: 0 sorry, 0 axiom.
10-/
11
12namespace IndisputableMonolith.Cosmology.TensorToScalarRatioFromRS
13open Constants
14
15noncomputable def tensorToScalarRatio : ℝ := 2 / (45 * phi ^ 2)
16
17theorem phi2_eq : phi ^ 2 = phi + 1 := phi_sq_eq
18
19theorem r_pos : 0 < tensorToScalarRatio :=
20 div_pos (by norm_num) (mul_pos (by norm_num) (pow_pos phi_pos 2))
21
22theorem r_lt_one : tensorToScalarRatio < 1 := by
23 unfold tensorToScalarRatio
24 rw [phi2_eq]
25 have h1 := phi_gt_onePointSixOne
26 have hpos : (0:ℝ) < 45 * (phi + 1) := by nlinarith
27 rw [div_lt_iff₀ hpos]
28 nlinarith
29
30theorem r_band : (0.015 : ℝ) < tensorToScalarRatio ∧ tensorToScalarRatio < 0.020 := by
31 constructor
32 · unfold tensorToScalarRatio
33 rw [phi2_eq]
34 have h1 := phi_gt_onePointSixOne
35 have hpos : (0:ℝ) < 45 * (phi + 1) := by nlinarith
36 have hlt : 45 * (phi + 1) < 45 * 2.63 := by nlinarith [phi_lt_onePointSixTwo]
37 have hup : 2 / (45 * 2.63) ≤ 2 / (45 * (phi + 1)) := by
38 apply div_le_div_of_nonneg_left (by norm_num) hpos (by nlinarith)
39 linarith [show (0.015:ℝ) < 2 / (45 * 2.63) from by norm_num]
40 · unfold tensorToScalarRatio
41 rw [phi2_eq]
42 have h1 := phi_gt_onePointSixOne
43 have hpos : (0:ℝ) < 45 * (phi + 1) := by nlinarith
44 have hgt : 45 * (phi + 1) > 45 * 2.59 := by nlinarith
45 have hlo : 2 / (45 * (phi + 1)) ≤ 2 / (45 * 2.59) := by
46 apply div_le_div_of_nonneg_left (by norm_num) (by nlinarith) (by nlinarith)
47 linarith [show (2 : ℝ) / (45 * 2.59) < 0.020 from by norm_num]
48
49structure TensorRatioCert where
50 r_pos : 0 < tensorToScalarRatio
51 r_band : (0.015 : ℝ) < tensorToScalarRatio ∧ tensorToScalarRatio < 0.020
52
53noncomputable def tensorRatioCert : TensorRatioCert where
54 r_pos := r_pos
55 r_band := r_band
56
57end IndisputableMonolith.Cosmology.TensorToScalarRatioFromRS
58