@ceccec/millennium-solutions 9.2.7 → 9.2.9
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 +6 -6
- package/AXIOMS.md +8 -8
- package/CHALLENGES.md +61 -3
- package/PRIOR-ART.md +13 -13
- package/README.md +24 -24
- package/dashboard.md +1 -1
- package/forensic.md +4 -4
- package/index.md +24 -24
- package/package.json +1 -1
- package/paper.md +852 -614
- package/speedup.md +4 -4
- package/src/proof/demand2.lean +36 -0
- package/src/proof/discovered.json +145 -0
- package/src/proof/elementary.lean +20 -0
- package/src/proof/families.lean +166 -0
- package/src/proof/nim.lean +209 -3
- package/src/proof/sequences.lean +31 -0
- package/src/proof/trial-all.json +174 -0
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,
|
|
11
|
+
| Decidable theorems (chained receipts) | **2,658** |
|
|
12
12
|
| Signed statement receipts | **29** |
|
|
13
13
|
| Coins per receipt | **2** |
|
|
14
|
-
| Coins on the ledger (theorems × 2) | **5,
|
|
14
|
+
| Coins on the ledger (theorems × 2) | **5,316** |
|
|
15
15
|
| Coins on signed receipts (× 2) | **58** |
|
|
16
|
-
| Released versions (git tags) | **
|
|
16
|
+
| Released versions (git tags) | **876** |
|
|
17
17
|
| Tracked, content-addressed files | **513** |
|
|
18
18
|
|
|
19
|
-
Latest release: **v9.2.
|
|
19
|
+
Latest release: **v9.2.8**. 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,
|
|
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,316 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: `
|
|
27
|
+
Page content-address: `7322551b-ae89-8587-968a-7114d16b4f57`. 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 **
|
|
8
|
+
axiom fails the build rather than earning a footnote. All **719** 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
|
|
@@ -142,7 +142,7 @@ def isCarmichael (n : Nat) : Bool :=
|
|
|
142
142
|
def bitsF : Nat → Nat → Nat
|
|
143
143
|
```
|
|
144
144
|
|
|
145
|
-
### `demand2.lean` — 17 definition(s),
|
|
145
|
+
### `demand2.lean` — 17 definition(s), 11 theorem(s)
|
|
146
146
|
|
|
147
147
|
```lean
|
|
148
148
|
def sumPow (p n : Nat) : Nat := (List.range' 1 n).foldl (fun a k => a + k ^ p) 0
|
|
@@ -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),
|
|
184
|
+
### `elementary.lean` — 24 definition(s), 37 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
|
|
@@ -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),
|
|
249
|
+
### `families.lean` — 44 definition(s), 55 theorem(s)
|
|
250
250
|
|
|
251
251
|
```lean
|
|
252
252
|
def primesUpTo30 : List Nat := [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
|
|
@@ -405,10 +405,10 @@ def perms : List (List Nat) → List (List (List Nat))
|
|
|
405
405
|
def D : List Nat := toUuidBytes [100] -- address of "d"
|
|
406
406
|
```
|
|
407
407
|
|
|
408
|
-
### `nim.lean` — 7 definition(s),
|
|
408
|
+
### `nim.lean` — 7 definition(s), 25 theorem(s)
|
|
409
409
|
|
|
410
410
|
```lean
|
|
411
|
-
def xorN (a b : Nat) : Nat := xorF
|
|
411
|
+
def xorN (a b : Nat) : Nat := xorF (a + b + 1) a b
|
|
412
412
|
def N : Nat := 6
|
|
413
413
|
def moves (a b : Nat) : List (Nat × Nat) :=
|
|
414
414
|
def lost : Nat → Nat → Nat → Bool
|
|
@@ -489,7 +489,7 @@ def instruments : List Instrument :=
|
|
|
489
489
|
def settledHere : Nat := 8
|
|
490
490
|
```
|
|
491
491
|
|
|
492
|
-
### `sequences.lean` — 7 definition(s),
|
|
492
|
+
### `sequences.lean` — 7 definition(s), 13 theorem(s)
|
|
493
493
|
|
|
494
494
|
```lean
|
|
495
495
|
def fib : Nat → Nat
|
|
@@ -569,6 +569,6 @@ def gcd9 (a b : Nat) : Nat := gcdF (a + b + 1) a b
|
|
|
569
569
|
|
|
570
570
|
---
|
|
571
571
|
|
|
572
|
-
**
|
|
572
|
+
**719** 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) —
|
|
21
|
+
## Discovered theorems (decidable, over ℤ/9) — 2658 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 (
|
|
25
|
+
### lean (710)
|
|
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…`
|
|
@@ -761,6 +761,64 @@ Computed by exhaustion, each a monograph with its own page (`/theorem/<key>`) an
|
|
|
761
761
|
intro), standard axioms only — checked by lean.ts · `20da0230-2b9f…`
|
|
762
762
|
- [lean_z9plus_digital_root_is_the_digit_sum_residue_for_every_n](/theorem/lean_z9plus_digital_root_is_the_digit_sum_residue_for_every_n) — lean z9plus.lean: digital_root_is_the_digit_sum_residue_for_every_n — ∀ n : Nat, m9 (digitSum n) = m9 n — proved by the Lean kernel for every value (by
|
|
763
763
|
intro), standard axioms only — checked by lean.ts · `694fefdf-a71b…`
|
|
764
|
+
- [lean_demand2_the_two_power_sums_are_one_sum](/theorem/lean_demand2_the_two_power_sums_are_one_sum) — lean demand2.lean: the_two_power_sums_are_one_sum — ∀ p n : Nat, sumPow p n = powSum p n — proved by the Lean kernel for every value (by
|
|
765
|
+
intro), standard axioms only — checked by lean.ts · `6551630b-4917…`
|
|
766
|
+
- [lean_demand2_nicomachus_sum_of_cubes_is_the_square_of_the_triangular_number_for_every_n](/theorem/lean_demand2_nicomachus_sum_of_cubes_is_the_square_of_the_triangular_number_for_every_n) — lean demand2.lean: nicomachus_sum_of_cubes_is_the_square_of_the_triangular_number_for_every_n — ∀ n : Nat, sumPow 3 n = tri n * tri n — proved by the Lean kernel for every value (by
|
|
767
|
+
intro), standard axioms only — checked by lean.ts · `7aa0bbe0-b4ae…`
|
|
768
|
+
- [lean_demand2_the_sum_of_fifth_powers_has_the_closed_form_for_every_n](/theorem/lean_demand2_the_sum_of_fifth_powers_has_the_closed_form_for_every_n) — lean demand2.lean: the_sum_of_fifth_powers_has_the_closed_form_for_every_n — ∀ n : Nat, 12 * sumPow 5 n = n * n * (n + 1) * (n + 1) * (2 * n * n + 2 * n - 1) — proved by the Lean kernel for every value (by
|
|
769
|
+
intro), standard axioms only — checked by lean.ts · `6916652f-bda2…`
|
|
770
|
+
- [lean_elementary_the_lucas_numbers_are_the_sum_of_the_neighbouring_fibonaccis_for_every_n](/theorem/lean_elementary_the_lucas_numbers_are_the_sum_of_the_neighbouring_fibonaccis_for_every_n) — lean elementary.lean: the_lucas_numbers_are_the_sum_of_the_neighbouring_fibonaccis_for_every_n — ∀ n : Nat, lucas (n + 1) = fib n + fib (n + 2) — proved by the Lean kernel for every value (by
|
|
771
|
+
have), standard axioms only — checked by lean.ts · `cacb33f1-2fc1…`
|
|
772
|
+
- [lean_families_cassinis_identity_for_every_m](/theorem/lean_families_cassinis_identity_for_every_m) — lean families.lean: cassinis_identity_for_every_m — ∀ m : Nat, fib (2 * m + 1) * fib (2 * m + 3) = fib (2 * m + 2) * fib (2 * m + 2) + 1 ∧ fib (2 * m) * fib (2 * m + 2) + 1 = fib (2 * m + 1) * fib (2 * m + 1) — proved by the Lean kernel for every value (by
|
|
773
|
+
intro), standard axioms only — checked by lean.ts · `75a810f1-ae27…`
|
|
774
|
+
- [lean_families_a_sum_over_one_to_n_plus_one_adds_the_last_term](/theorem/lean_families_a_sum_over_one_to_n_plus_one_adds_the_last_term) — lean families.lean: a_sum_over_one_to_n_plus_one_adds_the_last_term — ∀ (g : Nat → Nat) (n : Nat), ((List.range' 1 (n + 1)).map g).foldl (· + ·) 0 = ((List.range' 1 n).map g).foldl (· + ·) 0 + g (n + 1) — proved by the Lean kernel for every value (by
|
|
775
|
+
intro), standard axioms only — checked by lean.ts · `f664ca1d-8371…`
|
|
776
|
+
- [lean_families_the_numbers_sum_to_their_closed_form_for_every_n](/theorem/lean_families_the_numbers_sum_to_their_closed_form_for_every_n) — lean families.lean: the_numbers_sum_to_their_closed_form_for_every_n — ∀ n : Nat, 2 * powSum 1 n = n * (n + 1) — proved by the Lean kernel for every value (by
|
|
777
|
+
intro), standard axioms only — checked by lean.ts · `34fa9fc8-b8ed…`
|
|
778
|
+
- [lean_families_the_squares_sum_to_their_closed_form_for_every_n](/theorem/lean_families_the_squares_sum_to_their_closed_form_for_every_n) — lean families.lean: the_squares_sum_to_their_closed_form_for_every_n — ∀ n : Nat, 6 * powSum 2 n = n * (n + 1) * (2 * n + 1) — proved by the Lean kernel for every value (by
|
|
779
|
+
intro), standard axioms only — checked by lean.ts · `0b7a0569-fb3f…`
|
|
780
|
+
- [lean_families_the_cubes_sum_to_their_closed_form_for_every_n](/theorem/lean_families_the_cubes_sum_to_their_closed_form_for_every_n) — lean families.lean: the_cubes_sum_to_their_closed_form_for_every_n — ∀ n : Nat, 4 * powSum 3 n = n * n * (n + 1) * (n + 1) — proved by the Lean kernel for every value (by
|
|
781
|
+
intro), standard axioms only — checked by lean.ts · `96b0047e-cf09…`
|
|
782
|
+
- [lean_families_the_fourth_powers_sum_to_their_closed_form_for_every_n](/theorem/lean_families_the_fourth_powers_sum_to_their_closed_form_for_every_n) — lean families.lean: the_fourth_powers_sum_to_their_closed_form_for_every_n — ∀ n : Nat, 30 * powSum 4 n = n * (n + 1) * (2 * n + 1) * (3 * n * n + 3 * n - 1) — proved by the Lean kernel for every value (by
|
|
783
|
+
intro), standard axioms only — checked by lean.ts · `3419aabd-970f…`
|
|
784
|
+
- [lean_families_the_fifth_powers_sum_to_their_closed_form_for_every_n](/theorem/lean_families_the_fifth_powers_sum_to_their_closed_form_for_every_n) — lean families.lean: the_fifth_powers_sum_to_their_closed_form_for_every_n — ∀ n : Nat, 12 * powSum 5 n = n * n * (n + 1) * (n + 1) * (2 * n * n + 2 * n - 1) — proved by the Lean kernel for every value (by
|
|
785
|
+
intro), standard axioms only — checked by lean.ts · `790310ea-f06d…`
|
|
786
|
+
- [lean_families_power_sums_match_their_closed_forms_for_every_n](/theorem/lean_families_power_sums_match_their_closed_forms_for_every_n) — lean families.lean: power_sums_match_their_closed_forms_for_every_n — ∀ k n : Nat, 1 ≤ k → k ≤ 5 → powSum k n = faulhaber k n — proved by the Lean kernel for every value (by
|
|
787
|
+
intro), standard axioms only — checked by lean.ts · `04b04822-598b…`
|
|
788
|
+
- [lean_families_the_sums_of_triangular_numbers_are_the_tetrahedral_numbers_for_every_n](/theorem/lean_families_the_sums_of_triangular_numbers_are_the_tetrahedral_numbers_for_every_n) — lean families.lean: the_sums_of_triangular_numbers_are_the_tetrahedral_numbers_for_every_n — ∀ n : Nat, ((List.range' 1 n).map (fun i => i * (i + 1) / 2)).foldl (· + ·) 0 = n * (n + 1) * (n + 2) / 6 — proved by the Lean kernel for every value (by
|
|
789
|
+
have), standard axioms only — checked by lean.ts · `43b9cdd8-7110…`
|
|
790
|
+
- [lean_sequences_cassinis_identity_for_every_m](/theorem/lean_sequences_cassinis_identity_for_every_m) — lean sequences.lean: cassinis_identity_for_every_m — ∀ m : Nat, fib (2 * m + 1) * fib (2 * m + 3) = fib (2 * m + 2) * fib (2 * m + 2) + 1 ∧ fib (2 * m) * fib (2 * m + 2) + 1 = fib (2 * m + 1) * fib (2 * m + 1) — proved by the Lean kernel for every value (by
|
|
791
|
+
intro), standard axioms only — checked by lean.ts · `3b815427-42b8…`
|
|
792
|
+
- [lean_nim_the_xor_of_two_bits_is_their_sum_mod_two](/theorem/lean_nim_the_xor_of_two_bits_is_their_sum_mod_two) — lean nim.lean: the_xor_of_two_bits_is_their_sum_mod_two — ∀ x y : Nat, (if x % 2 == y % 2 then 0 else 1) = (x + y) % 2 — proved by the Lean kernel for every value (by
|
|
793
|
+
intro), standard axioms only — checked by lean.ts · `322304d5-f000…`
|
|
794
|
+
- [lean_nim_xor_commutes_at_every_fuel](/theorem/lean_nim_xor_commutes_at_every_fuel) — lean nim.lean: xor_commutes_at_every_fuel — ∀ f a b : Nat, xorF f a b = xorF f b a — proved by the Lean kernel for every value (by
|
|
795
|
+
intro), standard axioms only — checked by lean.ts · `b091d5a8-4e4a…`
|
|
796
|
+
- [lean_nim_one_more_step_of_fuel_changes_nothing_once_it_exceeds_an_argument](/theorem/lean_nim_one_more_step_of_fuel_changes_nothing_once_it_exceeds_an_argument) — lean nim.lean: one_more_step_of_fuel_changes_nothing_once_it_exceeds_an_argument — ∀ f a b : Nat, (a < f ∨ b < f) → xorF (f + 1) a b = xorF f a b — proved by the Lean kernel for every value (by
|
|
797
|
+
intro), standard axioms only — checked by lean.ts · `adf2ef5a-ef44…`
|
|
798
|
+
- [lean_nim_more_fuel_changes_nothing_once_it_exceeds_an_argument](/theorem/lean_nim_more_fuel_changes_nothing_once_it_exceeds_an_argument) — lean nim.lean: more_fuel_changes_nothing_once_it_exceeds_an_argument — ∀ k f a b : Nat, (a < f ∨ b < f) → xorF (f + k) a b = xorF f a b — proved by the Lean kernel for every value (by
|
|
799
|
+
intro), standard axioms only — checked by lean.ts · `961d94be-959c…`
|
|
800
|
+
- [lean_nim_xor_reads_the_same_at_every_sufficient_fuel](/theorem/lean_nim_xor_reads_the_same_at_every_sufficient_fuel) — lean nim.lean: xor_reads_the_same_at_every_sufficient_fuel — ∀ g a b : Nat, (a < g ∨ b < g) → xorN a b = xorF g a b — proved by the Lean kernel for every value (by
|
|
801
|
+
intro), standard axioms only — checked by lean.ts · `e04a45b5-8834…`
|
|
802
|
+
- [lean_nim_a_number_xored_with_itself_is_zero_at_every_fuel](/theorem/lean_nim_a_number_xored_with_itself_is_zero_at_every_fuel) — lean nim.lean: a_number_xored_with_itself_is_zero_at_every_fuel — ∀ f b : Nat, xorF f b b = 0 — proved by the Lean kernel for every value (by
|
|
803
|
+
intro), standard axioms only — checked by lean.ts · `409e78df-b565…`
|
|
804
|
+
- [lean_nim_xor_splits_off_its_lowest_bit](/theorem/lean_nim_xor_splits_off_its_lowest_bit) — lean nim.lean: xor_splits_off_its_lowest_bit — ∀ g x c : Nat, 1 ≤ g → xorF (g + 1) x c = (x + c) % 2 + 2 * xorF g (x / 2) (c / 2) — proved by the Lean kernel for every value (by
|
|
805
|
+
intro), standard axioms only — checked by lean.ts · `fa8f797f-95fa…`
|
|
806
|
+
- [lean_nim_xor_undoes_itself_when_the_fuel_suffices](/theorem/lean_nim_xor_undoes_itself_when_the_fuel_suffices) — lean nim.lean: xor_undoes_itself_when_the_fuel_suffices — ∀ f a b g : Nat, (a < f ∨ b < f) → b < g → xorF g (xorF f a b) b = a — proved by the Lean kernel for every value (by
|
|
807
|
+
intro), standard axioms only — checked by lean.ts · `ba799e13-9cb6…`
|
|
808
|
+
- [lean_nim_xor_is_commutative_for_every_a_b](/theorem/lean_nim_xor_is_commutative_for_every_a_b) — lean nim.lean: xor_is_commutative_for_every_a_b — ∀ a b : Nat, xorN a b = xorN b a — proved by the Lean kernel for every value (by
|
|
809
|
+
intro), standard axioms only — checked by lean.ts · `e62bc467-f90b…`
|
|
810
|
+
- [lean_nim_xor_zero_is_identity_for_every_a](/theorem/lean_nim_xor_zero_is_identity_for_every_a) — lean nim.lean: xor_zero_is_identity_for_every_a — ∀ a : Nat, xorN a 0 = a — proved by the Lean kernel for every value (by
|
|
811
|
+
intro), standard axioms only — checked by lean.ts · `667bd69d-51ea…`
|
|
812
|
+
- [lean_nim_xor_is_its_own_inverse_for_every_a_b](/theorem/lean_nim_xor_is_its_own_inverse_for_every_a_b) — lean nim.lean: xor_is_its_own_inverse_for_every_a_b — ∀ a b : Nat, xorN (xorN a b) b = a — proved by the Lean kernel for every value (by
|
|
813
|
+
intro), standard axioms only — checked by lean.ts · `e2f6d0f1-2fa2…`
|
|
814
|
+
- [lean_nim_xor_is_the_sum_of_the_bits_plus_twice_the_xor_of_the_halves](/theorem/lean_nim_xor_is_the_sum_of_the_bits_plus_twice_the_xor_of_the_halves) — lean nim.lean: xor_is_the_sum_of_the_bits_plus_twice_the_xor_of_the_halves — ∀ a b : Nat, xorN a b = (a + b) % 2 + 2 * xorN (a / 2) (b / 2) — proved by the Lean kernel for every value (by
|
|
815
|
+
intro), standard axioms only — checked by lean.ts · `07c467d9-8226…`
|
|
816
|
+
- [lean_nim_xor_is_associative_below_every_bound](/theorem/lean_nim_xor_is_associative_below_every_bound) — lean nim.lean: xor_is_associative_below_every_bound — ∀ n a b c : Nat, a + b + c ≤ n → xorN (xorN a b) c = xorN a (xorN b c) — proved by the Lean kernel for every value (by
|
|
817
|
+
intro), standard axioms only — checked by lean.ts · `0c3ef805-2811…`
|
|
818
|
+
- [lean_nim_xor_is_associative_for_every_a_b_c](/theorem/lean_nim_xor_is_associative_for_every_a_b_c) — lean nim.lean: xor_is_associative_for_every_a_b_c — ∀ a b c : Nat, xorN (xorN a b) c = xorN a (xorN b c) — proved by the Lean kernel for every value (by
|
|
819
|
+
intro), standard axioms only — checked by lean.ts · `d2a922d9-f09d…`
|
|
820
|
+
- [lean_nim_the_nim_sum_is_a_gf2_vector_addition_for_every_a_b_c](/theorem/lean_nim_the_nim_sum_is_a_gf2_vector_addition_for_every_a_b_c) — lean nim.lean: the_nim_sum_is_a_gf2_vector_addition_for_every_a_b_c — ∀ a b c : Nat, xorN a b = xorN b a ∧ xorN (xorN a b) c = xorN a (xorN b c) ∧ xorN (xorN a b) b = a ∧ xorN a 0 = a — proved by the Lean kernel for every value (by
|
|
821
|
+
intro), standard axioms only — checked by lean.ts · `caa5c327-62cf…`
|
|
764
822
|
|
|
765
823
|
### other — one-of-a-kind (0)
|
|
766
824
|
|
|
@@ -2345,4 +2403,4 @@ Each was withdrawn for want of a Lean proof and has since been given one, at a n
|
|
|
2345
2403
|
|
|
2346
2404
|
</details>
|
|
2347
2405
|
|
|
2348
|
-
Page content-address: `
|
|
2406
|
+
Page content-address: `5a2e0a2b-7098-8bae-a674-038aab427755`. 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
|
|
9
|
+
Of 719 machine-checked declarations, **710** 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 | **
|
|
30
|
+
| attributed to named earlier work | **710** |
|
|
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,
|
|
50
|
+
## Restated from named earlier work — 32 sources, 710 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.
|
|
@@ -56,11 +56,11 @@ which is a contribution of verification, not of discovery.
|
|
|
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
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
|
-
<tr><td><code>demand2.lean</code></td><td>
|
|
59
|
+
<tr><td><code>demand2.lean</code></td><td>11</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
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>
|
|
61
|
+
<tr><td><code>elementary.lean</code></td><td>37</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
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>
|
|
63
|
+
<tr><td><code>families.lean</code></td><td>55</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>
|
|
@@ -72,14 +72,14 @@ which is a contribution of verification, not of discovery.
|
|
|
72
72
|
<tr><td><code>mechanical.lean</code></td><td>119</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
|
-
<tr><td><code>nim.lean</code></td><td>
|
|
75
|
+
<tr><td><code>nim.lean</code></td><td>25</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>
|
|
76
76
|
<tr><td><code>phenomena.lean</code></td><td>4</td><td>metrology and classical physical chemistry</td><td>the SI base quantities and their defining constants are definitions of the Conférence</td></tr>
|
|
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>8</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
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
|
-
<tr><td><code>sequences.lean</code></td><td>
|
|
82
|
+
<tr><td><code>sequences.lean</code></td><td>13</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
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>
|
|
@@ -91,7 +91,7 @@ which is a contribution of verification, not of discovery.
|
|
|
91
91
|
|
|
92
92
|
- **Boolean algebra and elementary modular arithmetic** — 119 theorems, in `mechanical.lean`
|
|
93
93
|
- **canonical forms and order-invariant commitments** — 12 theorems, in `quantum.lean`
|
|
94
|
-
- **combinatorial game theory** —
|
|
94
|
+
- **combinatorial game theory** — 25 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
97
|
- **electrochemistry and combustion** — 22 theorems, in `energy.lean`
|
|
@@ -99,21 +99,21 @@ which is a contribution of verification, not of discovery.
|
|
|
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
101
|
- **elementary number theory** — 9 theorems, in `demand.lean`
|
|
102
|
-
- **elementary number theory and combinatorial game theory** —
|
|
102
|
+
- **elementary number theory and combinatorial game theory** — 37 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
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
107
|
- **elementary number theory, named results** — 14 theorems, in `demand3.lean`
|
|
108
|
-
- **elementary number theory, second tier** —
|
|
108
|
+
- **elementary number theory, second tier** — 11 theorems, in `demand2.lean`
|
|
109
109
|
- **elementary set theory — the naturals are not exhausted by any finite list** — 8 theorems, in `reach.lean`
|
|
110
110
|
- **hash trees and membership proofs** — 31 theorems, in `ledgerclaims.lean`, `merkle.lean`, `speed.lean`
|
|
111
|
-
- **integer sequences and identities** —
|
|
111
|
+
- **integer sequences and identities** — 13 theorems, in `sequences.lean`
|
|
112
112
|
- **metrology and classical physical chemistry** — 4 theorems, in `phenomena.lean`
|
|
113
113
|
- **metrology — the International System of Units** — 14 theorems, in `light.lean`
|
|
114
114
|
- **modular arithmetic** — 22 theorems, in `z9.lean`
|
|
115
115
|
- **modular arithmetic and periodicity** — 43 theorems, in `z9plus.lean`
|
|
116
|
-
- **modular arithmetic, quantified** —
|
|
116
|
+
- **modular arithmetic, quantified** — 55 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
|
|
15
|
-
<sub>SEALED · `
|
|
16
|
-
- 625 of those
|
|
17
|
-
<sub>SEALED · `
|
|
18
|
-
-
|
|
19
|
-
<sub>SEALED · `
|
|
14
|
+
- The formal layer holds 719 kernel-accepted declarations across 33 files, and no file uses sorry or native_decide outside a comment.
|
|
15
|
+
<sub>SEALED · `05adc83d-6246-8e72-9bc1-0780946929bc`</sub>
|
|
16
|
+
- 625 of those 719 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 94 close by rfl and are declarations.
|
|
17
|
+
<sub>SEALED · `38d7a6f8-0290-8be1-8675-48a7525a385f`</sub>
|
|
18
|
+
- 794 of them are sealed into the ledger, each carrying a receipt derived from the one before it.
|
|
19
|
+
<sub>SEALED · `8a5ba31c-e558-8006-a966-3af22a873101`</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
|
|
43
|
-
<sub>SEALED · `
|
|
44
|
-
- The count is
|
|
45
|
-
<sub>SEALED · `
|
|
42
|
+
- The ledger records 2658 entries with 0 chain breaks, 0 duplicate keys and 0 duplicate receipts.
|
|
43
|
+
<sub>SEALED · `9cea92b5-8b5f-8d3f-b5d4-bdb8e1640ef5`</sub>
|
|
44
|
+
- The count is 2658, which is 332 octaves and 2 over — the octave is a target the theorems earn, never a quota they are invented to fill.
|
|
45
|
+
<sub>SEALED · `8bea7052-b60e-8430-8762-e3958d7d550e`</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,
|
|
89
|
+
33 Lean files in 7 wings, 719 declarations of which 710 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`,
|
|
107
|
+
**Elementary arithmetic** — `elementary.lean`, 37 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`,
|
|
109
|
+
**Families over the ring** — `families.lean`, 55 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
|
|
|
@@ -114,7 +114,7 @@ this page; there is nowhere else to keep the description in step.
|
|
|
114
114
|
|
|
115
115
|
**The merkaba** — `merkaba.lean`, 8 theorem(s). (Leonhard Euler, 1758). The file as a whole is this deposit's own construction, and this ONE declaration restates a named classical result: its third conjunct 4 + 4 - 6 = 2 IS the Euler characteristic of the tetrahedron. The comment above that theorem already named Euler; the register did not, because prior art was routed on the FILE and a file-level row cannot say "own work except theorem 7". No priority over Euler is claimed. What is this deposit's own here is the pairing of the two tetrahedra with the cube Q₃ and the vertex and edge counts around it, not the characteristic. The merkaba, as THIS deposit constructs it — ported to Lean so it stands on the kernel instead of on a TypeScript test. Six entries under this name were revoked as dirty; every one of them that states finite algebra is re-proved here, and the two that do not (a cosine field, a bond angle in degrees) are absent on purpose — they are real trigonometry, not decidable arithmetic over ℤ/9, and padding them in would be the exact dishonesty the revocation was for.
|
|
116
116
|
|
|
117
|
-
**Sequences** — `sequences.lean`,
|
|
117
|
+
**Sequences** — `sequences.lean`, 13 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
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
|
|
|
@@ -126,7 +126,7 @@ this page; there is nowhere else to keep the description in step.
|
|
|
126
126
|
|
|
127
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
|
-
**The next tier of what is asked for** — `demand2.lean`,
|
|
129
|
+
**The next tier of what is asked for** — `demand2.lean`, 11 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
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
|
|
|
@@ -150,7 +150,7 @@ this page; there is nowhere else to keep the description in step.
|
|
|
150
150
|
|
|
151
151
|
**Mechanically translated** — `mechanical.lean`, 119 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
|
-
**Nim** — `nim.lean`,
|
|
153
|
+
**Nim** — `nim.lean`, 25 theorem(s). Nim — Bouton's theorem and Sprague–Grundy, decided.
|
|
154
154
|
|
|
155
155
|
**Digit reversal** — `reversal.lean`, 15 theorem(s). Digit reversal — arithmetic, not string handling.
|
|
156
156
|
|
|
@@ -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
|
|
173
|
+
20 of 719 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,
|
|
183
|
-
| standing — carries its own proof | **
|
|
182
|
+
| ledger entries | 2,658 — 332 octaves and 2 over |
|
|
183
|
+
| standing — carries its own proof | **710** |
|
|
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 | **
|
|
187
|
-
| standing keys → distinct theorems |
|
|
188
|
-
| Lean files · theorems | 33 ·
|
|
189
|
-
| proved `by decide` | 625 of
|
|
186
|
+
| proved in total | **1144** of 2,658 |
|
|
187
|
+
| standing keys → distinct theorems | 710 sealed, 0 of them keyed twice, 0 unresolvable |
|
|
188
|
+
| Lean files · theorems | 33 · 710 theorems (625 closed by exhaustion, axiom-free · 85 proved for every value on propext and Quot.sound) + 9 rfl declarations |
|
|
189
|
+
| proved `by decide` | 625 of 719 |
|
|
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 ·
|
|
228
|
+
*15 claims, all verified · 710 Lean theorems · 2658 ledger entries · trial root `1f154b05-f0a9-891d-823d-28e71708b84e` · 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.
|
|
27
|
+
<div class="dash-card"><div class="dash-k">Version</div><div class="dash-v">v9.2.8</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,18 +5,18 @@ 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 `
|
|
8
|
+
`npm run forensic`. Content-address `15ae86d6-8d9e-8ef4-8a0e-fad4023ea1a4`.
|
|
9
9
|
|
|
10
10
|
## What this record establishes
|
|
11
11
|
|
|
12
12
|
| | |
|
|
13
13
|
|---|---:|
|
|
14
|
-
| ledger entries | **2,
|
|
15
|
-
| standing — proved and sealed |
|
|
14
|
+
| ledger entries | **2,658** |
|
|
15
|
+
| standing — proved and sealed | 710 |
|
|
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** |
|
|
19
|
-
| commits that changed ledger state |
|
|
19
|
+
| commits that changed ledger state | 581 |
|
|
20
20
|
|
|
21
21
|
## Why entries were withdrawn — the reason recorded at the time
|
|
22
22
|
|
package/index.md
CHANGED
|
@@ -17,12 +17,12 @@ last because the orbit never reaches it.
|
|
|
17
17
|
|
|
18
18
|
## 1 · What is proved
|
|
19
19
|
|
|
20
|
-
- The formal layer holds
|
|
21
|
-
<sub>SEALED · `
|
|
22
|
-
- 625 of those
|
|
23
|
-
<sub>SEALED · `
|
|
24
|
-
-
|
|
25
|
-
<sub>SEALED · `
|
|
20
|
+
- The formal layer holds 719 kernel-accepted declarations across 33 files, and no file uses sorry or native_decide outside a comment.
|
|
21
|
+
<sub>SEALED · `05adc83d-6246-8e72-9bc1-0780946929bc`</sub>
|
|
22
|
+
- 625 of those 719 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 94 close by rfl and are declarations.
|
|
23
|
+
<sub>SEALED · `38d7a6f8-0290-8be1-8675-48a7525a385f`</sub>
|
|
24
|
+
- 794 of them are sealed into the ledger, each carrying a receipt derived from the one before it.
|
|
25
|
+
<sub>SEALED · `8a5ba31c-e558-8006-a966-3af22a873101`</sub>
|
|
26
26
|
|
|
27
27
|
## 2 · The ring
|
|
28
28
|
|
|
@@ -45,10 +45,10 @@ last because the orbit never reaches it.
|
|
|
45
45
|
|
|
46
46
|
## 7 · The ledger
|
|
47
47
|
|
|
48
|
-
- The ledger records
|
|
49
|
-
<sub>SEALED · `
|
|
50
|
-
- The count is
|
|
51
|
-
<sub>SEALED · `
|
|
48
|
+
- The ledger records 2658 entries with 0 chain breaks, 0 duplicate keys and 0 duplicate receipts.
|
|
49
|
+
<sub>SEALED · `9cea92b5-8b5f-8d3f-b5d4-bdb8e1640ef5`</sub>
|
|
50
|
+
- The count is 2658, which is 332 octaves and 2 over — the octave is a target the theorems earn, never a quota they are invented to fill.
|
|
51
|
+
<sub>SEALED · `8bea7052-b60e-8430-8762-e3958d7d550e`</sub>
|
|
52
52
|
|
|
53
53
|
## 5 · What the gate does and does not do
|
|
54
54
|
|
|
@@ -92,7 +92,7 @@ results; it is the result, read off the same arithmetic that produced the table.
|
|
|
92
92
|
|
|
93
93
|
## 7 · The proofs, as they document themselves
|
|
94
94
|
|
|
95
|
-
33 Lean files in 7 wings,
|
|
95
|
+
33 Lean files in 7 wings, 719 declarations of which 710 are theorems. The prose in this section is read out of the
|
|
96
96
|
sources — their frontmatter, their header comments and the comment above each theorem. Editing a proof edits
|
|
97
97
|
this page; there is nowhere else to keep the description in step.
|
|
98
98
|
|
|
@@ -110,9 +110,9 @@ this page; there is nowhere else to keep the description in step.
|
|
|
110
110
|
|
|
111
111
|
**The two-sided coin** — `coin.lean`, 12 theorem(s). One involution on ten digits, two sides, one fixed point, and one digit that leaves.
|
|
112
112
|
|
|
113
|
-
**Elementary arithmetic** — `elementary.lean`,
|
|
113
|
+
**Elementary arithmetic** — `elementary.lean`, 37 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.
|
|
114
114
|
|
|
115
|
-
**Families over the ring** — `families.lean`,
|
|
115
|
+
**Families over the ring** — `families.lean`, 55 theorem(s). The families, quantified. Proving at scale.
|
|
116
116
|
|
|
117
117
|
**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
|
|
118
118
|
|
|
@@ -120,7 +120,7 @@ this page; there is nowhere else to keep the description in step.
|
|
|
120
120
|
|
|
121
121
|
**The merkaba** — `merkaba.lean`, 8 theorem(s). (Leonhard Euler, 1758). The file as a whole is this deposit's own construction, and this ONE declaration restates a named classical result: its third conjunct 4 + 4 - 6 = 2 IS the Euler characteristic of the tetrahedron. The comment above that theorem already named Euler; the register did not, because prior art was routed on the FILE and a file-level row cannot say "own work except theorem 7". No priority over Euler is claimed. What is this deposit's own here is the pairing of the two tetrahedra with the cube Q₃ and the vertex and edge counts around it, not the characteristic. The merkaba, as THIS deposit constructs it — ported to Lean so it stands on the kernel instead of on a TypeScript test. Six entries under this name were revoked as dirty; every one of them that states finite algebra is re-proved here, and the two that do not (a cosine field, a bond angle in degrees) are absent on purpose — they are real trigonometry, not decidable arithmetic over ℤ/9, and padding them in would be the exact dishonesty the revocation was for.
|
|
122
122
|
|
|
123
|
-
**Sequences** — `sequences.lean`,
|
|
123
|
+
**Sequences** — `sequences.lean`, 13 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.
|
|
124
124
|
|
|
125
125
|
**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.
|
|
126
126
|
|
|
@@ -132,7 +132,7 @@ this page; there is nowhere else to keep the description in step.
|
|
|
132
132
|
|
|
133
133
|
**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.
|
|
134
134
|
|
|
135
|
-
**The next tier of what is asked for** — `demand2.lean`,
|
|
135
|
+
**The next tier of what is asked for** — `demand2.lean`, 11 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.
|
|
136
136
|
|
|
137
137
|
**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.
|
|
138
138
|
|
|
@@ -156,7 +156,7 @@ this page; there is nowhere else to keep the description in step.
|
|
|
156
156
|
|
|
157
157
|
**Mechanically translated** — `mechanical.lean`, 119 theorem(s). Generated by src/prove/emit.ts from the ledger's own tests — do not hand-edit; re-run the prover.
|
|
158
158
|
|
|
159
|
-
**Nim** — `nim.lean`,
|
|
159
|
+
**Nim** — `nim.lean`, 25 theorem(s). Nim — Bouton's theorem and Sprague–Grundy, decided.
|
|
160
160
|
|
|
161
161
|
**Digit reversal** — `reversal.lean`, 15 theorem(s). Digit reversal — arithmetic, not string handling.
|
|
162
162
|
|
|
@@ -176,7 +176,7 @@ this page; there is nowhere else to keep the description in step.
|
|
|
176
176
|
|
|
177
177
|
**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.
|
|
178
178
|
|
|
179
|
-
20 of
|
|
179
|
+
20 of 719 declarations carry no comment of their own and are shown here as the gap they are, not
|
|
180
180
|
filled with a template.
|
|
181
181
|
|
|
182
182
|
## 8 · What this build measured about itself
|
|
@@ -185,14 +185,14 @@ Read from the artefacts at build time, never carried between runs.
|
|
|
185
185
|
|
|
186
186
|
| measure | value |
|
|
187
187
|
|---|---|
|
|
188
|
-
| ledger entries | 2,
|
|
189
|
-
| standing — carries its own proof | **
|
|
188
|
+
| ledger entries | 2,658 — 332 octaves and 2 over |
|
|
189
|
+
| standing — carries its own proof | **710** |
|
|
190
190
|
| carried — withdrawn on its own evidence, proved by a live theorem | **434** |
|
|
191
191
|
| withdrawn — nothing proves it | 1,514 |
|
|
192
|
-
| proved in total | **
|
|
193
|
-
| standing keys → distinct theorems |
|
|
194
|
-
| Lean files · theorems | 33 ·
|
|
195
|
-
| proved `by decide` | 625 of
|
|
192
|
+
| proved in total | **1144** of 2,658 |
|
|
193
|
+
| standing keys → distinct theorems | 710 sealed, 0 of them keyed twice, 0 unresolvable |
|
|
194
|
+
| Lean files · theorems | 33 · 710 theorems (625 closed by exhaustion, axiom-free · 85 proved for every value on propext and Quot.sound) + 9 rfl declarations |
|
|
195
|
+
| proved `by decide` | 625 of 719 |
|
|
196
196
|
| claims a machine can render | 103 of 1,555 |
|
|
197
197
|
| claims needing an author | 1,452 — reported, never faked |
|
|
198
198
|
|
|
@@ -214,4 +214,4 @@ across** — deposited as [10.5281/zenodo.21781603](https://doi.org/10.5281/zeno
|
|
|
214
214
|
|
|
215
215
|
---
|
|
216
216
|
|
|
217
|
-
*15 claims, all verified ·
|
|
217
|
+
*15 claims, all verified · 710 Lean theorems · 2658 ledger entries · trial root `1f154b05-f0a9-891d-823d-28e71708b84e` · integrity, not truth*
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ceccec/millennium-solutions",
|
|
3
|
-
"version": "9.2.
|
|
3
|
+
"version": "9.2.9",
|
|
4
4
|
"description": "Verifiable, recomputable ℤ/9 vortex framework in ONE package — content-addressing, audit ledger, exact arithmetic, and the honesty toolkit. Facts only.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Tsvetan Rouschev",
|