erdos-problems 0.3.2 → 0.3.4

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.
Files changed (34) hide show
  1. package/package.json +1 -1
  2. package/packs/number-theory/problems/848/BOUNDED_VERIFICATION_PLAN.md +46 -0
  3. package/packs/number-theory/problems/848/BRANCH_COMPARISON_LEDGER.md +85 -0
  4. package/packs/number-theory/problems/848/CERTIFIED_NUMERICAL_LEDGER.md +88 -0
  5. package/packs/number-theory/problems/848/EXACT_SMALL_N_1_2000_CERTIFICATE.md +55 -0
  6. package/packs/number-theory/problems/848/EXACT_SMALL_N_1_2000_RESULTS.json +102531 -0
  7. package/packs/number-theory/problems/848/EXTERNAL_VERIFICATION_LEDGER.md +56 -0
  8. package/packs/number-theory/problems/848/EXTRACTION_CHECKLIST.md +31 -4
  9. package/packs/number-theory/problems/848/FRONTIER_NOTE.md +39 -8
  10. package/packs/number-theory/problems/848/INTERVAL_WORK_QUEUE.yaml +43 -0
  11. package/packs/number-theory/problems/848/LEMMA21_EXPLICIT_BOUND.md +200 -0
  12. package/packs/number-theory/problems/848/LEMMA21_TRUNCATION_SCAN.md +111 -0
  13. package/packs/number-theory/problems/848/LEMMA22_EXPLICIT_BOUND.md +133 -0
  14. package/packs/number-theory/problems/848/LEMMA22_PRIME_COUNT_BOUND.md +58 -0
  15. package/packs/number-theory/problems/848/OPERATIONAL_THRESHOLD_POSTURE.md +38 -0
  16. package/packs/number-theory/problems/848/OPS_DETAILS.yaml +140 -9
  17. package/packs/number-theory/problems/848/PROOF_OBLIGATIONS.md +101 -0
  18. package/packs/number-theory/problems/848/PROPOSITION_EXPLICIT_CANDIDATE.md +69 -0
  19. package/packs/number-theory/problems/848/ROUTE_HISTORY.md +19 -2
  20. package/packs/number-theory/problems/848/ROUTE_PACKET.yaml +7 -4
  21. package/packs/number-theory/problems/848/THEOREM_STYLE_EXPLICIT_NOTE.md +91 -0
  22. package/packs/number-theory/problems/848/VERIFICATION_CERTIFICATE_SPEC.md +60 -0
  23. package/packs/number-theory/problems/848/VERIFICATION_REGIMES.md +89 -0
  24. package/packs/number-theory/problems/848/WEAKEST_BRANCH_T250_ASSEMBLY.md +109 -0
  25. package/packs/number-theory/problems/848/WEAKEST_BRANCH_T250_BUDGET.md +107 -0
  26. package/packs/number-theory/problems/848/compute/problem848_small_n_exact_scan.mjs +170 -0
  27. package/packs/number-theory/problems/848/context.yaml +22 -15
  28. package/problems/848/CHECKPOINT_NOTES.md +4 -0
  29. package/problems/848/EVIDENCE.md +78 -4
  30. package/problems/848/EXPLICIT_CANDIDATE_REVIEW.md +57 -0
  31. package/problems/848/REFERENCES.md +4 -0
  32. package/problems/848/ROUTES.md +30 -8
  33. package/problems/848/SHARE_READY_SUMMARY.md +37 -0
  34. package/problems/848/STATEMENT.md +9 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "erdos-problems",
3
- "version": "0.3.2",
3
+ "version": "0.3.4",
4
4
  "description": "CLI atlas and workspace tools for Paul Erdos problems.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -0,0 +1,46 @@
