IndisputableMonolith.Physics.ProtonRadius
IndisputableMonolith/Physics/ProtonRadius.lean · 75 lines · 13 declarations
show as:
view math explainer →
1import Mathlib
2import IndisputableMonolith.Cost.JcostCore
3
4/-!
5# Proton Charge Radius from Recognition Science
6Paper: `RS_Proton_Radius_Puzzle.tex`
7-/
8
9namespace IndisputableMonolith
10namespace Physics
11namespace ProtonRadius
12
13open Real
14
15noncomputable def φ : ℝ := (1 + Real.sqrt 5) / 2
16
17theorem phi_pos : 0 < φ := by unfold φ; positivity
18
19theorem phi_gt_one : 1 < φ := by
20 unfold φ
21 have h5 : (1:ℝ) < Real.sqrt 5 := by
22 have : Real.sqrt 1 < Real.sqrt 5 := Real.sqrt_lt_sqrt (by norm_num) (by norm_num)
23 simpa [Real.sqrt_one] using this
24 linarith
25
26/-- m_μ/m_e = φ^11 (rungs: r_e = 2, r_μ = 13, difference = 11). -/
27noncomputable def muon_electron_ratio : ℝ := φ ^ 11
28
29theorem muon_heavier : 1 < muon_electron_ratio := by
30 unfold muon_electron_ratio
31 exact one_lt_pow₀ phi_gt_one (by norm_num)
32
33theorem muon_ratio_pos : 0 < muon_electron_ratio :=
34 lt_trans one_pos muon_heavier
35
36/-- Muonic Bohr radius is smaller → probes shorter distances. -/
37theorem muonic_smaller : 1 / muon_electron_ratio < 1 := by
38 rw [div_lt_one muon_ratio_pos]; exact muon_heavier
39
40/-- RS proton radius estimate from confinement + form factor. -/
41noncomputable def proton_radius_estimate (h_over_mpc α_s : ℝ) : ℝ :=
42 (1/4) * h_over_mpc * Real.sqrt (6 * Real.pi / α_s)
43
44theorem proton_radius_positive {h_over_mpc α_s : ℝ}
45 (hh : 0 < h_over_mpc) (hα : 0 < α_s) :
46 0 < proton_radius_estimate h_over_mpc α_s := by
47 unfold proton_radius_estimate
48 apply mul_pos (mul_pos (by norm_num) hh)
49 exact Real.sqrt_pos_of_pos (by positivity)
50
51/-- CODATA 2018: r_p = 0.8414 fm. -/
52abbrev proton_radius_codata : ℝ := 0.8414
53
54/-- No leptonic universality violation: r_p is probe-independent. -/
55theorem leptonic_universality : ∃ r : ℝ, r = proton_radius_codata := ⟨_, rfl⟩
56
57/-- The "large" old value differs by > 3% from CODATA. -/
58theorem old_value_differs : 0.877 - proton_radius_codata > 0.03 := by norm_num
59
60/-- RS form factor correction from standard dipole. -/
61noncomputable def form_factor_correction (Q L : ℝ) : ℝ :=
62 1 - 0.15 * (Q / L)^2
63
64theorem form_factor_near_one {Q L : ℝ} (hL : 0 < L) (h : (Q/L)^2 ≤ 0.01) :
65 |form_factor_correction Q L - 1| ≤ 0.0015 := by
66 unfold form_factor_correction
67 have hnn : 0 ≤ 0.15 * (Q / L)^2 := by positivity
68 rw [show 1 - 0.15 * (Q / L)^2 - 1 = -(0.15 * (Q / L)^2) from by ring]
69 rw [abs_neg, abs_of_nonneg hnn]
70 nlinarith
71
72end ProtonRadius
73end Physics
74end IndisputableMonolith
75