1# Verification: brute-force WCB on explicit y* vs vectorised formula; MC var vs exact var.2import json, numpy as np3rng = np.random.default_rng(1)4n = np.array([8,16,32,64,8]); G=len(n); N=n.sum(); gid=np.repeat(np.arange(G), n)5y = rng.standard_normal(G)[gid]*np.sqrt(.5) + rng.standard_normal(N)*np.sqrt(.5)6yb=y.mean(); eh=y-yb; S=np.bincount(gid,weights=eh); W=rng.integers(0,2,(399,G))*2-17d=(W@S)/N; Ss=W*S-d[:,None]*n; vs=G/(G-1)*np.sum(Ss**2,1)/N**2; t1=np.abs(d)/np.sqrt(vs)8t2=[]9for w in W:10 ys=yb+w[gid]*eh; m=ys.mean(); r=ys-m; v=G/(G-1)*np.sum(np.bincount(gid,weights=r)**2)/N**2; t2.append(abs(m-yb)/np.sqrt(v))11print("max abs diff t* vectorised vs brute force:", np.max(np.abs(t1-np.array(t2))))12res=json.load(open("out/results.json"))13for c,m in res["cell_diagnostics"].items():14 print(c, "MC var/exact var = %.4f"%(m["mc_var_ybar"]/m["var_exact"]), "distinct q:", m["n_distinct_q"], "zero V*:", m["n_zero_vstar"])15