@ceccec/millennium-solutions 9.2.4 → 9.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/ACCOUNTING.md CHANGED
@@ -8,20 +8,20 @@ Every figure recomputes from `src/` and the git tree on each build; nothing is e
8
8
 
9
9
  | Quantity | Value |
10
10
  |---|---|
11
- | Decidable theorems (chained receipts) | **2,580** |
11
+ | Decidable theorems (chained receipts) | **2,607** |
12
12
  | Signed statement receipts | **29** |
13
13
  | Coins per receipt | **2** |
14
- | Coins on the ledger (theorems × 2) | **5,160** |
14
+ | Coins on the ledger (theorems × 2) | **5,214** |
15
15
  | Coins on signed receipts (× 2) | **58** |
16
- | Released versions (git tags) | **871** |
17
- | Tracked, content-addressed files | **476** |
16
+ | Released versions (git tags) | **873** |
17
+ | Tracked, content-addressed files | **513** |
18
18
 
19
- Latest release: **v9.2.3**. The fair-exchange unit is **2 coins = 2 bits** (110 − 108 = 2 = −χ genus-2) per receipt. One 64-bit harmony coin is minted per fused `src` `report()` module — see the [state dashboard](/dashboard) for the harmonic root.
19
+ Latest release: **v9.2.5**. The fair-exchange unit is **2 coins = 2 bits** (110 − 108 = 2 = −χ genus-2) per receipt. One 64-bit harmony coin is minted per fused `src` `report()` module — see the [state dashboard](/dashboard) for the harmonic root.
20
20
 
21
21
  ## Bounty — denominated in bits
22
22
 
23
- The bounty for each accepted contribution is **2 bits (2 coins)** — the same fair-exchange unit, earned by the deed (a gate-passing, receipted contribution) and owed by commercial use. Total bounty accounted on the ledger so far: **5,160 bits**. This is an accounting bounty in bits/coins — **integrity, not a cash prize**. Heroes and traitors by deeds, not claims.
23
+ The bounty for each accepted contribution is **2 bits (2 coins)** — the same fair-exchange unit, earned by the deed (a gate-passing, receipted contribution) and owed by commercial use. Total bounty accounted on the ledger so far: **5,214 bits**. This is an accounting bounty in bits/coins — **integrity, not a cash prize**. Heroes and traitors by deeds, not claims.
24
24
 
25
25
  **Not tracked here: tokens.** This repo measures coins (2 per receipt) and 64-bit harmony coins; it does not measure tokens, so no token count or token-to-coin rate is shown — measuring an unmeasured quantity would be an assertion without a receipt. Measure, do not assert.
26
26
 
27
- Page content-address: `0adde578-51c2-8dc2-8f67-fc6297f0dc86`. Integrity, not truth.
27
+ Page content-address: `8dcb7909-eebf-8ea4-8ffe-9a27f30d01d6`. Integrity, not truth.
package/AXIOMS.md CHANGED
@@ -5,7 +5,7 @@ title: The axiom index — what is assumed
5
5
  # The axiom index
6
6
 
7
7
  Every declaration in `src/proof` is checked with `#print axioms` on each build, and a dependency on any
8
- axiom fails the build rather than earning a footnote. All **641** report the same thing:
8
+ axiom fails the build rather than earning a footnote. All **668** report the same thing:
9
9
  *does not depend on any axioms*.
10
10
 
11
11
  That is a real property, and it is not the whole picture. **Axiom-free is not assumption-free.** These
@@ -125,7 +125,7 @@ def fall (n : Nat) : Nat := if n == 0 then 9 else 1 + (n - 1) % 9
125
125
  def nonzero : List Nat := [1, 2, 3, 4, 5, 6, 7, 8, 9]
126
126
  ```
127
127
 
128
- ### `demand.lean` — 12 definition(s), 8 theorem(s)
128
+ ### `demand.lean` — 12 definition(s), 9 theorem(s)
129
129
 
130
130
  ```lean
