pith. machine review for the scientific record. sign in

IndisputableMonolith.Cosmology.ReionizationHistoryFromRS

IndisputableMonolith/Cosmology/ReionizationHistoryFromRS.lean · 53 lines · 7 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: pending

   1import Mathlib
   2import IndisputableMonolith.Constants
   3
   4/-!
   5# Reionization History from RS — Cosmology Depth
   6
   7Five canonical epochs of reionization (= configDim D = 5):
   8  cosmic dark ages (z > 20), first stars (z ~ 20), galaxy formation
   9  (z ~ 15), bulk reionization (z ~ 7-10), saturation (z < 6).
  10
  11Each boundary redshift sits one rung on a geometric ladder.
  12
  13Lean status: 0 sorry, 0 axiom.
  14-/
  15
  16namespace IndisputableMonolith.Cosmology.ReionizationHistoryFromRS
  17open Constants
  18
  19inductive ReionizationEpoch where
  20  | darkAges
  21  | firstStars
  22  | galaxyFormation
  23  | bulkReionization
  24  | saturation
  25  deriving DecidableEq, Repr, BEq, Fintype
  26
  27theorem reionizationEpoch_count :
  28    Fintype.card ReionizationEpoch = 5 := by decide
  29
  30noncomputable def boundaryRedshift (k : ℕ) : ℝ := phi ^ k
  31
  32theorem redshift_ratio (k : ℕ) :
  33    boundaryRedshift (k + 1) / boundaryRedshift k = phi := by
  34  unfold boundaryRedshift
  35  have hpos : (0 : ℝ) < phi ^ k := pow_pos phi_pos k
  36  rw [div_eq_iff hpos.ne', pow_succ]
  37  ring
  38
  39theorem redshift_pos (k : ℕ) : 0 < boundaryRedshift k :=
  40  pow_pos phi_pos k
  41
  42structure ReionizationCert where
  43  five_epochs : Fintype.card ReionizationEpoch = 5
  44  phi_ratio : ∀ k, boundaryRedshift (k + 1) / boundaryRedshift k = phi
  45  boundary_always_pos : ∀ k, 0 < boundaryRedshift k
  46
  47noncomputable def reionizationCert : ReionizationCert where
  48  five_epochs := reionizationEpoch_count
  49  phi_ratio := redshift_ratio
  50  boundary_always_pos := redshift_pos
  51
  52end IndisputableMonolith.Cosmology.ReionizationHistoryFromRS
  53

source mirrored from github.com/jonwashburn/shape-of-logic