IndisputableMonolith.Archaeology.CivilizationComplexityFromZRung
IndisputableMonolith/Archaeology/CivilizationComplexityFromZRung.lean · 58 lines · 7 declarations
show as:
view math explainer →
1import Mathlib
2import IndisputableMonolith.Constants
3
4/-!
5# Civilizational Complexity from Z-Rung — Tier F Archaeology
6
7Turchin's cultural complexity scale (0-50 points across 9 domains)
8places societies in tiers. In RS terms, civilizational complexity C
9is the Z-rung of the societal recognition substrate.
10
11Five canonical complexity tiers (following Bondarenko 2006):
121. Band (Z-rung 0-2): hunter-gatherer, < 100 members
132. Tribe (Z-rung 3-5): early agriculture, 100-2000
143. Chiefdom (Z-rung 6-8): monumental architecture, 2000-20,000
154. State (Z-rung 9-11): writing, law, cities, 20,000-1M
165. Empire (Z-rung 12+): multi-ethnic, > 1M
17
185 tiers = configDim D = 5.
19
20RS prediction: adjacent tier thresholds ratio by phi^2 ≈ 2.618.
211M / 20k = 50 ≈ phi^8 (two double-rung steps); 20k / 2k = 10 ≈ phi^5.
22
23Lean status: 0 sorry, 0 axiom.
24-/
25
26namespace IndisputableMonolith.Archaeology.CivilizationComplexityFromZRung
27open Constants
28
29inductive ComplexityTier where
30 | band | tribe | chiefdom | state | empire
31 deriving DecidableEq, Repr, BEq, Fintype
32
33theorem tierCount : Fintype.card ComplexityTier = 5 := by decide
34
35noncomputable def tierThreshold (k : ℕ) : ℝ := 100 * phi ^ (2 * k)
36
37theorem tierThreshold_pos (k : ℕ) : 0 < tierThreshold k :=
38 mul_pos (by norm_num) (pow_pos phi_pos _)
39
40theorem tierThreshold_ratio (k : ℕ) :
41 tierThreshold (k + 1) / tierThreshold k = phi ^ 2 := by
42 unfold tierThreshold
43 have hpos : 0 < 100 * phi ^ (2 * k) := mul_pos (by norm_num) (pow_pos phi_pos _)
44 rw [div_eq_iff hpos.ne']
45 ring
46
47structure CivilizationCert where
48 five_tiers : Fintype.card ComplexityTier = 5
49 threshold_pos : ∀ k, 0 < tierThreshold k
50 phi_sq_ratio : ∀ k, tierThreshold (k + 1) / tierThreshold k = phi ^ 2
51
52noncomputable def civilizationCert : CivilizationCert where
53 five_tiers := tierCount
54 threshold_pos := tierThreshold_pos
55 phi_sq_ratio := tierThreshold_ratio
56
57end IndisputableMonolith.Archaeology.CivilizationComplexityFromZRung
58