#!/usr/bin/env python3 """Post-run diagnostic, explicitly separate from the frozen main protocol.""" import os os.environ['OPENBLAS_NUM_THREADS']='1' import json from pathlib import Path import numpy as np from benchmark import queyranne root=Path(__file__).resolve().parents[1] rows=[] for p in sorted((root/'results').glob('n*.json')): r=json.loads(p.read_text());d=np.load(root/'data'/f'{r["instance"]}.npz',allow_pickle=False) n=r['n'];full=(1<>1]) m,val=queyranne(n,f);star=float(d['Phi_SI'].min());eps=1e-10+1e-8*star rows.append({'instance':r['instance'],'unnormalized_Queyranne_hit':val<=star+eps, 'unnormalized_Queyranne_phi':val,'unnormalized_exact_phi':star, 'unnormalized_Queyranne_z':m>>1,'unnormalized_exact_z':int(d['Phi_SI'].argmin()), 'normalization_changes_MIP':int(d['Phi_SI'].argmin())!=r['exact_z']}) out={'status':'post-run diagnostic, not part of frozen primary protocol','results':rows, 'unnormalized_Queyranne_hits':sum(x['unnormalized_Queyranne_hit'] for x in rows), 'normalization_changes_MIP_count':sum(x['normalization_changes_MIP'] for x in rows)} (root/'validation/unnormalized_diagnostic.json').write_text(json.dumps(out,indent=2)+'\n') print(out['unnormalized_Queyranne_hits'],out['normalization_changes_MIP_count'])