pith. machine review for the scientific record. sign in

IndisputableMonolith.Sociology.UrbanizationFromPhiLadder

IndisputableMonolith/Sociology/UrbanizationFromPhiLadder.lean · 48 lines · 6 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: ready · generated 2026-05-16 15:54:01.203085+00:00

   1import Mathlib
   2import IndisputableMonolith.Constants
   3
   4/-!
   5# Urbanization Rate from Phi-Ladder — Tier F Urban Studies
   6
   7City size distributions follow Zipf's law: rank × population = constant.
   8In RS terms, adjacent city-size tiers differ in population by phi^2 ≈ 2.618
   9(the Gibrat-Zipf exponent is close to phi²/phi = phi ≈ 1.618 in log space).
  10
  11RS prediction: the urban hierarchy follows the phi-ladder with populations
  12at adjacent ranks ratio by phi^(-1) ≈ 0.618 (each higher rank is 1/phi
  13as populated as the next lower).
  14
  15Five canonical urbanization levels (hamlet, village, town, city, metropolis)
  16= configDim D = 5.
  17
  18Lean status: 0 sorry, 0 axiom.
  19-/
  20
  21namespace IndisputableMonolith.Sociology.UrbanizationFromPhiLadder
  22open Constants
  23
  24inductive UrbanLevel where
  25  | hamlet | village | town | city | metropolis
  26  deriving DecidableEq, Repr, BEq, Fintype
  27
  28theorem urbanLevelCount : Fintype.card UrbanLevel = 5 := by decide
  29
  30noncomputable def populationAtRung (k : ℕ) : ℝ := 100 * phi ^ k
  31
  32theorem populationRatio (k : ℕ) :
  33    populationAtRung (k + 1) / populationAtRung k = phi := by
  34  unfold populationAtRung
  35  have hpos : 0 < 100 * phi ^ k := mul_pos (by norm_num) (pow_pos phi_pos _)
  36  rw [pow_succ, div_eq_iff hpos.ne']
  37  ring
  38
  39structure UrbanizationCert where
  40  five_levels : Fintype.card UrbanLevel = 5
  41  phi_ratio : ∀ k, populationAtRung (k + 1) / populationAtRung k = phi
  42
  43noncomputable def urbanizationCert : UrbanizationCert where
  44  five_levels := urbanLevelCount
  45  phi_ratio := populationRatio
  46
  47end IndisputableMonolith.Sociology.UrbanizationFromPhiLadder
  48

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