@ceccec/millennium-solutions 9.1.1 → 9.1.3
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/AXIOMS.md +16 -14
- package/CHALLENGES.md +17 -3
- package/README.md +27 -27
- package/forensic.md +5 -5
- package/index.md +27 -27
- package/package.json +1 -1
- package/paper.md +661 -573
- package/src/api/index.ts +3 -2
- package/src/proof/discovered.json +50 -0
- package/src/proof/elementary.lean +10 -2
- package/src/proof/energy.lean +18 -0
- package/src/proof/families.lean +17 -2
- package/src/proof/light.lean +12 -0
- package/src/proof/reach.lean +7 -0
- package/src/proof/speed.lean +5 -0
- package/src/proof/trial-all.json +60 -0
- package/src/proof/z9.lean +11 -2
package/AXIOMS.md
CHANGED
|
@@ -5,11 +5,11 @@ 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 **638** 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
|
|
12
|
-
theorems rest on **
|
|
12
|
+
theorems rest on **321** definitions, and every one of them is a choice. A theorem about
|
|
13
13
|
`fall` is a theorem about the digital root only because `fall` is *defined* to be it. Both halves are
|
|
14
14
|
indexed below, and the second is the longer one.
|
|
15
15
|
|
|
@@ -90,7 +90,7 @@ The pins in the control fixture follow the community practice of guarding `#prin
|
|
|
90
90
|
`#guard_msgs`, which turns the axiom footprint into an executable regression test: the assertion is
|
|
91
91
|
checked by the elaborator, and drift fails the build with a mismatch instead of passing unnoticed.
|
|
92
92
|
|
|
93
|
-
## What IS assumed: the
|
|
93
|
+
## What IS assumed: the 321 definitions
|
|
94
94
|
|
|
95
95
|
Each of these is a primitive of this deposit — not derived, not proved, chosen. They are listed in full
|
|
96
96
|
because a reader checking a theorem must be able to read the definition it is about, and because a
|
|
@@ -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), 33 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
|
|
@@ -207,10 +207,10 @@ def rgs : Nat → List (List Nat)
|
|
|
207
207
|
def bellRow : Nat → List Nat
|
|
208
208
|
def bellOf (n : Nat) : Nat := (bellRow n).headD 0
|
|
209
209
|
def tetOf (r : Nat) : List Nat := (unitsMod 9).filter (fun d => d % 3 == r)
|
|
210
|
-
def settledHere : Nat :=
|
|
210
|
+
def settledHere : Nat := 32
|
|
211
211
|
```
|
|
212
212
|
|
|
213
|
-
### `energy.lean` —
|
|
213
|
+
### `energy.lean` — 31 definition(s), 21 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)
|
|
@@ -243,9 +243,10 @@ def whPerLitreAt (kgPerM3 : Nat) : Nat := kgPerM3 * whPerKgH2 / 1000
|
|
|
243
243
|
def tdsSeawater : Nat := 35000 -- mg of dissolved solids per litre
|
|
244
244
|
def tdsTapWater : Nat := 50 -- mg per litre, ordinary supply
|
|
245
245
|
def residueMg (litres tds : Nat) : Nat := litres * tds
|
|
246
|
+
def atomsOf (m : Nat) : Option (Nat × Nat) :=
|
|
246
247
|
```
|
|
247
248
|
|
|
248
|
-
### `families.lean` — 44 definition(s),
|
|
249
|
+
### `families.lean` — 44 definition(s), 43 theorem(s)
|
|
249
250
|
|
|
250
251
|
```lean
|
|
251
252
|
def primesUpTo30 : List Nat := [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
|
|
@@ -291,7 +292,7 @@ def permsN : List Nat → List (List Nat)
|
|
|
291
292
|
def isInvolution (p : List Nat) : Bool := (List.range p.length).all (fun i => p.getD (p.getD i 0) 0 == i)
|
|
292
293
|
def telephone : Nat → Nat
|
|
293
294
|
def schlafli : List (Nat × Nat) :=
|
|
294
|
-
def settledHere : Nat :=
|
|
295
|
+
def settledHere : Nat := 42
|
|
295
296
|
```
|
|
296
297
|
|
|
297
298
|
### `fnv.lean` — 13 definition(s), 13 theorem(s)
|
|
@@ -342,7 +343,7 @@ def saving (value verify : Nat) : Nat := value - verify
|
|
|
342
343
|
def addr4 (x : Nat) : Nat := x % 16
|
|
343
344
|
```
|
|
344
345
|
|
|
345
|
-
### `light.lean` — 13 definition(s),
|
|
346
|
+
### `light.lean` — 13 definition(s), 13 theorem(s)
|
|
346
347
|
|
|
347
348
|
```lean
|
|
348
349
|
def c : Nat := 299792458 -- m/s, exact
|
|
@@ -450,7 +451,7 @@ def par3 (n : Nat) : Nat := (bit n 0 + bit n 1 + bit n 2) % 2
|
|
|
450
451
|
def ghzXSupport : List Nat := [0, 3, 5, 6]
|
|
451
452
|
```
|
|
452
453
|
|
|
453
|
-
### `reach.lean` — 2 definition(s),
|
|
454
|
+
### `reach.lean` — 2 definition(s), 5 theorem(s)
|
|
454
455
|
|
|
455
456
|
```lean
|
|
456
457
|
def bounds : List Nat := List.range' 1 50
|
|
@@ -500,7 +501,7 @@ def popcount (n : Nat) : Nat := (List.range 12).foldl (fun a i => a + n / 2 ^ i
|
|
|
500
501
|
def tm (n : Nat) : Nat := popcount n % 2
|
|
501
502
|
```
|
|
502
503
|
|
|
503
|
-
### `speed.lean` — 8 definition(s),
|
|
504
|
+
### `speed.lean` — 8 definition(s), 11 theorem(s)
|
|
504
505
|
|
|
505
506
|
```lean
|
|
506
507
|
def recomputeUs : Nat := 21582900 -- folding 2^20 leaves
|
|
@@ -532,7 +533,7 @@ def sealBits : Nat := 128
|
|
|
532
533
|
def refl (d : Nat) : Nat := 10 - d -- the shared reflection r(d) = 10 − d (the ½/heart-analogue centre)
|
|
533
534
|
```
|
|
534
535
|
|
|
535
|
-
### `z9.lean` —
|
|
536
|
+
### `z9.lean` — 8 definition(s), 22 theorem(s)
|
|
536
537
|
|
|
537
538
|
```lean
|
|
538
539
|
def B : Nat := 9
|
|
@@ -541,7 +542,8 @@ def isUnit (d : Nat) : Bool := (List.range B).any (fun e => m9 (d * e) == 1)
|
|
|
541
542
|
def units : List Nat := (List.range B).filter isUnit
|
|
542
543
|
def pow9 (b e : Nat) : Nat := m9 (b ^ e)
|
|
543
544
|
def orbit (k : Nat) : Nat := m9 (2 ^ k)
|
|
544
|
-
def
|
|
545
|
+
def logOrbit (u : Nat) : Option Nat := (List.range 6).find? (fun k => orbit k == u)
|
|
546
|
+
def settledHere : Nat := 21
|
|
545
547
|
```
|
|
546
548
|
|
|
547
549
|
### `z9plus.lean` — 16 definition(s), 32 theorem(s)
|
|
@@ -567,6 +569,6 @@ def gcd9 (a b : Nat) : Nat := gcdF (a + b + 1) a b
|
|
|
567
569
|
|
|
568
570
|
---
|
|
569
571
|
|
|
570
|
-
**
|
|
572
|
+
**638** declarations, **0** axiom dependencies, **321** definitions they rest on.
|
|
571
573
|
A content-address proves integrity, not truth, and an axiom index proves neither: it states what was
|
|
572
574
|
assumed, so a reader can disagree with the assumptions rather than guess at them. `0/7`.
|
package/CHALLENGES.md
CHANGED
|
@@ -18,11 +18,11 @@ title: Challenges
|
|
|
18
18
|
|
|
19
19
|
**Humanity: 1 / 7** (6 open). **This deposit: 0 / 7** — it settles none of the seven itself.
|
|
20
20
|
|
|
21
|
-
## Discovered theorems (decidable, over ℤ/9) —
|
|
21
|
+
## Discovered theorems (decidable, over ℤ/9) — 2577 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 (629)
|
|
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…`
|
|
@@ -643,6 +643,20 @@ Computed by exhaustion, each a monograph with its own page (`/theorem/<key>`) an
|
|
|
643
643
|
- [lean_speed_the_verify_in_nanoseconds_reads_back_its_microseconds](/theorem/lean_speed_the_verify_in_nanoseconds_reads_back_its_microseconds) — lean speed.lean: the_verify_in_nanoseconds_reads_back_its_microseconds — (List.range 1000).all (fun u => u * 1000 / 1000 == u) ∧ nsPerVerify = verifyUs * 1000 ∧ nsPerVerify / 1000 = verifyUs ∧ nsPerVerify > 10000 — decided by the Lean kernel over its whole finite domain, axiom-free · `e8a082ef-9515…`
|
|
644
644
|
- [lean_speed_the_width_is_the_ceiling_of_128_bits_over_the_symbol](/theorem/lean_speed_the_width_is_the_ceiling_of_128_bits_over_the_symbol) — lean speed.lean: the_width_is_the_ceiling_of_128_bits_over_the_symbol — (List.range' 1 8).all (fun b => charsFor b * b ≥ 128 && (charsFor b - 1) * b < 128) ∧ charsFor 4 = hexChars ∧ charsFor 6 = hexbitChars ∧ hexbitChars < hexChars ∧ hexbitChars * 100 / hexChars = 68 — decided by the Lean kernel over its whole finite domain, axiom-free · `5811891a-d052…`
|
|
645
645
|
- [lean_speed_hexbits_are_slower_and_the_ratio_multiplies_back](/theorem/lean_speed_hexbits_are_slower_and_the_ratio_multiplies_back) — lean speed.lean: hexbits_are_slower_and_the_ratio_multiplies_back — (List.range' 1 20).all (fun b => (List.range 400).all (fun a => (a / b) * b ≤ a && a < (a / b + 1) * b)) ∧ hexbitMs > hexMs ∧ hexbitMs * 10 / hexMs = 18 — decided by the Lean kernel over its whole finite domain, axiom-free · `91a92ea5-bedd…`
|
|
646
|
+
- [lean_elementary_the_wythoff_sequences_partition_the_integers](/theorem/lean_elementary_the_wythoff_sequences_partition_the_integers) — lean elementary.lean: the_wythoff_sequences_partition_the_integers — (List.range' 1 50).all (fun m => ((List.range' 1 40).map lowerWythoff).count m + ((List.range' 1 40).map upperWythoff).count m == 1) — decided by the Lean kernel over its whole finite domain, axiom-free · `45729b78-1ded…`
|
|
647
|
+
- [lean_energy_the_atoms_read_back_from_the_mass](/theorem/lean_energy_the_atoms_read_back_from_the_mass) — lean energy.lean: the_atoms_read_back_from_the_mass — (List.range 10).all (fun h => (List.range 10).all (fun o => atomsOf (mass h o) == some (h, o))) ∧ atomsOf mgH2 = some (2, 0) ∧ atomsOf mgO2 = some (0, 2) ∧ atomsOf mgH2O = some (2, 1) — decided by the Lean kernel over its whole finite domain, axiom-free · `e49b5ab6-4f44…`
|
|
648
|
+
- [lean_families_invOf_is_an_inverse_and_an_involution_on_the_units](/theorem/lean_families_invOf_is_an_inverse_and_an_involution_on_the_units) — lean families.lean: invOf_is_an_inverse_and_an_involution_on_the_units — (List.range 9).all (fun d => match invOf d with | some e => d * e % 9 == 1 && invOf e == some d | none => gcd' d 9 != 1) — decided by the Lean kernel over its whole finite domain, axiom-free · `85ad9b47-1b45…`
|
|
649
|
+
- [lean_families_choose_is_invariant_under_the_involution_k_to_n_minus_k](/theorem/lean_families_choose_is_invariant_under_the_involution_k_to_n_minus_k) — lean families.lean: choose_is_invariant_under_the_involution_k_to_n_minus_k — (List.range 13).all (fun n => (List.range (n + 1)).all (fun k => choose n k == choose n (n - k) && n - (n - k) == k)) — decided by the Lean kernel over its whole finite domain, axiom-free · `0affa1b0-91a0…`
|
|
650
|
+
- [lean_light_the_second_returns_from_the_metre_and_the_period](/theorem/lean_light_the_second_returns_from_the_metre_and_the_period) — lean light.lean: the_second_returns_from_the_metre_and_the_period — (List.range 100).all (fun s => travel s / c == s && periods s / dNuCs == s) — decided by the Lean kernel over its whole finite domain, axiom-free · `04685db2-fda6…`
|
|
651
|
+
- [lean_z9_the_orbit_step_is_read_back_by_its_log](/theorem/lean_z9_the_orbit_step_is_read_back_by_its_log) — lean z9.lean: the_orbit_step_is_read_back_by_its_log — (List.range 6).all (fun k => logOrbit (orbit k) == some k) ∧ units.all (fun u => (logOrbit u).map orbit == some u) — decided by the Lean kernel over its whole finite domain, axiom-free · `e29d831e-5bde…`
|
|
652
|
+
- [lean_energy_splitting_then_burning_is_the_identity_at_every_ledger_value](/theorem/lean_energy_splitting_then_burning_is_the_identity_at_every_ledger_value) — lean energy.lean: splitting_then_burning_is_the_identity_at_every_ledger_value — ∀ e : Nat, burnE (splitE e) = e — proved by the Lean kernel for every value (by
|
|
653
|
+
intro), standard axioms only — checked by lean.ts · `2105157a-992b…`
|
|
654
|
+
- [lean_light_the_second_returns_from_the_metre_and_the_period_at_every_duration](/theorem/lean_light_the_second_returns_from_the_metre_and_the_period_at_every_duration) — lean light.lean: the_second_returns_from_the_metre_and_the_period_at_every_duration — ∀ s : Nat, travel s / c = s ∧ periods s / dNuCs = s — proved by the Lean kernel for every value (by
|
|
655
|
+
intro), standard axioms only — checked by lean.ts · `e6d8871f-bee4…`
|
|
656
|
+
- [lean_reach_the_predecessor_returns_every_successor](/theorem/lean_reach_the_predecessor_returns_every_successor) — lean reach.lean: the_predecessor_returns_every_successor — ∀ n : Nat, (n + 1) - 1 = n — proved by the Lean kernel for every value (by
|
|
657
|
+
intro), standard axioms only — checked by lean.ts · `a1d55ab6-baca…`
|
|
658
|
+
- [lean_speed_the_microseconds_return_from_the_nanoseconds_at_every_count](/theorem/lean_speed_the_microseconds_return_from_the_nanoseconds_at_every_count) — lean speed.lean: the_microseconds_return_from_the_nanoseconds_at_every_count — ∀ u : Nat, u * 1000 / 1000 = u — proved by the Lean kernel for every value (by
|
|
659
|
+
intro), standard axioms only — checked by lean.ts · `98899238-b934…`
|
|
646
660
|
|
|
647
661
|
### other — one-of-a-kind (0)
|
|
648
662
|
|
|
@@ -2227,4 +2241,4 @@ Each was withdrawn for want of a Lean proof and has since been given one, at a n
|
|
|
2227
2241
|
|
|
2228
2242
|
</details>
|
|
2229
2243
|
|
|
2230
|
-
Page content-address: `
|
|
2244
|
+
Page content-address: `b3fe5a9f-cb56-8d7e-8407-35922ca264f8`. Integrity, not truth — decidable facts and cited status, never a proof of the six open conjectures.
|
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
|
-
-
|
|
17
|
-
<sub>SEALED · `
|
|
18
|
-
-
|
|
19
|
-
<sub>SEALED · `
|
|
14
|
+
- The formal layer holds 638 kernel-accepted declarations across 32 files, and no file uses sorry or native_decide outside a comment.
|
|
15
|
+
<sub>SEALED · `ab935eeb-3c6e-8296-b909-662988c0b358`</sub>
|
|
16
|
+
- 625 of those 638 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 13 close by rfl and are declarations.
|
|
17
|
+
<sub>SEALED · `d99ad96a-152f-8c2f-a9fb-8553526bf5d6`</sub>
|
|
18
|
+
- 713 of them are sealed into the ledger, each carrying a receipt derived from the one before it.
|
|
19
|
+
<sub>SEALED · `e4b105b5-952f-8f03-9d59-38a411fb9817`</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 2577 entries with 0 chain breaks, 0 duplicate keys and 0 duplicate receipts.
|
|
43
|
+
<sub>SEALED · `20d842b9-73a7-8689-ba14-d864dd25263e`</sub>
|
|
44
|
+
- The count is 2577, which is 322 octaves and 1 over — the octave is a target the theorems earn, never a quota they are invented to fill.
|
|
45
|
+
<sub>SEALED · `b7bfb85b-fa87-8132-b212-ee42bf396edd`</sub>
|
|
46
46
|
|
|
47
47
|
## 5 · What the gate does and does not do
|
|
48
48
|
|
|
@@ -78,9 +78,9 @@ walked, computed from the statements themselves. Nothing is chosen for this tabl
|
|
|
78
78
|
| 7,529,536 | `gravity_holds_prose_code_and_paths` | `mechanical.lean` |
|
|
79
79
|
| 96,000 | `the_area_of_an_integer_right_triangle_is_a_multiple_of_six` | `elementary.lean` |
|
|
80
80
|
| 95,048 | `two_twenty_and_two_eighty_four_are_the_smallest_amicable_pair` | `demand2.lean` |
|
|
81
|
+
| 80,000 | `the_wythoff_sequences_partition_the_integers` | `elementary.lean` |
|
|
81
82
|
| 46,656 | `the_powers_of_two_mod_nine_and_of_three_mod_seven_are_isomorphic` | `elementary.lean` |
|
|
82
83
|
| 44,100 | `the_rejected_command_gets_a_receipt` | `mechanical.lean` |
|
|
83
|
-
| 41,160 | `the_theorems_are_the_hull_and_hardware` | `mechanical.lean` |
|
|
84
84
|
|
|
85
85
|
The largest domain settled here is **152,568,360,000 cases**, and it is finite — as every
|
|
86
86
|
entry in this ledger is, because `by decide` works by exhausting a domain and an infinite one cannot be
|
|
@@ -90,7 +90,7 @@ results; it is the result, read off the same arithmetic that produced the table.
|
|
|
90
90
|
|
|
91
91
|
## 7 · The proofs, as they document themselves
|
|
92
92
|
|
|
93
|
-
32 Lean files in 7 wings,
|
|
93
|
+
32 Lean files in 7 wings, 638 declarations of which 625 are theorems. The prose in this section is read out of the
|
|
94
94
|
sources — their frontmatter, their header comments and the comment above each theorem. Editing a proof edits
|
|
95
95
|
this page; there is nowhere else to keep the description in step.
|
|
96
96
|
|
|
@@ -108,9 +108,9 @@ this page; there is nowhere else to keep the description in step.
|
|
|
108
108
|
|
|
109
109
|
**The two-sided coin** — `coin.lean`, 12 theorem(s). One involution on ten digits, two sides, one fixed point, and one digit that leaves.
|
|
110
110
|
|
|
111
|
-
**Elementary arithmetic** — `elementary.lean`,
|
|
111
|
+
**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.
|
|
112
112
|
|
|
113
|
-
**Families over the ring** — `families.lean`,
|
|
113
|
+
**Families over the ring** — `families.lean`, 43 theorem(s). The families, quantified. Proving at scale.
|
|
114
114
|
|
|
115
115
|
**What every involution gives, and what it does not** — `involution.lean`, 8 theorem(s). transpositions, and that the number of fixed points therefore matches the parity of the set, is classical and long predates this deposit. It is the orbit-counting argument in any first course. What is this deposit's own here is the EXHAUSTIVE decision over ℤ/9 and the measured refusal below.
|
|
116
116
|
|
|
@@ -120,7 +120,7 @@ this page; there is nowhere else to keep the description in step.
|
|
|
120
120
|
|
|
121
121
|
**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.
|
|
122
122
|
|
|
123
|
-
**The ring ℤ/9** — `z9.lean`,
|
|
123
|
+
**The ring ℤ/9** — `z9.lean`, 22 theorem(s). The ℤ/9 families — mechanically generated theorems, proved by decide rather than tested in TypeScript.
|
|
124
124
|
|
|
125
125
|
**Entanglement in the ring** — `z9plus.lean`, 32 theorem(s). z9.lean settled the families exhaustively. This settles the claims the ledger stated individually and never generalised: which residues squares and cubes can be, which residues are primitive roots, the period of the doubling orbit's digital root, and the identity behind digit-reversal invariance. Each is stated as an EQUIVALENCE or an exact set where the ledger stated instances, so the negative half is proved too.
|
|
126
126
|
|
|
@@ -132,19 +132,19 @@ this page; there is nowhere else to keep the description in step.
|
|
|
132
132
|
|
|
133
133
|
**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.
|
|
134
134
|
|
|
135
|
-
**The water loop** — `energy.lean`,
|
|
135
|
+
**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.
|
|
136
136
|
|
|
137
137
|
**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.
|
|
138
138
|
|
|
139
|
-
**Light, space and time — arithmetic on numbers a standards body fixed** — `light.lean`,
|
|
139
|
+
**Light, space and time — arithmetic on numbers a standards body fixed** — `light.lean`, 13 theorem(s). Poids et Mesures, not results of this deposit: the metre from the speed of light (17th CGPM, 1983) and the seven defining constants fixed exactly in the 2019 revision of the SI, effective 20 May 2019 (BIPM, https://www.bipm.org/en/measurement-units/si-defining-constants). Nothing here measures anything.
|
|
140
140
|
|
|
141
141
|
**Every phenomenon this deposit touches, and the rule for the rest** — `phenomena.lean`, 4 theorem(s). Générale des Poids et Mesures (2019 revision, effective 20 May 2019); the electrochemical results are Michael Faraday's laws of electrolysis, 1834, and the standard enthalpy of combustion of hydrogen. Every physical result named here has an earlier author or a standards body, and none is this deposit's.
|
|
142
142
|
|
|
143
143
|
**Order-invariance** — `quantum.lean`, 12 theorem(s). form is invariant under permutation of its input, which is why `receipt_is_order_invariant` holds. What this file contributes is the Lean verification over a stated finite domain and the negative controls beside it — `naive_fold_is_not_order_invariant` shows the property is bought by the sort and not free, and `the_receipt_is_not_injective` and `the_invariance_is_canonicalisation_not_physics` state its limits. Verification and refusal, not discovery. prior_art_search: literature search performed 2026-09-05, terms "sorted Merkle tree order-invariant set commitment canonical ordering leaves"; prior art found and credited. This file was `unclassified` — no search had ever been run for it — and it is one of the 8 files whose 86 theorems are staged for DOIs. prior_art_pool: mixed canonicalisation before folding is a searchable technique; the receipt it folds is ours. 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: order-invariance of this deposit's receipt The quantum receipt — order invariance, proved rather than asserted.
|
|
144
144
|
|
|
145
|
-
**What exhaustion reaches, and what lies outside it** — `reach.lean`,
|
|
145
|
+
**What exhaustion reaches, and what lies outside it** — `reach.lean`, 5 theorem(s). old as mathematics; the deposit claims none of it. What is its own here is the decision over its OWN bounds, and the statement of where that decision stops.
|
|
146
146
|
|
|
147
|
-
**Why verification is fast, and what it is not** — `speed.lean`,
|
|
147
|
+
**Why verification is fast, and what it is not** — `speed.lean`, 11 theorem(s). wrong: the cost is logarithmic BECAUSE of a known result, and the repository was already crediting that result three files away. Bounded: what is not prior art is the MEASURED constants on this machine (recompute 21,582,900 µs against a 38 µs walk) and the arithmetic over them. A measurement is not a discovery either, and the file says so. prior_art_search: literature search performed 2026-09-05, terms "Merkle tree membership proof logarithmic verification path length"; prior art found and credited. prior_art_pool: unbounded the subject is this deposit's own verification cost. 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 verification cost
|
|
148
148
|
|
|
149
149
|
### the machine
|
|
150
150
|
|
|
@@ -172,7 +172,7 @@ this page; there is nowhere else to keep the description in step.
|
|
|
172
172
|
|
|
173
173
|
**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.
|
|
174
174
|
|
|
175
|
-
20 of
|
|
175
|
+
20 of 638 declarations carry no comment of their own and are shown here as the gap they are, not
|
|
176
176
|
filled with a template.
|
|
177
177
|
|
|
178
178
|
## 8 · What this build measured about itself
|
|
@@ -181,14 +181,14 @@ Read from the artefacts at build time, never carried between runs.
|
|
|
181
181
|
|
|
182
182
|
| measure | value |
|
|
183
183
|
|---|---|
|
|
184
|
-
| ledger entries | 2,
|
|
185
|
-
| standing — carries its own proof | **
|
|
184
|
+
| ledger entries | 2,577 — 322 octaves and 1 over |
|
|
185
|
+
| standing — carries its own proof | **629** |
|
|
186
186
|
| carried — withdrawn on its own evidence, proved by a live theorem | **434** |
|
|
187
187
|
| withdrawn — nothing proves it | 1,514 |
|
|
188
|
-
| proved in total | **
|
|
189
|
-
| standing keys → distinct theorems |
|
|
190
|
-
| Lean files · theorems | 32 ·
|
|
191
|
-
| proved `by decide` |
|
|
188
|
+
| proved in total | **1063** of 2,577 |
|
|
189
|
+
| standing keys → distinct theorems | 629 sealed, 0 of them keyed twice, 0 unresolvable |
|
|
190
|
+
| Lean files · theorems | 32 · 625 theorems (closed by exhaustion) + 9 rfl declarations, all axiom-free |
|
|
191
|
+
| proved `by decide` | 625 of 638 |
|
|
192
192
|
| claims a machine can render | 103 of 1,555 |
|
|
193
193
|
| claims needing an author | 1,452 — reported, never faked |
|
|
194
194
|
|
|
@@ -227,4 +227,4 @@ whether the work restates someone earlier. [The paper](/paper) typesets every st
|
|
|
227
227
|
|
|
228
228
|
---
|
|
229
229
|
|
|
230
|
-
*17 claims, all verified ·
|
|
230
|
+
*17 claims, all verified · 625 Lean theorems · 2577 ledger entries · trial root `b272f281-1f13-861a-bfdb-4c2e8af05483` · integrity, not truth · 0/7*
|
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 `c9811d14-6086-8c4f-9fd8-15e3a791a770`.
|
|
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,577** |
|
|
15
|
+
| standing — proved and sealed | 629 |
|
|
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 | 576 |
|
|
20
20
|
|
|
21
21
|
## Why entries were withdrawn — the reason recorded at the time
|
|
22
22
|
|
|
@@ -46,8 +46,8 @@ At least one of them was recoverable: `thue_morse_doubling_recurrence` was withd
|
|
|
46
46
|
| 2026-08-20 | 1,864 | `e6bb01bb5` | gates: green the three that were red — by fixing the authority |
|
|
47
47
|
| 2026-08-20 | 25 | `959f8af2a` | lean: verify once instead of twice, and cache what the kernel |
|
|
48
48
|
| 2026-09-04 | 24 | `5d319470d` | Item 12 executed: 24 duplicate addresses retired, and it broke |
|
|
49
|
+
| 2026-09-14 | 19 | `1c1b53f9a` | Nineteen more certificates become laws — the energy, speed, li |
|
|
49
50
|
| 2026-09-07 | 13 | `301c67798` | `namespace Classical` shadowed Lean's, in a deposit whose stan |
|
|
50
|
-
| 2026-09-05 | 7 | `43253e80b` | The self-certifying check knew one NAME, so it missed four — i |
|
|
51
51
|
|
|
52
52
|
## What this record does NOT establish
|
|
53
53
|
|
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
|
-
-
|
|
23
|
-
<sub>SEALED · `
|
|
24
|
-
-
|
|
25
|
-
<sub>SEALED · `
|
|
20
|
+
- The formal layer holds 638 kernel-accepted declarations across 32 files, and no file uses sorry or native_decide outside a comment.
|
|
21
|
+
<sub>SEALED · `ab935eeb-3c6e-8296-b909-662988c0b358`</sub>
|
|
22
|
+
- 625 of those 638 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 13 close by rfl and are declarations.
|
|
23
|
+
<sub>SEALED · `d99ad96a-152f-8c2f-a9fb-8553526bf5d6`</sub>
|
|
24
|
+
- 713 of them are sealed into the ledger, each carrying a receipt derived from the one before it.
|
|
25
|
+
<sub>SEALED · `e4b105b5-952f-8f03-9d59-38a411fb9817`</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 2577 entries with 0 chain breaks, 0 duplicate keys and 0 duplicate receipts.
|
|
49
|
+
<sub>SEALED · `20d842b9-73a7-8689-ba14-d864dd25263e`</sub>
|
|
50
|
+
- The count is 2577, which is 322 octaves and 1 over — the octave is a target the theorems earn, never a quota they are invented to fill.
|
|
51
|
+
<sub>SEALED · `b7bfb85b-fa87-8132-b212-ee42bf396edd`</sub>
|
|
52
52
|
|
|
53
53
|
## 5 · What the gate does and does not do
|
|
54
54
|
|
|
@@ -84,9 +84,9 @@ walked, computed from the statements themselves. Nothing is chosen for this tabl
|
|
|
84
84
|
| 7,529,536 | `gravity_holds_prose_code_and_paths` | `mechanical.lean` |
|
|
85
85
|
| 96,000 | `the_area_of_an_integer_right_triangle_is_a_multiple_of_six` | `elementary.lean` |
|
|
86
86
|
| 95,048 | `two_twenty_and_two_eighty_four_are_the_smallest_amicable_pair` | `demand2.lean` |
|
|
87
|
+
| 80,000 | `the_wythoff_sequences_partition_the_integers` | `elementary.lean` |
|
|
87
88
|
| 46,656 | `the_powers_of_two_mod_nine_and_of_three_mod_seven_are_isomorphic` | `elementary.lean` |
|
|
88
89
|
| 44,100 | `the_rejected_command_gets_a_receipt` | `mechanical.lean` |
|
|
89
|
-
| 41,160 | `the_theorems_are_the_hull_and_hardware` | `mechanical.lean` |
|
|
90
90
|
|
|
91
91
|
The largest domain settled here is **152,568,360,000 cases**, and it is finite — as every
|
|
92
92
|
entry in this ledger is, because `by decide` works by exhausting a domain and an infinite one cannot be
|
|
@@ -96,7 +96,7 @@ results; it is the result, read off the same arithmetic that produced the table.
|
|
|
96
96
|
|
|
97
97
|
## 7 · The proofs, as they document themselves
|
|
98
98
|
|
|
99
|
-
32 Lean files in 7 wings,
|
|
99
|
+
32 Lean files in 7 wings, 638 declarations of which 625 are theorems. The prose in this section is read out of the
|
|
100
100
|
sources — their frontmatter, their header comments and the comment above each theorem. Editing a proof edits
|
|
101
101
|
this page; there is nowhere else to keep the description in step.
|
|
102
102
|
|
|
@@ -114,9 +114,9 @@ this page; there is nowhere else to keep the description in step.
|
|
|
114
114
|
|
|
115
115
|
**The two-sided coin** — `coin.lean`, 12 theorem(s). One involution on ten digits, two sides, one fixed point, and one digit that leaves.
|
|
116
116
|
|
|
117
|
-
**Elementary arithmetic** — `elementary.lean`,
|
|
117
|
+
**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.
|
|
118
118
|
|
|
119
|
-
**Families over the ring** — `families.lean`,
|
|
119
|
+
**Families over the ring** — `families.lean`, 43 theorem(s). The families, quantified. Proving at scale.
|
|
120
120
|
|
|
121
121
|
**What every involution gives, and what it does not** — `involution.lean`, 8 theorem(s). transpositions, and that the number of fixed points therefore matches the parity of the set, is classical and long predates this deposit. It is the orbit-counting argument in any first course. What is this deposit's own here is the EXHAUSTIVE decision over ℤ/9 and the measured refusal below.
|
|
122
122
|
|
|
@@ -126,7 +126,7 @@ this page; there is nowhere else to keep the description in step.
|
|
|
126
126
|
|
|
127
127
|
**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.
|
|
128
128
|
|
|
129
|
-
**The ring ℤ/9** — `z9.lean`,
|
|
129
|
+
**The ring ℤ/9** — `z9.lean`, 22 theorem(s). The ℤ/9 families — mechanically generated theorems, proved by decide rather than tested in TypeScript.
|
|
130
130
|
|
|
131
131
|
**Entanglement in the ring** — `z9plus.lean`, 32 theorem(s). z9.lean settled the families exhaustively. This settles the claims the ledger stated individually and never generalised: which residues squares and cubes can be, which residues are primitive roots, the period of the doubling orbit's digital root, and the identity behind digit-reversal invariance. Each is stated as an EQUIVALENCE or an exact set where the ledger stated instances, so the negative half is proved too.
|
|
132
132
|
|
|
@@ -138,19 +138,19 @@ this page; there is nowhere else to keep the description in step.
|
|
|
138
138
|
|
|
139
139
|
**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.
|
|
140
140
|
|
|
141
|
-
**The water loop** — `energy.lean`,
|
|
141
|
+
**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.
|
|
142
142
|
|
|
143
143
|
**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.
|
|
144
144
|
|
|
145
|
-
**Light, space and time — arithmetic on numbers a standards body fixed** — `light.lean`,
|
|
145
|
+
**Light, space and time — arithmetic on numbers a standards body fixed** — `light.lean`, 13 theorem(s). Poids et Mesures, not results of this deposit: the metre from the speed of light (17th CGPM, 1983) and the seven defining constants fixed exactly in the 2019 revision of the SI, effective 20 May 2019 (BIPM, https://www.bipm.org/en/measurement-units/si-defining-constants). Nothing here measures anything.
|
|
146
146
|
|
|
147
147
|
**Every phenomenon this deposit touches, and the rule for the rest** — `phenomena.lean`, 4 theorem(s). Générale des Poids et Mesures (2019 revision, effective 20 May 2019); the electrochemical results are Michael Faraday's laws of electrolysis, 1834, and the standard enthalpy of combustion of hydrogen. Every physical result named here has an earlier author or a standards body, and none is this deposit's.
|
|
148
148
|
|
|
149
149
|
**Order-invariance** — `quantum.lean`, 12 theorem(s). form is invariant under permutation of its input, which is why `receipt_is_order_invariant` holds. What this file contributes is the Lean verification over a stated finite domain and the negative controls beside it — `naive_fold_is_not_order_invariant` shows the property is bought by the sort and not free, and `the_receipt_is_not_injective` and `the_invariance_is_canonicalisation_not_physics` state its limits. Verification and refusal, not discovery. prior_art_search: literature search performed 2026-09-05, terms "sorted Merkle tree order-invariant set commitment canonical ordering leaves"; prior art found and credited. This file was `unclassified` — no search had ever been run for it — and it is one of the 8 files whose 86 theorems are staged for DOIs. prior_art_pool: mixed canonicalisation before folding is a searchable technique; the receipt it folds is ours. 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: order-invariance of this deposit's receipt The quantum receipt — order invariance, proved rather than asserted.
|
|
150
150
|
|
|
151
|
-
**What exhaustion reaches, and what lies outside it** — `reach.lean`,
|
|
151
|
+
**What exhaustion reaches, and what lies outside it** — `reach.lean`, 5 theorem(s). old as mathematics; the deposit claims none of it. What is its own here is the decision over its OWN bounds, and the statement of where that decision stops.
|
|
152
152
|
|
|
153
|
-
**Why verification is fast, and what it is not** — `speed.lean`,
|
|
153
|
+
**Why verification is fast, and what it is not** — `speed.lean`, 11 theorem(s). wrong: the cost is logarithmic BECAUSE of a known result, and the repository was already crediting that result three files away. Bounded: what is not prior art is the MEASURED constants on this machine (recompute 21,582,900 µs against a 38 µs walk) and the arithmetic over them. A measurement is not a discovery either, and the file says so. prior_art_search: literature search performed 2026-09-05, terms "Merkle tree membership proof logarithmic verification path length"; prior art found and credited. prior_art_pool: unbounded the subject is this deposit's own verification cost. 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 verification cost
|
|
154
154
|
|
|
155
155
|
### the machine
|
|
156
156
|
|
|
@@ -178,7 +178,7 @@ this page; there is nowhere else to keep the description in step.
|
|
|
178
178
|
|
|
179
179
|
**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.
|
|
180
180
|
|
|
181
|
-
20 of
|
|
181
|
+
20 of 638 declarations carry no comment of their own and are shown here as the gap they are, not
|
|
182
182
|
filled with a template.
|
|
183
183
|
|
|
184
184
|
## 8 · What this build measured about itself
|
|
@@ -187,14 +187,14 @@ Read from the artefacts at build time, never carried between runs.
|
|
|
187
187
|
|
|
188
188
|
| measure | value |
|
|
189
189
|
|---|---|
|
|
190
|
-
| ledger entries | 2,
|
|
191
|
-
| standing — carries its own proof | **
|
|
190
|
+
| ledger entries | 2,577 — 322 octaves and 1 over |
|
|
191
|
+
| standing — carries its own proof | **629** |
|
|
192
192
|
| carried — withdrawn on its own evidence, proved by a live theorem | **434** |
|
|
193
193
|
| withdrawn — nothing proves it | 1,514 |
|
|
194
|
-
| proved in total | **
|
|
195
|
-
| standing keys → distinct theorems |
|
|
196
|
-
| Lean files · theorems | 32 ·
|
|
197
|
-
| proved `by decide` |
|
|
194
|
+
| proved in total | **1063** of 2,577 |
|
|
195
|
+
| standing keys → distinct theorems | 629 sealed, 0 of them keyed twice, 0 unresolvable |
|
|
196
|
+
| Lean files · theorems | 32 · 625 theorems (closed by exhaustion) + 9 rfl declarations, all axiom-free |
|
|
197
|
+
| proved `by decide` | 625 of 638 |
|
|
198
198
|
| claims a machine can render | 103 of 1,555 |
|
|
199
199
|
| claims needing an author | 1,452 — reported, never faked |
|
|
200
200
|
|
|
@@ -216,4 +216,4 @@ because no test was written that would seal them.
|
|
|
216
216
|
|
|
217
217
|
---
|
|
218
218
|
|
|
219
|
-
*17 claims, all verified ·
|
|
219
|
+
*17 claims, all verified · 625 Lean theorems · 2577 ledger entries · trial root `b272f281-1f13-861a-bfdb-4c2e8af05483` · integrity, not truth · 0/7*
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ceccec/millennium-solutions",
|
|
3
|
-
"version": "9.1.
|
|
3
|
+
"version": "9.1.3",
|
|
4
4
|
"description": "Verifiable, recomputable ℤ/9 vortex framework in ONE package — content-addressing, audit ledger, exact arithmetic (0/7), and the honesty toolkit. Facts only.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Tsvetan Rouschev",
|