1
+ # Problem 848 Bounded Verification Plan
2
+
3
+ This note chooses the next closure lane for Problem `848`.
4
+
5
+ Chosen lane:
6
+ - bounded finite verification under the best trusted explicit threshold currently available
7
+
8
+ Reason for this choice:
9
+ - `848` is already a decidable-gap problem, not a fresh asymptotic frontier
10
+ - the imported public thread currently reaches `N0 = 2.64 x 10^17` on 2026-03-23
11
+ - lowering `N0` further is still valuable, but only because it reduces the finite remainder
12
+ - a structured verification program is closer to the actual finish line than another isolated
13
+ threshold race
14
+
15
+ Scope of this lane:
16
+ - do not claim full closure yet
17
+ - do not silently adopt imported threshold claims as canonical repo truth
18
+ - instead, build the machinery that would let the repo:
19
+ - state exactly what range is covered by what method
20
+ - preserve certificates and checkpoints
21
+ - audit imported verification claims before relying on them
22
+
23
+ Immediate bounded-verification objectives:
24
+ 1. Freeze the best imported threshold currently trusted enough to size the finite remainder.
25
+ 2. Split the finite remainder into verification regimes rather than treating it as one giant
26
+ interval.
27
+ 3. Define what a reproducible verification certificate must contain before the repo counts a
28
+ range as covered.
29
+ 4. Record prior public verification attempts, especially where external reviewers raised
30
+ correctness concerns.
31
+ 5. Keep the verification lane modular enough that imported proofs, local proofs, and future
32
+ compute runs can all plug into the same certificate surface.
33
+
34
+ What success would look like:
35
+ - the repo can say exactly which interval is covered
36
+ - each covered interval points to a concrete certificate type and reproduction story
37
+ - imported public verification work is either accepted with an audit note or left external
38
+ - the remaining uncovered range shrinks monotonically
39
+
40
+ Current progress:
41
+ - the repo now has an exact small-`N` certificate for `1..2000`
42
+
43
+ What this lane is not:
44
+ - not brute force to `2.64 x 10^17`
45
+ - not an automatic endorsement of every public verification claim
46
+ - not a replacement for threshold-lowering work if a cleaner explicit `N0` emerges
@@ -0,0 +1,85 @@
1
+ # Problem 848 Branch Comparison Ledger
2
+
3
+ This note closes `N848.G1.A8`.
4
+
5
+ Question:
6
+ - does the current shared witness
7
+ - `T = 250`
8
+ - `N >= exp(1420)`
9
+ - `eta = 10^-4`
10
+
11
+ already dominate the other public case bounds in Sawhney's proof?
12
+
13
+ Answer:
14
+ - yes, at the repo's current explicit level it does
15
+
16
+ ## Shared witness inputs
17
+
18
+ From the existing explicit notes:
19
+ - weakest-branch main term: `0.0376113079`
20
+ - `A*` tail at `T = 250`: `0.0005641453`
21
+ - two-class Lemma 2.2 tail at `T = 250`: `0.0000491054`
22
+ - one-class prime-count term at `N >= exp(1420)`: at most `1 / (1420 - 1.1)`
23
+ - two-class prime-count term at `N >= exp(1420)`: at most `2 / (1420 - 1.1)`
24
+
25
+ These are enough to compare the other public branches without changing the witness.
26
+
27
+ ## Case `0.0358`
28
+
29
+ Repo explicit bound at the shared witness:
30
+ - main term about `0.0356925181`
31
+ - visible tail terms about `0.0002943490`
32
+ - one-class prime-count term about `0.0007047713`
33
+
34
+ Total visible bound:
35
+ - about `0.0366916384`
36
+
37
+ Visible reserve to `0.04`:
38
+ - about `0.0033083616`
39
+
40
+ ## Case `0.0336`
41
+
42
+ Repo explicit bound at the shared witness:
43
+ - main term about `0.0334753577`
44
+ - visible tail terms about `0.0003311781`
45
+ - two-class prime-count term about `0.0014095427`
46
+
47
+ Total visible bound:
48
+ - about `0.0352160784`
49
+
50
+ Visible reserve to `0.04`:
51
+ - about `0.0047839216`
52
+
53
+ ## Case `0.0294`
54
+
55
+ Repo explicit bound at the shared witness:
56
+ - main term about `0.0293394076`
57
+ - visible tail terms about `0.0000491054`
58
+ - two-class prime-count term about `0.0014095427`
59
+
60
+ Total visible bound:
61
+ - about `0.0307980556`
62
+
63
+ Visible reserve to `0.04`:
64
+ - about `0.0092019444`
65
+
66
+ ## Honest comparison conclusion
67
+
68
+ At the repo's current explicit level:
69
+ - the `0.0377` branch remains the tightest branch
70
+ - but it is already closed by the shared witness
71
+ - the branches `0.0358`, `0.0336`, and `0.0294` all retain strictly larger visible reserve
72
+
73
+ So the current witness appears to be a whole-proof witness candidate, not just a
74
+ weakest-branch patch.
75
+
76
+ ## Remaining caution
77
+
78
+ This is still a repo witness ledger, not yet a publication-ready explicit-threshold proof.
79
+
80
+ What remains:
81
+ - package the whole argument as a proposition-level explicit candidate
82
+ - decide whether to state `N0 <= exp(1420)` as the current repo witness, or to keep it as a
83
+ claim-safe candidate pending a cleaner writeup
84
+
85
+ But the route no longer points to another hidden branch obstruction.
@@ -0,0 +1,88 @@
1
+ # Problem 848 Certified Numerical Ledger
2
+
3
+ This note closes `N848.G1.A11`.
4
+
5
+ Purpose:
6
+ - replace the displayed decimal inputs used in the current witness with conservative machine
7
+ intervals
8
+
9
+ Scope:
10
+ - this is still a repo-level certification note, not a formal proof-assistant artifact
11
+ - the goal is to eliminate naked decimal approximations from the current witness candidate
12
+
13
+ ## Method
14
+
15
+ Cutoff:
16
+ - enumerate primes up to `5,000,000`
17
+
18
+ For the Euler-product main terms:
19
+ - multiply the truncated product in machine arithmetic
20
+ - apply a conservative relative rounding envelope `n * eps / (1 - n * eps)` where `n` is the
21
+ number of factors and `eps = 2^-52`
22
+ - apply a missing-tail lower bound using
23
+ - `sum_{p > P} 2 / p^2 <= 2 / P` for the `A*` product
24
+ - `sum_{p > P} 1 / p^2 <= 1 / P` for the `A7 union A18` product
25
+
26
+ For the tail sums:
27
+ - sum the prime-square reciprocals up to the same cutoff
28
+ - add both a summation-error envelope and the missing-tail envelope `1 / P`
29
+
30
+ ## Certified upper bounds used by the witness
31
+
32
+ ### 1. `A*` main term
33
+
34
+ Certified upper bound:
35
+ - `A* main <= 0.0251591225`
36
+
37
+ ### 2. `A7 union A18` main term
38
+
39
+ Certified upper bound:
40
+ - `A7 union A18 main <= 0.0124525569`
41
+
42
+ ### 3. `A*` tail at `T = 250`
43
+
44
+ Certified upper bound:
45
+ - `A* tail <= 0.0005641454`
46
+
47
+ ### 4. Two-class Lemma 2.2 tail at `T = 250`
48
+
49
+ Certified upper bound:
50
+ - `Lemma 2.2 tail <= 0.0000491055`
51
+
52
+ ### 5. Two-class prime-count term at `N >= exp(1420)`
53
+
54
+ From `LEMMA22_PRIME_COUNT_BOUND.md`:
55
+ - `2 pi(N) / N <= 0.0014095427`
56
+
57
+ ## Certified weakest-branch witness
58
+
59
+ Using only the certified upper bounds above, the weakest branch satisfies
60
+
61
+ - `|A| / N <= 0.0396344729`
62
+
63
+ for the shared witness scale
64
+ - `N >= exp(1420)`
65
+ - `T = 250`.
66
+
67
+ So the certified visible reserve to `1/25 = 0.04` is at least
68
+
69
+ - `0.04 - 0.0396344729 = 0.0003655271`.
70
+
71
+ After the working choice
72
+ - `eta = 10^-4`,
73
+
74
+ the certified visible reserve is still at least
75
+
76
+ - `0.0002655271`.
77
+
78
+ ## Honest consequence
79
+
80
+ This note removes the main numerical discomfort in the current repo candidate:
81
+ - the witness no longer depends only on display decimals copied from exploratory notes
82
+
83
+ What it still does **not** provide:
84
+ - a formal proof-assistant certificate
85
+ - a publication-ready theorem writeup
86
+
87
+ But it does mean the current route can now treat the witness as numerically hardened at the
88
+ repo level.
@@ -0,0 +1,55 @@
1
+ # Problem 848 Exact Small-`N` Certificate: `1..2000`
2
+
3
+ This is the first exact bounded-verification certificate frozen in the repo for Problem `848`.
4
+
5
+ ## Claim
6
+
7
+ For every `N` with `1 <= N <= 2000`, the maximum size of a set `A subseteq [N]` such that
8
+ `ab + 1` is never squarefree for all `a, b in A` is equal to the size of the `7 mod 25`
9
+ residue class in `[N]`.
10
+
11
+ This certificate only covers the interval `1..2000`.
12
+
13
+ ## Method class
14
+
15
+ - `exact_small_n`
16
+
17
+ ## Reproduction
18
+
19
+ Command used:
20
+
21
+ ```bash
22
+ node packs/number-theory/problems/848/compute/problem848_small_n_exact_scan.mjs \
23
+ --min 1 \
24
+ --max 2000 \
25
+ --json-output packs/number-theory/problems/848/EXACT_SMALL_N_1_2000_RESULTS.json
26
+ ```
27
+
28
+ The script:
29
+ - filters vertices by the loop condition `a^2 + 1` not squarefree
30
+ - builds the compatibility graph where `a` and `b` are adjacent exactly when `ab + 1` is not
31
+ squarefree
32
+ - computes an exact maximum clique for each `N`
33
+ - compares that maximum clique size against the `7 mod 25` class size
34
+
35
+ ## Outcome
36
+
37
+ - interval: `1..2000`
38
+ - result: verified
39
+ - every scanned `N` satisfied:
40
+ - `max_clique_size = |{n in [N] : n equiv 7 mod 25}|`
41
+
42
+ The machine-readable result packet is:
43
+ - `EXACT_SMALL_N_1_2000_RESULTS.json`
44
+
45
+ ## Scope warning
46
+
47
+ This does **not** certify anything above `2000`.
48
+ It is a base interval certificate only.
49
+
50
+ ## Why this interval matters
51
+
52
+ - it creates a real in-repo covered interval, not just a verification plan
53
+ - it is large enough to be a meaningful finite-check foothold
54
+ - it does not rely on disputed public computation
55
+ - it gives the bounded-verification lane a concrete certificate format and reproduction path