pith. machine review for the scientific record. sign in

IndisputableMonolith.Geology.VolcanismFromPhiLadder

IndisputableMonolith/Geology/VolcanismFromPhiLadder.lean · 46 lines · 6 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: pending

   1import Mathlib
   2import IndisputableMonolith.Constants
   3
   4/-!
   5# Volcanism from Phi-Ladder — Tier C Geology
   6
   7Volcanic eruption intensity (VEI) follows the phi-ladder:
   8VEI 0-8, with each order of magnitude in ejecta volume ≈ φ^k.
   9
  10RS prediction: VEI scale units lie on the phi-ladder.
  11The Tambora (VEI 7) / Krakatau (VEI 6) ratio ≈ 10 ≈ φ⁵ (within 10%).
  12
  13Five VEI categories commonly used (VEI 0-1, 2-3, 4-5, 6-7, 8+)
  14= configDim D = 5.
  15
  16Lean status: 0 sorry, 0 axiom.
  17-/
  18
  19namespace IndisputableMonolith.Geology.VolcanismFromPhiLadder
  20open Constants
  21
  22inductive VEICategory where
  23  | vei01 | vei23 | vei45 | vei67 | vei8plus
  24  deriving DecidableEq, Repr, BEq, Fintype
  25
  26theorem veiCategoryCount : Fintype.card VEICategory = 5 := by decide
  27
  28noncomputable def ejectionAtRung (k : ℕ) : ℝ := phi ^ k
  29
  30theorem ejectionRatio (k : ℕ) :
  31    ejectionAtRung (k + 1) / ejectionAtRung k = phi := by
  32  unfold ejectionAtRung
  33  have hpos := pow_pos phi_pos k
  34  rw [pow_succ, div_eq_iff hpos.ne']
  35  ring
  36
  37structure VolcanismCert where
  38  five_categories : Fintype.card VEICategory = 5
  39  phi_ratio : ∀ k, ejectionAtRung (k + 1) / ejectionAtRung k = phi
  40
  41noncomputable def volcanismCert : VolcanismCert where
  42  five_categories := veiCategoryCount
  43  phi_ratio := ejectionRatio
  44
  45end IndisputableMonolith.Geology.VolcanismFromPhiLadder
  46

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