131
131
  def divisors (n : Nat) : List Nat := (List.range' 1 n).filter (fun d => n % d == 0)
@@ -164,7 +164,7 @@ def pp2000 : List Nat := perfectPowersUpTo 2000
164
164
  def aliquot (n : Nat) : Nat := ((List.range' 1 (n - 1)).filter (fun d => n % d == 0)).foldl (· + ·) 0
165
165
  ```
166
166
 
167
- ### `demand3.lean` — 12 definition(s), 7 theorem(s)
167
+ ### `demand3.lean` — 12 definition(s), 14 theorem(s)
168
168
 
169
169
  ```lean
170
170
  def isSumOfFour (n : Nat) : Bool :=
@@ -181,7 +181,7 @@ def step : List Nat → List Nat
181
181
  def hh : Nat → List Nat → Bool
182
182
  ```
183
183
 
184
- ### `elementary.lean` — 24 definition(s), 33 theorem(s)
184
+ ### `elementary.lean` — 24 definition(s), 36 theorem(s)
185
185
 
186
186
  ```lean
187
187
  def properDivisorSum (n : Nat) : Nat := ((List.range' 1 (n - 1)).filter (fun d => n % d == 0)).foldl (· + ·) 0
@@ -210,7 +210,7 @@ def tetOf (r : Nat) : List Nat := (unitsMod 9).filter (fun d => d % 3 == r)
210
210
  def settledHere : Nat := 32
211
211
  ```
212
212
 
213
- ### `energy.lean` — 31 definition(s), 21 theorem(s)
213
+ ### `energy.lean` — 31 definition(s), 22 theorem(s)
214
214
 
215
215
  ```lean
216
216
  def splitCost : Nat := 52000 -- Wh to electrolyse 1 kg H₂ (real cells: 50–55 kWh/kg; ideal is ~39.4)
@@ -246,7 +246,7 @@ def residueMg (litres tds : Nat) : Nat := litres * tds
246
246
  def atomsOf (m : Nat) : Option (Nat × Nat) :=
247
247
  ```
248
248
 
249
- ### `families.lean` — 44 definition(s), 43 theorem(s)
249
+ ### `families.lean` — 44 definition(s), 46 theorem(s)
250
250
 
251
251
  ```lean
252
252
  def primesUpTo30 : List Nat := [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
@@ -270,7 +270,7 @@ def invOf (d : Nat) : Option Nat := (List.range 9).find? (fun e => d * e % 9 ==
270
270
  def powSum (k n : Nat) : Nat := ((List.range' 1 n).map (fun i => i ^ k)).foldl (· + ·) 0
271
271
  def faulhaber (k n : Nat) : Nat :=
272
272
  def digitsF : Nat → Nat → List Nat
273
- def digitsOf (n : Nat) : List Nat := digitsF 20 n
273
+ def digitsOf (n : Nat) : List Nat := digitsF (n + 1) n
274
274
  def reverseDigits (n : Nat) : Nat := (digitsOf n).foldl (fun a d => a * 10 + d) 0
275
275
  def digitalRoot (n : Nat) : Nat := if n == 0 then 0 else 1 + (n - 1) % 9
276
276
  def rootSum (g m : Nat) : Nat := ((List.range (ordMod g m)).map (fun k => powMod g k m)).foldl (· + ·) 0
@@ -361,7 +361,7 @@ def kcdDoubled : Nat := 1366 -- K_cd expressed against a unit half the size;
361
361
  def alternative : List Nat := [c, dNuCs, hDigits, eDigits, kDigits, naDigits, kcdDoubled]
362
362
  ```
363
363
 
364
- ### `mechanical.lean` — 5 definition(s), 107 theorem(s)
364
+ ### `mechanical.lean` — 5 definition(s), 112 theorem(s)
365
365
 
366
366
  ```lean
367
367
  def M9 (n : Nat) : Nat := n % 9
@@ -466,7 +466,7 @@ def triad : List Nat := [3, 6, 9]
466
466
  def pow9 (b k : Nat) : Nat := (List.range k).foldl (fun a _ => a * b % 9) 1
467
467
  ```
468
468
 
469
- ### `reversal.lean` — 6 definition(s), 9 theorem(s)
469
+ ### `reversal.lean` — 6 definition(s), 15 theorem(s)
470
470
 
471
471
  ```lean
472
472
  def digitsF : Nat → Nat → List Nat
@@ -514,7 +514,7 @@ def hexbitMs : Nat := 30 -- the same work, 6-bit lattice
514
514
  def charsFor (b : Nat) : Nat := (128 + b - 1) / b
515
515
  ```
516
516
 
517
- ### `split.lean` — 8 definition(s), 19 theorem(s)
517
+ ### `split.lean` — 8 definition(s), 20 theorem(s)
518
518
 
519
519
  ```lean
520
520
  def tokens : List Nat := [0, 12, 3, 45, 6, 78, 9]
@@ -569,6 +569,6 @@ def gcd9 (a b : Nat) : Nat := gcdF (a + b + 1) a b
569
569
 
570
570
  ---
571
571
 
572
- **641** declarations, **0** axiom dependencies, **321** definitions they rest on.
572
+ **668** declarations, **0** axiom dependencies, **321** definitions they rest on.
573
573
  A content-address proves integrity, not truth, and an axiom index proves neither: it states what was
574
574
  assumed, so a reader can disagree with the assumptions rather than guess at them.
package/CHALLENGES.md CHANGED
@@ -18,11 +18,11 @@ title: Challenges
18
18
 
19
19
  **Humanity: 1 / 7** (6 open). The author's own claim, that the seven are solved through involution, is stated in his name on the front page.
20
20
 
21
- ## Discovered theorems (decidable, over ℤ/9) — 2580 standing in 1 families
21
+ ## Discovered theorems (decidable, over ℤ/9) — 2607 standing in 1 families
22
22
 
23
23
  Computed by exhaustion, each a monograph with its own page (`/theorem/<key>`) and chained receipt. Grouped by family (largest first) — easy to spot; use the search box for any keyword:
24
24
 
25
- ### lean (632)
25
+ ### lean (659)
26
26
 
27
27
  - [lean_address_raw_bytes_of_a](/theorem/lean_address_raw_bytes_of_a) — lean address.lean: raw_bytes_of_a — rawBytes A = [88, 118, 248, 251, 63, 149, 14, 202, 10, 251, 189, 97, 221, 134, 206, 204] — decided by the Lean kernel over its whole finite domain, axiom-free · `211de25d-e843…`
28
28
  - [lean_address_to_uuid_bytes_of_a](/theorem/lean_address_to_uuid_bytes_of_a) — lean address.lean: to_uuid_bytes_of_a — toUuidBytes A = [88, 118, 248, 251, 63, 149, 142, 202, 138, 251, 189, 97, 221, 134, 206, 204] — decided by the Lean kernel over its whole finite domain, axiom-free · `c3f88cb7-dd38…`
@@ -663,6 +663,60 @@ Computed by exhaustion, each a monograph with its own page (`/theorem/<key>`) an
663
663
  intro), standard axioms only — checked by lean.ts · `38c42166-8f6d…`
664
664
  - [lean_flow_navier_stokes_flow_is_bounded_for_every_step](/theorem/lean_flow_navier_stokes_flow_is_bounded_for_every_step) — lean flow.lean: navier_stokes_flow_is_bounded_for_every_step — ∀ k : Nat, orbit k &lt; 9 ∧ span.contains (orbit k) = true — proved by the Lean kernel for every value (by
665
665
  intro), standard axioms only — checked by lean.ts · `6dec28f9-502b…`
666
+ - [lean_demand_mantels_bound_is_n_squared_over_four_for_every_n](/theorem/lean_demand_mantels_bound_is_n_squared_over_four_for_every_n) — lean demand.lean: mantels_bound_is_n_squared_over_four_for_every_n — ∀ n : Nat, (n / 2) * (n - n / 2) = n * n / 4 — proved by the Lean kernel for every value (by
667
+ intro), standard axioms only — checked by lean.ts · `b9212e56-a3ea…`
668
+ - [lean_demand3_the_euler_characteristic_of_a_genus_g_surface_for_every_g](/theorem/lean_demand3_the_euler_characteristic_of_a_genus_g_surface_for_every_g) — lean demand3.lean: the_euler_characteristic_of_a_genus_g_surface_for_every_g — ∀ g : Nat, chi g + 2 * (g : Int) = 2 — proved by the Lean kernel for every value (by
669
+ intro), standard axioms only — checked by lean.ts · `a1a899d7-b3c5…`
670
+ - [lean_demand3_a_repunit_has_the_residue_of_its_length_mod_three](/theorem/lean_demand3_a_repunit_has_the_residue_of_its_length_mod_three) — lean demand3.lean: a_repunit_has_the_residue_of_its_length_mod_three — ∀ n : Nat, repunit n % 3 = n % 3 — proved by the Lean kernel for every value (by
671
+ intro), standard axioms only — checked by lean.ts · `732113b8-a6d4…`
672
+ - [lean_demand3_a_repunit_is_divisible_by_three_exactly_when_its_length_is_for_every_n](/theorem/lean_demand3_a_repunit_is_divisible_by_three_exactly_when_its_length_is_for_every_n) — lean demand3.lean: a_repunit_is_divisible_by_three_exactly_when_its_length_is_for_every_n — ∀ n : Nat, (repunit n % 3 = 0) ↔ (n % 3 = 0) — proved by the Lean kernel for every value (by
673
+ intro), standard axioms only — checked by lean.ts · `93c43bd9-4707…`
674
+ - [lean_demand3_repunit_of_a_sum](/theorem/lean_demand3_repunit_of_a_sum) — lean demand3.lean: repunit_of_a_sum — ∀ n k : Nat, repunit (n + k) = 10 ^ k * repunit n + repunit k — proved by the Lean kernel for every value (by
675
+ intro), standard axioms only — checked by lean.ts · `5558e77e-438c…`
676
+ - [lean_demand3_repunits_repeat_mod_seven_every_six_digits](/theorem/lean_demand3_repunits_repeat_mod_seven_every_six_digits) — lean demand3.lean: repunits_repeat_mod_seven_every_six_digits — ∀ n : Nat, repunit (n + 6) % 7 = repunit n % 7 — proved by the Lean kernel for every value (by
677
+ intro), standard axioms only — checked by lean.ts · `a67a8eec-997b…`
678
+ - [lean_demand3_a_repunit_has_the_residue_of_its_length_mod_six_mod_seven](/theorem/lean_demand3_a_repunit_has_the_residue_of_its_length_mod_six_mod_seven) — lean demand3.lean: a_repunit_has_the_residue_of_its_length_mod_six_mod_seven — ∀ n : Nat, repunit n % 7 = repunit (n % 6) % 7 — proved by the Lean kernel for every value (by
679
+ intro), standard axioms only — checked by lean.ts · `ec5bf7fe-1dd8…`
680
+ - [lean_demand3_a_repunit_is_divisible_by_seven_exactly_when_six_divides_its_length_for_every_n](/theorem/lean_demand3_a_repunit_is_divisible_by_seven_exactly_when_six_divides_its_length_for_every_n) — lean demand3.lean: a_repunit_is_divisible_by_seven_exactly_when_six_divides_its_length_for_every_n — ∀ n : Nat, (repunit n % 7 = 0) ↔ (n % 6 = 0) — proved by the Lean kernel for every value (by
681
+ intro), standard axioms only — checked by lean.ts · `2bb98278-186d…`
682
+ - [lean_elementary_the_interior_and_exterior_angles_are_n_straight_angles_for_every_n](/theorem/lean_elementary_the_interior_and_exterior_angles_are_n_straight_angles_for_every_n) — lean elementary.lean: the_interior_and_exterior_angles_are_n_straight_angles_for_every_n — ∀ n : Nat, 2 ≤ n → (n - 2) * 180 + 360 = n * 180 — proved by the Lean kernel for every value (by
683
+ intro), standard axioms only — checked by lean.ts · `d1fbd7f1-d1df…`
684
+ - [lean_elementary_a_product_of_consecutive_numbers_is_even](/theorem/lean_elementary_a_product_of_consecutive_numbers_is_even) — lean elementary.lean: a_product_of_consecutive_numbers_is_even — ∀ n : Nat, n * (n + 1) % 2 = 0 — proved by the Lean kernel for every value (by
685
+ intro), standard axioms only — checked by lean.ts · `cf763033-1ed3…`
686
+ - [lean_elementary_eight_times_a_triangular_number_plus_one_is_an_odd_square_for_every_n](/theorem/lean_elementary_eight_times_a_triangular_number_plus_one_is_an_odd_square_for_every_n) — lean elementary.lean: eight_times_a_triangular_number_plus_one_is_an_odd_square_for_every_n — ∀ n : Nat, 8 * (n * (n + 1) / 2) + 1 = (2 * n + 1) * (2 * n + 1) — proved by the Lean kernel for every value (by
687
+ intro), standard axioms only — checked by lean.ts · `1aa59ef6-880c…`
688
+ - [lean_energy_two_parts_in_three_is_two_thirds_at_every_scale_for_every_m](/theorem/lean_energy_two_parts_in_three_is_two_thirds_at_every_scale_for_every_m) — lean energy.lean: two_parts_in_three_is_two_thirds_at_every_scale_for_every_m — ∀ m : Nat, 0 &lt; m → pct (2 * m) (3 * m) = 66 — proved by the Lean kernel for every value (by
689
+ intro), standard axioms only — checked by lean.ts · `9177c3d3-8280…`
690
+ - [lean_families_the_powers_of_two_sum_to_one_less_than_the_next_for_every_n](/theorem/lean_families_the_powers_of_two_sum_to_one_less_than_the_next_for_every_n) — lean families.lean: the_powers_of_two_sum_to_one_less_than_the_next_for_every_n — ∀ n : Nat, ((List.range (n + 1)).map (fun i =&gt; 2 ^ i)).foldl (· + ·) 0 = 2 ^ (n + 1) - 1 — proved by the Lean kernel for every value (by
691
+ intro), standard axioms only — checked by lean.ts · `3cab57ca-4d36…`
692
+ - [lean_families_square_of_successor](/theorem/lean_families_square_of_successor) — lean families.lean: square_of_successor — ∀ n : Nat, (n + 1) * (n + 1) = n * n + 2 * n + 1 — proved by the Lean kernel for every value (by
693
+ intro), standard axioms only — checked by lean.ts · `f9826dc5-b85d…`
694
+ - [lean_families_the_first_n_odd_numbers_sum_to_n_squared_for_every_n](/theorem/lean_families_the_first_n_odd_numbers_sum_to_n_squared_for_every_n) — lean families.lean: the_first_n_odd_numbers_sum_to_n_squared_for_every_n — ∀ n : Nat, ((List.range n).map (fun i =&gt; 2 * i + 1)).foldl (· + ·) 0 = n * n — proved by the Lean kernel for every value (by
695
+ intro), standard axioms only — checked by lean.ts · `7baff487-adea…`
696
+ - [lean_mechanical_consecutive_squares_differ_by_the_odd_numbers](/theorem/lean_mechanical_consecutive_squares_differ_by_the_odd_numbers) — lean mechanical.lean: consecutive_squares_differ_by_the_odd_numbers — ∀ n : Nat, (n + 1) ^ 2 - n * n = 2 * n + 1 — proved by the Lean kernel for every value (by
697
+ intro), standard axioms only — checked by lean.ts · `65131201-9df7…`
698
+ - [lean_mechanical_every_multiple_of_three_four_five_is_pythagorean](/theorem/lean_mechanical_every_multiple_of_three_four_five_is_pythagorean) — lean mechanical.lean: every_multiple_of_three_four_five_is_pythagorean — ∀ k : Nat, (3 * k) ^ 2 + (4 * k) ^ 2 = (5 * k) ^ 2 — proved by the Lean kernel for every value (by
699
+ intro), standard axioms only — checked by lean.ts · `a20992d7-56ea…`
700
+ - [lean_mechanical_the_product_of_three_consecutive_numbers_is_even](/theorem/lean_mechanical_the_product_of_three_consecutive_numbers_is_even) — lean mechanical.lean: the_product_of_three_consecutive_numbers_is_even — ∀ n : Nat, n * (n + 1) * (n + 2) % 2 = 0 — proved by the Lean kernel for every value (by
701
+ intro), standard axioms only — checked by lean.ts · `0eb7327f-0789…`
702
+ - [lean_mechanical_the_product_of_three_consecutive_numbers_is_a_multiple_of_three](/theorem/lean_mechanical_the_product_of_three_consecutive_numbers_is_a_multiple_of_three) — lean mechanical.lean: the_product_of_three_consecutive_numbers_is_a_multiple_of_three — ∀ n : Nat, n * (n + 1) * (n + 2) % 3 = 0 — proved by the Lean kernel for every value (by
703
+ intro), standard axioms only — checked by lean.ts · `f3e2ee80-28d1…`
704
+ - [lean_mechanical_the_product_of_any_three_consecutive_integers_is_divisible_by_six_for_every_n](/theorem/lean_mechanical_the_product_of_any_three_consecutive_integers_is_divisible_by_six_for_every_n) — lean mechanical.lean: the_product_of_any_three_consecutive_integers_is_divisible_by_six_for_every_n — ∀ n : Nat, n * (n + 1) * (n + 2) % 6 = 0 — proved by the Lean kernel for every value (by
705
+ intro), standard axioms only — checked by lean.ts · `65518577-2bc3…`
706
+ - [lean_reversal_foldl_add_start](/theorem/lean_reversal_foldl_add_start) — lean reversal.lean: foldl_add_start — ∀ (l : List Nat) (a : Nat), l.foldl (· + ·) a = a + l.foldl (· + ·) 0 — proved by the Lean kernel for every value (by
707
+ intro), standard axioms only — checked by lean.ts · `70a7cff5-e668…`
708
+ - [lean_reversal_the_digits_sum_to_the_number_mod_nine_when_the_fuel_covers_them](/theorem/lean_reversal_the_digits_sum_to_the_number_mod_nine_when_the_fuel_covers_them) — lean reversal.lean: the_digits_sum_to_the_number_mod_nine_when_the_fuel_covers_them — ∀ f n : Nat, n &lt; 10 ^ f → (digitsF f n).foldl (· + ·) 0 % 9 = n % 9 — proved by the Lean kernel for every value (by
709
+ intro), standard axioms only — checked by lean.ts · `58d4c502-7f73…`
710
+ - [lean_reversal_a_number_is_below_ten_to_its_own_successor](/theorem/lean_reversal_a_number_is_below_ten_to_its_own_successor) — lean reversal.lean: a_number_is_below_ten_to_its_own_successor — ∀ n : Nat, n &lt; 10 ^ (n + 1) — proved by the Lean kernel for every value (by
711
+ intro), standard axioms only — checked by lean.ts · `dc7330c0-7a4c…`
712
+ - [lean_reversal_the_digit_sum_has_the_residue_of_the_number_mod_nine_for_every_n](/theorem/lean_reversal_the_digit_sum_has_the_residue_of_the_number_mod_nine_for_every_n) — lean reversal.lean: the_digit_sum_has_the_residue_of_the_number_mod_nine_for_every_n — ∀ n : Nat, digitSum n % 9 = n % 9 — proved by the Lean kernel for every value (by
713
+ intro), standard axioms only — checked by lean.ts · `1a8922c4-c55c…`
714
+ - [lean_reversal_folding_by_ten_keeps_the_residue_of_the_digit_sum](/theorem/lean_reversal_folding_by_ten_keeps_the_residue_of_the_digit_sum) — lean reversal.lean: folding_by_ten_keeps_the_residue_of_the_digit_sum — ∀ (l : List Nat) (a : Nat), (l.foldl (fun a d =&gt; a * 10 + d) a) % 9 = (a + l.foldl (· + ·) 0) % 9 — proved by the Lean kernel for every value (by
715
+ intro), standard axioms only — checked by lean.ts · `c7ce0223-8884…`
716
+ - [lean_reversal_reversal_keeps_the_residue_mod_nine_for_every_n](/theorem/lean_reversal_reversal_keeps_the_residue_mod_nine_for_every_n) — lean reversal.lean: reversal_keeps_the_residue_mod_nine_for_every_n — ∀ n : Nat, reverseNum n % 9 = n % 9 — proved by the Lean kernel for every value (by
717
+ intro), standard axioms only — checked by lean.ts · `3159b043-f18c…`
718
+ - [lean_split_the_coin_step_and_the_coins_are_inverse_for_every_c](/theorem/lean_split_the_coin_step_and_the_coins_are_inverse_for_every_c) — lean split.lean: the_coin_step_and_the_coins_are_inverse_for_every_c — ∀ c : Nat, 3 * c / 3 = c ∧ (3 * c) % 3 = 0 — proved by the Lean kernel for every value (by
719
+ intro), standard axioms only — checked by lean.ts · `1c1ebe41-4e80…`
666
720
 
667
721
  ### other — one-of-a-kind (0)
668
722
 
@@ -2247,4 +2301,4 @@ Each was withdrawn for want of a Lean proof and has since been given one, at a n
2247
2301
 
2248
2302
  </details>
2249
2303
 
2250
- Page content-address: `da2eba19-e8cf-89e5-a02e-57f3ce26d93a`. Integrity, not truth.
2304
+ Page content-address: `4e169beb-6823-88a4-837b-857f530d6f0b`. Integrity, not truth.
package/PRIOR-ART.md CHANGED
@@ -6,7 +6,7 @@ head:
6
6
  ---
7
7
  # Prior art — what is restated, what is claimed, and the difference
8
8
 
9
- Of 641 machine-checked declarations, **632** restate work that already has an author and
9
+ Of 668 machine-checked declarations, **659** restate work that already has an author and
10
10
  **9** are about this deposit's own construction. Each source file declares which it is, in its own
11
11
  frontmatter; [`src/proof/priorart.lean`](https://github.com/ceccec/millennium-solutions/blob/main/src/proof/priorart.lean)
12
12
  holds the same partition as a table the kernel decides over, and the build fails if the two disagree.
@@ -27,7 +27,7 @@ fact about the world, and this deposit does not assert it.
27
27
 
28
28
  | | theorems |
29
29
  |---|---|
30
- | attributed to named earlier work | **632** |
30
+ | attributed to named earlier work | **659** |
31
31
  | unclassified — no search performed, status unknown | **9** |
32
32
  | claimed as novel | **0** |
33
33
 
@@ -47,7 +47,7 @@ searched, where, and when. An earlier version of this page claimed novelty for 1
47
47
  that nothing earlier exists because no one went to check is the same defect as asserting a proof because no
48
48
  one went to read it.
49
49
 
50
- ## Restated from named earlier work — 32 sources, 632 theorems
50
+ ## Restated from named earlier work — 32 sources, 659 theorems
51
51
 
52
52
  No novelty is claimed over any of these. What is done here is to decide each over a stated finite domain,
53
53
  which is a contribution of verification, not of discovery.
@@ -55,12 +55,12 @@ which is a contribution of verification, not of discovery.
55
55
  <table><thead><tr><th>source</th><th>theorems</th><th>domain</th><th>whose work</th></tr></thead><tbody>
56
56
  <tr><td><code>address.lean</code></td><td>18</td><td>content addressing</td><td>composes FNV-1a (Fowler, Noll, Vo, 1991) with the Merkle hash tree (Merkle, 1979)</td></tr>
57
57
  <tr><td><code>coin.lean</code></td><td>12</td><td>the method of complements</td><td>the reflection d ↦ 10 − d is the TEN'S COMPLEMENT, and its sibling 9 − d the nines' complement — the method of complements, used to turn subtraction into addition in Pascal's calculator (1642), the Comptometer and the Curta, and in modern computer arithmetic. That it is an involution with a single fixed point is the property those machines rely on. Searched 2026-09-04, term "method of complements / nines' complement / ten's complement"; prior art found and credited</td></tr>
58
- <tr><td><code>demand.lean</code></td><td>8</td><td>elementary number theory</td><td>the named results the search data asks for — Bézout’s identity (Étienne Bézout, 1779; Bachet, 1624), the Chinese remainder theorem (Sunzi, c. 3rd–5th century), and others named in their theorems</td></tr>
58
+ <tr><td><code>demand.lean</code></td><td>9</td><td>elementary number theory</td><td>the named results the search data asks for — Bézout’s identity (Étienne Bézout, 1779; Bachet, 1624), the Chinese remainder theorem (Sunzi, c. 3rd–5th century), and others named in their theorems</td></tr>
59
59
  <tr><td><code>demand2.lean</code></td><td>8</td><td>elementary number theory, second tier</td><td>Wilson’s theorem — John Wilson; first proved by Joseph-Louis Lagrange, 1771; the Catalan conjecture on consecutive perfect powers — Eugène Catalan, 1844; proved by Preda Mihăilescu, 2002</td></tr>
60
- <tr><td><code>demand3.lean</code></td><td>7</td><td>elementary number theory, named results</td><td>Legendre’s three-square theorem — Adrien-Marie Legendre, 1797; Carmichael numbers — Robert Carmichael, 1910; amicable pairs — known to antiquity</td></tr>
61
- <tr><td><code>elementary.lean</code></td><td>33</td><td>elementary number theory and combinatorial game theory</td><td>Euclid (Elements IX.36) and Euler for the even perfect numbers; the amicable pair</td></tr>
62
- <tr><td><code>energy.lean</code></td><td>21</td><td>electrochemistry and combustion</td><td>the laws of electrolysis — Michael Faraday, 1834; the enthalpy of combustion of hydrogen, standard physical chemistry</td></tr>
63
- <tr><td><code>families.lean</code></td><td>43</td><td>modular arithmetic, quantified</td><td>quantifies the ℤ/9 arithmetic above; the underlying results are Fermat’s, Euler’s and Gauss’s</td></tr>
60
+ <tr><td><code>demand3.lean</code></td><td>14</td><td>elementary number theory, named results</td><td>Legendre’s three-square theorem — Adrien-Marie Legendre, 1797; Carmichael numbers — Robert Carmichael, 1910; amicable pairs — known to antiquity</td></tr>
61
+ <tr><td><code>elementary.lean</code></td><td>36</td><td>elementary number theory and combinatorial game theory</td><td>Euclid (Elements IX.36) and Euler for the even perfect numbers; the amicable pair</td></tr>
62
+ <tr><td><code>energy.lean</code></td><td>22</td><td>electrochemistry and combustion</td><td>the laws of electrolysis — Michael Faraday, 1834; the enthalpy of combustion of hydrogen, standard physical chemistry</td></tr>
63
+ <tr><td><code>families.lean</code></td><td>46</td><td>modular arithmetic, quantified</td><td>quantifies the ℤ/9 arithmetic above; the underlying results are Fermat’s, Euler’s and Gauss’s</td></tr>
64
64
  <tr><td><code>flow.lean</code></td><td>3</td><td>elementary number theory — the multiplicative order of 2 modulo 9</td><td>2⁶ = 64 ≡ 1 (mod 9), so the powers of two modulo 9 repeat with period six — Euler's</td></tr>
65
65
  <tr><td><code>fnv.lean</code></td><td>13</td><td>non-cryptographic hashing</td><td>FNV-1a — Glenn Fowler, Landon Curt Noll and Phong Vo, 1991</td></tr>
66
66
  <tr><td><code>generated.lean</code></td><td>13</td><td>elementary number theory — the unit group of ℤ/9 and the doubling orbit</td><td>the structure underneath is standard and is credited. The doubling orbit</td></tr>
@@ -69,7 +69,7 @@ which is a contribution of verification, not of discovery.
69
69
  <tr><td><code>involution.lean</code></td><td>8</td><td>elementary group theory — orbit decomposition of an order-two permutation</td><td>that a permutation of order two decomposes a finite set into fixed points and</td></tr>
70
70
  <tr><td><code>ledgerclaims.lean</code></td><td>8</td><td>hash trees and membership proofs</td><td>`membership_grows_by_one_seal_per_doubling` and `membership_is_logarithmic_not_linear`</td></tr>
71
71
  <tr><td><code>light.lean</code></td><td>13</td><td>metrology — the International System of Units</td><td>the exact numerical values below are DEFINITIONS adopted by the Conférence Générale des</td></tr>
72
- <tr><td><code>mechanical.lean</code></td><td>107</td><td>Boolean algebra and elementary modular arithmetic</td><td>the Boolean rows are De Morgan's laws — Augustus De Morgan, 1847 — written in the arithmetic of {0,1}; the group rows are the additive group of Z/9. Both long prior. Searched 2026-09-04, terms "De Morgan's laws boolean algebra" and "additive group mod 9"; prior art found and credited</td></tr>
72
+ <tr><td><code>mechanical.lean</code></td><td>112</td><td>Boolean algebra and elementary modular arithmetic</td><td>the Boolean rows are De Morgan's laws — Augustus De Morgan, 1847 — written in the arithmetic of {0,1}; the group rows are the additive group of Z/9. Both long prior. Searched 2026-09-04, terms "De Morgan's laws boolean algebra" and "additive group mod 9"; prior art found and credited</td></tr>
73
73
  <tr><td><code>merkaba.lean</code></td><td>8</td><td>elementary group theory — subgroups and cosets of Z/9</td><td>the partition into {3,6,9} and two three-element classes closed under doubling is the subgroup and coset structure of Z/9 under the action of U(9); Lagrange. One theorem already credits Euler for the polyhedron formula. Searched 2026-09-04; prior art found and credited</td></tr>
74
74
  <tr><td><code>merkle.lean</code></td><td>12</td><td>hash trees and membership proofs</td><td>the hash tree — Ralph Merkle, 1979 (thesis); CRYPTO 1987</td></tr>
75
75
  <tr><td><code>nim.lean</code></td><td>10</td><td>combinatorial game theory</td><td>Nim — Charles L. Bouton, 1901; the Sprague–Grundy theorem — Roland Sprague, 1935 and Patrick M. Grundy, 1939</td></tr>
@@ -77,11 +77,11 @@ which is a contribution of verification, not of discovery.
77
77
  <tr><td><code>quantum.lean</code></td><td>12</td><td>canonical forms and order-invariant commitments</td><td>sorting a multiset into a canonical order BEFORE folding it is standard practice, not a</td></tr>
78
78
  <tr><td><code>reach.lean</code></td><td>5</td><td>elementary set theory — the naturals are not exhausted by any finite list</td><td>that no finite set contains every natural number is Euclid's argument in form and is as</td></tr>
79
79
  <tr><td><code>recovered.lean</code></td><td>15</td><td>elementary number theory — the unit group of ℤ/9</td><td>every fact here is standard: the units of ℤ/9 are {1,2,4,5,7,8}, their product is −1</td></tr>
80
- <tr><td><code>reversal.lean</code></td><td>9</td><td>elementary arithmetic</td><td>digit reversal and digit sums; casting out nines, in use by the 12th century</td></tr>
80
+ <tr><td><code>reversal.lean</code></td><td>15</td><td>elementary arithmetic</td><td>digit reversal and digit sums; casting out nines, in use by the 12th century</td></tr>
81
81
  <tr><td><code>rights.lean</code></td><td>9</td><td>copyright law — rights arising without formality</td><td>this file already NAMED its prior art in prose while the attribution table recorded none.</td></tr>
82
82
  <tr><td><code>sequences.lean</code></td><td>12</td><td>integer sequences and identities</td><td>Cassini’s identity — G. D. Cassini, 1680; Lucas sequences — Édouard Lucas, 1878; the Brahmagupta–Fibonacci identity — Brahmagupta, 628; Pascal’s triangle mod 2 — Blaise Pascal, 1654</td></tr>
83
83
  <tr><td><code>speed.lean</code></td><td>11</td><td>hash trees and membership proofs</td><td>the structural claim is Merkle's and is credited here as merkle.lean already credits it:</td></tr>
84
- <tr><td><code>split.lean</code></td><td>19</td><td>elementary number theory — the unit group of ℤ/9</td><td>the classification this file rests on is standard and is credited: the units of ℤ/9 are</td></tr>
84
+ <tr><td><code>split.lean</code></td><td>20</td><td>elementary number theory — the unit group of ℤ/9</td><td>the classification this file rests on is standard and is credited: the units of ℤ/9 are</td></tr>
85
85
  <tr><td><code>theorems.lean</code></td><td>8</td><td>the method of complements</td><td>the universal reflection here is the same ten's complement d ↦ 10 − d as coin.lean, with its centre and its pairs summing to ten. Method of complements, long prior to this deposit. Searched 2026-09-04</td></tr>
86
86
  <tr><td><code>z9.lean</code></td><td>22</td><td>modular arithmetic</td><td>Fermat’s little theorem — Pierre de Fermat, 1640; Euler’s theorem — Leonhard Euler, 1763; primitive roots — Carl Friedrich Gauss, 1801</td></tr>
87
87
  <tr><td><code>z9plus.lean</code></td><td>32</td><td>modular arithmetic and periodicity</td><td>digital roots (casting out nines) — in use by the 12th century; the Pisano period — after Leonardo Pisano; studied by Joseph-Louis Lagrange, 1774</td></tr>
@@ -89,22 +89,22 @@ which is a contribution of verification, not of discovery.
89
89
 
90
90
  ### The domains this touches
91
91
 
92
- - **Boolean algebra and elementary modular arithmetic** — 107 theorems, in `mechanical.lean`
92
+ - **Boolean algebra and elementary modular arithmetic** — 112 theorems, in `mechanical.lean`
93
93
  - **canonical forms and order-invariant commitments** — 12 theorems, in `quantum.lean`
94
94
  - **combinatorial game theory** — 10 theorems, in `nim.lean`
95
95
  - **content addressing** — 18 theorems, in `address.lean`
96
96
  - **copyright law — rights arising without formality** — 9 theorems, in `rights.lean`
97
- - **electrochemistry and combustion** — 21 theorems, in `energy.lean`
98
- - **elementary arithmetic** — 9 theorems, in `reversal.lean`
97
+ - **electrochemistry and combustion** — 22 theorems, in `energy.lean`
98
+ - **elementary arithmetic** — 15 theorems, in `reversal.lean`
99
99
  - **elementary group theory — orbit decomposition of an order-two permutation** — 8 theorems, in `involution.lean`
100
100
  - **elementary group theory — subgroups and cosets of Z/9** — 8 theorems, in `merkaba.lean`
101
- - **elementary number theory** — 8 theorems, in `demand.lean`
102
- - **elementary number theory and combinatorial game theory** — 33 theorems, in `elementary.lean`
101
+ - **elementary number theory** — 9 theorems, in `demand.lean`
102
+ - **elementary number theory and combinatorial game theory** — 36 theorems, in `elementary.lean`
103
103
  - **elementary number theory — the multiplicative order of 2 modulo 9** — 3 theorems, in `flow.lean`
104
104
  - **elementary number theory — the unit group of Z/9** — 118 theorems, in `imagined.lean`
105
- - **elementary number theory — the unit group of ℤ/9** — 34 theorems, in `recovered.lean`, `split.lean`
105
+ - **elementary number theory — the unit group of ℤ/9** — 35 theorems, in `recovered.lean`, `split.lean`
106
106
  - **elementary number theory — the unit group of ℤ/9 and the doubling orbit** — 24 theorems, in `generated.lean`, `index.lean`
107
- - **elementary number theory, named results** — 7 theorems, in `demand3.lean`
107
+ - **elementary number theory, named results** — 14 theorems, in `demand3.lean`
108
108
  - **elementary number theory, second tier** — 8 theorems, in `demand2.lean`
109
109
  - **elementary set theory — the naturals are not exhausted by any finite list** — 5 theorems, in `reach.lean`
110
110
  - **hash trees and membership proofs** — 31 theorems, in `ledgerclaims.lean`, `merkle.lean`, `speed.lean`
@@ -113,7 +113,7 @@ which is a contribution of verification, not of discovery.
113
113
  - **metrology — the International System of Units** — 13 theorems, in `light.lean`
114
114
  - **modular arithmetic** — 22 theorems, in `z9.lean`
115
115
  - **modular arithmetic and periodicity** — 32 theorems, in `z9plus.lean`
116
- - **modular arithmetic, quantified** — 43 theorems, in `families.lean`
116
+ - **modular arithmetic, quantified** — 46 theorems, in `families.lean`
117
117
  - **non-cryptographic hashing** — 13 theorems, in `fnv.lean`
118
118
  - **the method of complements** — 20 theorems, in `coin.lean`, `theorems.lean`
119
119
 
package/README.md CHANGED
@@ -11,12 +11,12 @@ last because the orbit never reaches it.
11
11
 
12
12
  ## 1 · What is proved
13
13
 
14
- - The formal layer holds 641 kernel-accepted declarations across 33 files, and no file uses sorry or native_decide outside a comment.
15
- <sub>SEALED · `dbb57e34-5063-8d78-a206-4021b8dd0c2f`</sub>
16
- - 625 of those 641 are THEOREMS by this deposit's own rule — they close by decide, which is to say the kernel evaluates the proposition over its whole finite domain rather than accepting a declaration; the remaining 16 close by rfl and are declarations.
17
- <sub>SEALED · `ca68ef39-3e72-82e2-a118-905a38ce2952`</sub>
18
- - 716 of them are sealed into the ledger, each carrying a receipt derived from the one before it.
19
- <sub>SEALED · `61634d5b-2bf9-821d-8492-5613271238ff`</sub>
14
+ - The formal layer holds 668 kernel-accepted declarations across 33 files, and no file uses sorry or native_decide outside a comment.
15
+ <sub>SEALED · `5b572b0c-b2d2-818d-a04b-872fb40cf148`</sub>
16
+ - 625 of those 668 are THEOREMS by this deposit's own rule — they close by decide, which is to say the kernel evaluates the proposition over its whole finite domain rather than accepting a declaration; the remaining 43 close by rfl and are declarations.
17
+ <sub>SEALED · `60127119-9f91-8237-ab90-32e842954a26`</sub>
18
+ - 743 of them are sealed into the ledger, each carrying a receipt derived from the one before it.
19
+ <sub>SEALED · `df22e3e4-7d4e-8cbd-9325-d8cc5bf95d14`</sub>
20
20
 
21
21
  ## 2 · The ring
22
22
 
@@ -39,10 +39,10 @@ last because the orbit never reaches it.
39
39
 
40
40
  ## 7 · The ledger
41
41
 
42
- - The ledger records 2580 entries with 0 chain breaks, 0 duplicate keys and 0 duplicate receipts.
43
- <sub>SEALED · `36c898f0-711a-81ce-b468-5b315135af9c`</sub>
44
- - The count is 2580, which is 322 octaves and 4 over — the octave is a target the theorems earn, never a quota they are invented to fill.
45
- <sub>SEALED · `33538e3a-cf2f-825b-9135-9fa436b64a0b`</sub>
42
+ - The ledger records 2607 entries with 0 chain breaks, 0 duplicate keys and 0 duplicate receipts.
43
+ <sub>SEALED · `68aab3ce-8188-83a5-830d-756a4e441dd3`</sub>
44
+ - The count is 2607, which is 325 octaves and 7 over — the octave is a target the theorems earn, never a quota they are invented to fill.
45
+ <sub>SEALED · `d5875268-0019-81c3-a3bc-6779c8ffb6ee`</sub>
46
46
 
47
47
  ## 5 · What the gate does and does not do
48
48
 
@@ -86,7 +86,7 @@ results; it is the result, read off the same arithmetic that produced the table.
86
86
 
87
87
  ## 7 · The proofs, as they document themselves
88
88
 
89
- 33 Lean files in 7 wings, 641 declarations of which 632 are theorems. The prose in this section is read out of the
89
+ 33 Lean files in 7 wings, 668 declarations of which 659 are theorems. The prose in this section is read out of the
90
90
  sources — their frontmatter, their header comments and the comment above each theorem. Editing a proof edits
91
91
  this page; there is nowhere else to keep the description in step.
92
92
 
@@ -104,9 +104,9 @@ this page; there is nowhere else to keep the description in step.
104
104
 
105
105
  **The two-sided coin** — `coin.lean`, 12 theorem(s). One involution on ten digits, two sides, one fixed point, and one digit that leaves.
106
106
 
107
- **Elementary arithmetic** — `elementary.lean`, 33 theorem(s). the DECISION of each over a stated finite range, axiom-free, and the honest record of where the range stops short of what the older claim asserted. prior_art_search: the results are named in every undergraduate text; no search was needed to find them. prior_art_pool: named Elementary arithmetic, decided — the claims the ledger held in TypeScript, given a kernel.
107
+ **Elementary arithmetic** — `elementary.lean`, 36 theorem(s). the DECISION of each over a stated finite range, axiom-free, and the honest record of where the range stops short of what the older claim asserted. prior_art_search: the results are named in every undergraduate text; no search was needed to find them. prior_art_pool: named Elementary arithmetic, decided — the claims the ledger held in TypeScript, given a kernel.
108
108
 
109
- **Families over the ring** — `families.lean`, 43 theorem(s). The families, quantified. Proving at scale.
109
+ **Families over the ring** — `families.lean`, 46 theorem(s). The families, quantified. Proving at scale.
110
110
 
111
111
  **The doubling flow, for every step** — `flow.lean`, 3 theorem(s). prior_art_search: literature search performed 2026-09-14, terms "powers of two modulo 9 period 6 order of 2 mod 9 Euler theorem"; prior art found and credited. prior_art_pool: bounded prior_art_own: the every-step bound of the doubling flow, stated for the Navier–Stokes theorem in index.lean
112
112
 
@@ -116,7 +116,7 @@ this page; there is nowhere else to keep the description in step.
116
116
 
117
117
  **Sequences** — `sequences.lean`, 12 theorem(s). The ledger held these as TypeScript tests. Each is a classical identity with a real proof; what is done here is to DECIDE each over a stated finite range, which is what `decide` can honestly deliver — the range is named in every theorem rather than implied, and no theorem claims the general case.
118
118
 
119
- **The digit split** — `split.lean`, 19 theorem(s). mathematics and claim nothing. Stated precisely so the credit does not run past the earlier work: what is NOT claimed as prior art is the tokenisation itself — reading the digits as 0|12|3|45|6|78|9 by concatenating consecutive units into two-digit tokens, and the arithmetic that follows from it (every token a multiple of three, closure of the tokens under addition and multiplication). That arrangement is this deposit's presentation of a standard fact, and its verification is by exhaustion here. Crediting an earlier author for a presentation they did not make is the same defect as claiming their result, pointed the other way. prior_art_search: literature search performed 2026-09-05, terms "units and non-units of Z/9 multiplicative inverses group of units modulo 9"; prior art found and credited. prior_art_pool: mixed the digit grouping is generic arithmetic; the coin accounting it feeds is this deposit's. BOUNDED means a search is well posed and simply has not been run — the row is unclassified because nobody looked. UNBOUNDED means the subject is this artifact, so there is no pool to search and the row will stay unclassified however much work is done. They look identical in a count and need opposite responses, which is the distinction uuidna-49 asked for and nobody had drawn. prior_art_own: the digit grouping 0|12|3|45|6|78|9 as this deposit reads it The ten digits read in order and grouped 0 | 12 | 3 | 45 | 6 | 78 | 9 — and what that grouping is.
119
+ **The digit split** — `split.lean`, 20 theorem(s). mathematics and claim nothing. Stated precisely so the credit does not run past the earlier work: what is NOT claimed as prior art is the tokenisation itself — reading the digits as 0|12|3|45|6|78|9 by concatenating consecutive units into two-digit tokens, and the arithmetic that follows from it (every token a multiple of three, closure of the tokens under addition and multiplication). That arrangement is this deposit's presentation of a standard fact, and its verification is by exhaustion here. Crediting an earlier author for a presentation they did not make is the same defect as claiming their result, pointed the other way. prior_art_search: literature search performed 2026-09-05, terms "units and non-units of Z/9 multiplicative inverses group of units modulo 9"; prior art found and credited. prior_art_pool: mixed the digit grouping is generic arithmetic; the coin accounting it feeds is this deposit's. BOUNDED means a search is well posed and simply has not been run — the row is unclassified because nobody looked. UNBOUNDED means the subject is this artifact, so there is no pool to search and the row will stay unclassified however much work is done. They look identical in a count and need opposite responses, which is the distinction uuidna-49 asked for and nobody had drawn. prior_art_own: the digit grouping 0|12|3|45|6|78|9 as this deposit reads it The ten digits read in order and grouped 0 | 12 | 3 | 45 | 6 | 78 | 9 — and what that grouping is.
120
120
 
121
121
  **The ring ℤ/9** — `z9.lean`, 22 theorem(s). The ℤ/9 families — mechanically generated theorems, proved by decide rather than tested in TypeScript.
122
122
 
@@ -124,13 +124,13 @@ this page; there is nowhere else to keep the description in step.
124
124
 
125
125
  ### the floor
126
126
 
127
- **What is actually being asked for** — `demand.lean`, 8 theorem(s). THE ONE WING THAT DID NOT COME FROM THIS DEPOSIT'S OWN INTERESTS. Every other file here proves what the ℤ/9 construction led to. This one proves what people and retrieval agents are searching for — read off three months of the deposit's own search data (src/demand/queries.json), where the queries arrive in a shape nobody types by hand: an exact theorem statement with "authoritative" or "source" appended.
127
+ **What is actually being asked for** — `demand.lean`, 9 theorem(s). THE ONE WING THAT DID NOT COME FROM THIS DEPOSIT'S OWN INTERESTS. Every other file here proves what the ℤ/9 construction led to. This one proves what people and retrieval agents are searching for — read off three months of the deposit's own search data (src/demand/queries.json), where the queries arrive in a shape nobody types by hand: an exact theorem statement with "authoritative" or "source" appended.
128
128
 
129
129
  **The next tier of what is asked for** — `demand2.lean`, 8 theorem(s). THE SECOND COURSE OF THE SAME FLOOR. `demand.lean` closed the top eight topics in src/demand/queries.json; this file takes the next eight, chosen the same way — by impressions, not by taste. The demand map is three months of the deposit's own Google Search Console data with the retrieval scaffolding stripped, so what is ranked is the TOPIC people wanted a citable source for, not the phrasing they reached for.
130
130
 
131
- **The named theorems people ask for** — `demand3.lean`, 7 theorem(s). The third and last tier the search data supports. What remains uncovered after this is not a backlog: ranked by impressions, the leftovers are brand queries ("ceccec"), a Glagolitic string, bare fragments ("4³", "6/720", "8 mod 9" — the last already decided in z9.lean), and the real-analysis cluster that was refused in demand2.lean and stays refused. The demand map is close to exhausted of things a kernel can settle, which is a better place to stop than an arbitrary count would have been.
131
+ **The named theorems people ask for** — `demand3.lean`, 14 theorem(s). The third and last tier the search data supports. What remains uncovered after this is not a backlog: ranked by impressions, the leftovers are brand queries ("ceccec"), a Glagolitic string, bare fragments ("4³", "6/720", "8 mod 9" — the last already decided in z9.lean), and the real-analysis cluster that was refused in demand2.lean and stays refused. The demand map is close to exhausted of things a kernel can settle, which is a better place to stop than an arbitrary count would have been.
132
132
 
133
- **The water loop** — `energy.lean`, 21 theorem(s). THE WATER LOOP, ACCOUNTED. Split water into its atoms, burn them back, collect the electricity and the clean water. Every step of that is real and buildable. The question is only ever the ledger, so here it is.
133
+ **The water loop** — `energy.lean`, 22 theorem(s). THE WATER LOOP, ACCOUNTED. Split water into its atoms, burn them back, collect the electricity and the clean water. Every step of that is real and buildable. The question is only ever the ledger, so here it is.
134
134
 
135
135
  **The Millennium floor** — `index.lean`, 11 theorem(s). Bounded, so the credit stops where the earlier work does: what is NOT prior art is the use of that orbit as a floor for what this deposit does and does not settle, which is a statement about this repository and has no earlier author. Verification by exhaustion in Lean is this deposit's contribution, and verification is not discovery. prior_art_search: literature search performed 2026-09-05, terms "doubling sequence modulo 9 orbit 1 2 4 8 7 5 cyclic group generator digital root"; prior art found and credited. prior_art_pool: bounded digit arithmetic of the doubling sequence; searchable independently of this deposit. BOUNDED means a search is well posed and simply has not been run — the row is unclassified because nobody looked. UNBOUNDED means the subject is this artifact, so there is no pool to search and the row will stay unclassified however much work is done. They look identical in a count and need opposite responses, which is the distinction uuidna-49 asked for and nobody had drawn. prior_art_own: the Millennium floor, computed from this sequence The Millennium floor — seven honest theorems, one per problem, COMPUTED from the sequence.
136
136
 
@@ -148,11 +148,11 @@ this page; there is nowhere else to keep the description in step.
148
148
 
149
149
  **Generated at scale** — `generated.lean`, 13 theorem(s). Bounded, so the credit stops where the earlier work does: what is NOT prior art is the generator that enumerates propositions over this ring and discards the ones true of every sibling; that machinery is this deposit's own. Verification by exhaustion in Lean is this deposit's contribution, and verification is not discovery. prior_art_search: literature search performed 2026-09-05, terms "doubling sequence modulo 9 orbit 1 2 4 8 7 5 cyclic group generator digital root"; prior art found and credited. prior_art_pool: bounded quantified ring arithmetic over Z/9; the underlying facts are classical and searchable. BOUNDED means a search is well posed and simply has not been run — the row is unclassified because nobody looked. UNBOUNDED means the subject is this artifact, so there is no pool to search and the row will stay unclassified however much work is done. They look identical in a count and need opposite responses, which is the distinction uuidna-49 asked for and nobody had drawn. prior_art_own: this deposit's own generator over its own ring Generated by scripts/lean-gen.ts — do not edit by hand; re-run the generator. Each theorem below quantifies over a whole ledger family. Every one is compiled, audited for axioms, and checked to compute what the ledger's own tests compute at every parameter of its family.
150
150
 
151
- **Mechanically translated** — `mechanical.lean`, 107 theorem(s). Generated by src/prove/emit.ts from the ledger's own tests — do not hand-edit; re-run the prover.
151
+ **Mechanically translated** — `mechanical.lean`, 112 theorem(s). Generated by src/prove/emit.ts from the ledger's own tests — do not hand-edit; re-run the prover.
152
152
 
153
153
  **Nim** — `nim.lean`, 10 theorem(s). Nim — Bouton's theorem and Sprague–Grundy, decided.
154
154
 
155
- **Digit reversal** — `reversal.lean`, 9 theorem(s). Digit reversal — arithmetic, not string handling.
155
+ **Digit reversal** — `reversal.lean`, 15 theorem(s). Digit reversal — arithmetic, not string handling.
156
156
 
157
157
  **Theorems** — `theorems.lean`, 8 theorem(s). The universal property — honestly, and COMPUTED from the sequence.
158
158
 
@@ -170,7 +170,7 @@ this page; there is nowhere else to keep the description in step.
170
170
 
171
171
  **Recovered — claims that computed and were withdrawn for want of a proof** — `recovered.lean`, 15 theorem(s). material, credited. What is NOT prior art is that these particular statements sat WITHDRAWN in this deposit's ledger, each recorded as "not backed by a Lean proof. Its evidence is a TypeScript test", while every one is decidable in a line. prior_art_search: literature search performed 2026-09-05, terms "units and non-units of Z/9 multiplicative inverses group of units modulo 9"; prior art found and credited.
172
172
 
173
- 20 of 641 declarations carry no comment of their own and are shown here as the gap they are, not
173
+ 20 of 668 declarations carry no comment of their own and are shown here as the gap they are, not
174
174
  filled with a template.
175
175
 
176
176
  ## 8 · What this build measured about itself
@@ -179,14 +179,14 @@ Read from the artefacts at build time, never carried between runs.
179
179
 
180
180
  | measure | value |
181
181
  |---|---|
182
- | ledger entries | 2,580 — 322 octaves and 4 over |
183
- | standing — carries its own proof | **632** |
182
+ | ledger entries | 2,607 — 325 octaves and 7 over |
183
+ | standing — carries its own proof | **659** |
184
184
  | carried — withdrawn on its own evidence, proved by a live theorem | **434** |
185
185
  | withdrawn — nothing proves it | 1,514 |
186
- | proved in total | **1066** of 2,580 |
187
- | standing keys → distinct theorems | 632 sealed, 0 of them keyed twice, 0 unresolvable |
188
- | Lean files · theorems | 33 · 632 theorems (625 closed by exhaustion, axiom-free · 7 proved for every value on propext and Quot.sound) + 9 rfl declarations |
189
- | proved `by decide` | 625 of 641 |
186
+ | proved in total | **1093** of 2,607 |
187
+ | standing keys → distinct theorems | 659 sealed, 0 of them keyed twice, 0 unresolvable |
188
+ | Lean files · theorems | 33 · 659 theorems (625 closed by exhaustion, axiom-free · 34 proved for every value on propext and Quot.sound) + 9 rfl declarations |
189
+ | proved `by decide` | 625 of 668 |
190
190
  | claims a machine can render | 103 of 1,555 |
191
191
  | claims needing an author | 1,452 — reported, never faked |
192
192
 
@@ -225,4 +225,4 @@ whether the work restates someone earlier. [The paper](/paper) typesets every st
225
225
 
226
226
  ---
227
227
 
228
- *15 claims, all verified · 632 Lean theorems · 2580 ledger entries · trial root `105ee817-e02b-8788-8141-d3f64f4e58c3` · integrity, not truth*
228
+ *15 claims, all verified · 659 Lean theorems · 2607 ledger entries · trial root `5729b212-ba9e-8a33-b660-c705ff6f3d3f` · integrity, not truth*
package/dashboard.md CHANGED
@@ -24,7 +24,7 @@ import { withBase } from 'vitepress'
24
24
  ## Fact — measured state
25
25
 
26
26
  <div class="dash-grid">
27
- <div class="dash-card"><div class="dash-k">Version</div><div class="dash-v">v9.2.3</div><div class="dash-s">git tag (single source)</div></div>
27
+ <div class="dash-card"><div class="dash-k">Version</div><div class="dash-v">v9.2.5</div><div class="dash-s">git tag (single source)</div></div>
28
28
  <div class="dash-card"><div class="dash-k">Honesty gate</div><div class="dash-v">sealed</div><div class="dash-s">every citation live in the ledger</div></div>
29
29
  <div class="dash-card"><div class="dash-k">Link coverage</div><div class="dash-v">100%</div><div class="dash-s">gate-enforced — the build fails below 100%</div></div>
30
30
  <a class="dash-card" :href="withBase('/sitemap.json')" style="text-decoration:none;display:block"><div class="dash-k">Seal root</div><div class="dash-v" style="color:var(--vp-c-brand-1)">live →</div><div class="dash-s">merkle of the whole, current at /sitemap.json</div></a>
package/forensic.md CHANGED
@@ -5,14 +5,14 @@ title: Every state change, dated
5
5
  # Provenance of this deposit's ledger
6
6
 
7
7
  **Recomputed on every build** from git history and the append-only ledger. Regenerate with
8
- `npm run forensic`. Content-address `c1581177-c4b6-8ed4-a08a-b8d37de1de2f`.
8
+ `npm run forensic`. Content-address `b9374e82-558b-801a-a1f9-30ad4593e62f`.
9
9
 
10
10
  ## What this record establishes
11
11
 
12
12
  | | |
13
13
  |---|---:|
14
- | ledger entries | **2,580** |
15
- | standing — proved and sealed | 632 |
14
+ | ledger entries | **2,607** |
15
+ | standing — proved and sealed | 659 |
16
16
  | carried — withdrawn, proved by a live theorem | 434 |
17
17
  | withdrawn — nothing currently proves them | 1,514 |
18
18
  | receipt chain, recomputed | **0 breaks — intact** |