IndisputableMonolith.Physics.CombustionFromJCost
IndisputableMonolith/Physics/CombustionFromJCost.lean · 48 lines · 6 declarations
show as:
view math explainer →
1import Mathlib
2import IndisputableMonolith.Constants
3import IndisputableMonolith.Cost
4
5/-!
6# Combustion Physics from J-Cost — B11
7
8Combustion: rapid oxidation releasing heat and light.
9Flame temperature T_ad (adiabatic flame temperature) depends on
10fuel-air equivalence ratio φ (confusingly, same letter as golden ratio).
11
12RS derivation: the fuel-air equivalence ratio at peak efficiency = 1
13(stoichiometric = J = 0). Rich/lean mixtures have J > 0.
14
15Five canonical combustion regimes (lean deflagration, stoichiometric,
16rich deflagration, detonation, distributed reaction zone) = configDim D = 5.
17
18Lean status: 0 sorry, 0 axiom.
19-/
20
21namespace IndisputableMonolith.Physics.CombustionFromJCost
22open Cost
23
24inductive CombustionRegime where
25 | leanDeflagration | stoichiometric | richDeflagration | detonation | distributedZone
26 deriving DecidableEq, Repr, BEq, Fintype
27
28theorem combustionRegimeCount : Fintype.card CombustionRegime = 5 := by decide
29
30/-- Stoichiometric combustion = recognition equilibrium (J = 0). -/
31theorem stoichiometric_equilibrium : Jcost 1 = 0 := Jcost_unit0
32
33/-- Off-stoichiometric combustion has positive J-cost. -/
34theorem off_stoichiometric_cost {r : ℝ} (hr : 0 < r) (hne : r ≠ 1) :
35 0 < Jcost r := Jcost_pos_of_ne_one r hr hne
36
37structure CombustionCert where
38 five_regimes : Fintype.card CombustionRegime = 5
39 stoichiometric : Jcost 1 = 0
40 off_stoich_cost : ∀ {r : ℝ}, 0 < r → r ≠ 1 → 0 < Jcost r
41
42def combustionCert : CombustionCert where
43 five_regimes := combustionRegimeCount
44 stoichiometric := stoichiometric_equilibrium
45 off_stoich_cost := off_stoichiometric_cost
46
47end IndisputableMonolith.Physics.CombustionFromJCost
48