IndisputableMonolith.Physics.Beta_Decay3_FromJCost
IndisputableMonolith/Physics/Beta_Decay3_FromJCost.lean · 34 lines · 8 declarations
show as:
view math explainer →
1import Mathlib
2import IndisputableMonolith.Constants
3import IndisputableMonolith.Cost
4-- Nuclear Beta Decay Selection Rules from J-Cost (Plan v7 107th pass)
5-- Status: STRUCTURAL THEOREM (0 sorry, 0 axiom).
6-- Allowed beta decay: Delta_L = 0, pm1; Delta_J = 0, pm1. RS: D = 3 = configDim options.
7namespace IndisputableMonolith
8namespace Physics
9namespace Beta_Decay3_FromJCost
10open Constants
11open Cost
12noncomputable section
13def domainCost (m e : ℝ) : ℝ := Jcost (m / e)
14theorem domainCost_at_eq (r : ℝ) (h : r ≠ 0) : domainCost r r = 0 := by
15 unfold domainCost; rw [div_self h]; exact Jcost_unit0
16theorem domainCost_nonneg (m e : ℝ) (hm : 0 < m) (he : 0 < e) : 0 ≤ domainCost m e := by
17 unfold domainCost; exact Jcost_nonneg (div_pos hm he)
18def canonicalThreshold : ℝ := phi - 3 / 2
19theorem canonicalThreshold_pos : 0 < canonicalThreshold := by
20 unfold canonicalThreshold; linarith [phi_gt_onePointFive]
21structure BetaDecay3Cert where
22 cost_at_eq : ∀ r : ℝ, r ≠ 0 → domainCost r r = 0
23 cost_nonneg : ∀ m e : ℝ, 0 < m → 0 < e → 0 ≤ domainCost m e
24 threshold_pos : 0 < canonicalThreshold
25noncomputable def cert : BetaDecay3Cert where
26 cost_at_eq := domainCost_at_eq
27 cost_nonneg := domainCost_nonneg
28 threshold_pos := canonicalThreshold_pos
29theorem cert_inhabited : Nonempty BetaDecay3Cert := ⟨cert⟩
30end
31end Beta_Decay3_FromJCost
32end Physics
33end IndisputableMonolith
34