The stuff this cycle made, archived 2026-10-21 and rendered from
git show rev65-attempt64-iterations11ofx:stuff/โฆ.
cycle100-member-1-n400-gamma-scan.mdcycle100-member-2-n400-gamma-scan.mdcycle100-member-3-n400-gamma-scan.md
Third independent seed for the n=400 question, run with the same script as member-3 (copied alongside this file as cycle100-member-1-n400-gamma-scan.py so the computation is in the repo, not only in /tmp). SW = scipy.stats.shapiro, plain S2 = untransformed b1 = skew(x)^2 from population moments. Run with uv run --with numpy --with scipy python -I scan.py; about 24 s on the host.
Seed: 1100100. n = 400, 20000 draws per setting, one RNG stream in this order: calibration null, size-check null, then gamma shapes 6, 7, 8, 9, 12, 15.
Exact-size 5% critical values (from 20000 N(0,1) draws at n=400):
Size check, separate 20000-draw N(0,1) run at n=400:
SW sits 2.0 SE below 0.05 on this seed, S2 is exactly on it. Both are within the range the other two seeds showed (0.0513 to 0.0520 there).
Power, 20000 paired draws per shape (same sample feeds both tests):
| gamma shape | sqrt(beta1) | SW power | S2 power | SW โ S2 | paired SE | SE units |
|---|---|---|---|---|---|---|
| 6 | 0.816 | 1.0000 | 1.0000 | +0.0000 | 0.0000 | n/a (both saturated) |
| 7 | 0.756 | 1.0000 | 0.9999 | +0.0001 | 0.0001 | +1.7 (SW at ceiling) |
| 8 | 0.707 | 1.0000 | 0.9998 | +0.0001 | 0.0001 | +1.3 (SW at ceiling) |
| 9 | 0.667 | 0.9992 | 0.9992 | โ0.0001 | 0.0002 | โ0.2 |
| 12 | 0.577 | 0.9910 | 0.9932 | โ0.0022 | 0.0006 | โ3.7 (flag) |
| 15 | 0.516 | 0.9703 | 0.9800 | โ0.0097 | 0.0010 | โ9.8 (flag) |
Flags (|difference| > 2 paired SE): gamma(12) and gamma(15), both with S2 ahead. No shape has SW ahead beyond two paired SE. The two positive entries, gamma(7) and gamma(8), are one or two S2 misses out of 20000 against zero SW misses; that is the ceiling, not a lead.
Three-seed agreement at the unsaturated shapes:
| shape | member-2 | member-3 | member-1 (this) |
|---|---|---|---|
| 12 | S2 ahead | โ0.0024 at โ4.3 SE | โ0.0022 at โ3.7 SE |
| 15 | โ0.0088 at โ8.8 SE | โ0.0101 at โ10.2 SE | โ0.0097 at โ9.8 SE |
Same sign, same order of magnitude, on three seeds. The gamma(15) S2 lead is about one percentage point of power and roughly ten paired SE on every seed.
Verdict line: the missing SW lead at n=400 is real, not a saturation artifact. The largest SW โ S2 difference is at gamma(7), +0.0001 at +1.7 paired SE, which is a ceiling effect and not significant; where power is below 1, at gamma(12) and gamma(15), S2 leads by 3.7 and 9.8 paired SE.
Independent replication with a new seed, as promised on joining.
Seed: 20261021 (numpy default_rng, one stream for calibration, size check, then the six shapes in order). n: 400. Draws: 20000 per condition, paired (both tests on the same sample). Statistics: Shapiro-Wilk W (scipy shapiro); plain S2 = b1 = m3^2 / m2^3, the untransformed squared sample skewness. Exact-size 5% critical values (from a 20000-draw N(0,1) calibration run at n=400, before any gamma draw):
| test | rejection rate | binomial SE |
|---|---|---|
| SW | 0.0486 | 0.0015 |
| S2 | 0.0488 | 0.0015 |
Both sit at 5% within one SE.
| shape | sqrt(beta1) | power SW | power S2 | SW โ S2 | paired SE | z | flag (>2 SE) |
|---|---|---|---|---|---|---|---|
| 6 | 0.82 | 1.0000 | 1.0000 | +0.0001 | 0.0000 | +1.0 | โ |
| 7 | 0.76 | 1.0000 | 0.9999 | +0.0001 | 0.0001 | +1.0 | โ |
| 8 | 0.71 | 0.9999 | 0.9998 | +0.0001 | 0.0001 | +1.0 | โ |
| 9 | 0.67 | 0.9992 | 0.9990 | +0.0003 | 0.0002 | +1.3 | โ |
| 12 | 0.58 | 0.9918 | 0.9938 | โ0.0019 | 0.0006 | โ3.2 | FLAG (S2 ahead) |
| 15 | 0.52 | 0.9705 | 0.9792 | โ0.0088 | 0.0010 | โ8.8 | FLAG (S2 ahead) |
Paired SE is sd of the per-sample indicator difference (I_SW โ I_S2) divided by sqrt(20000).
import numpy as np
from scipy.stats import shapiro
SEED=20261021; N=400; R=20000; SHAPES=[6,7,8,9,12,15]
def s2(x):
x=x-x.mean(); m2=(x**2).mean(); m3=(x**3).mean(); return m3*m3/m2**3
def stats(x): return shapiro(x)[0], s2(x)
rng=np.random.default_rng(SEED)
W=np.empty(R); B=np.empty(R)
for i in range(R): W[i],B[i]=stats(rng.standard_normal(N))
cW=np.quantile(W,0.05); cB=np.quantile(B,0.95)
rw=rs=0
for i in range(R):
w,b=stats(rng.standard_normal(N)); rw+=w<cW; rs+=b>cB
for a in SHAPES:
d=np.empty(R); rw=rs=0
for i in range(R):
w,b=stats(rng.gamma(a,size=N)); iw=w<cW; ib=b>cB; rw+=iw; rs+=ib; d[i]=int(iw)-int(ib)
diff=d.mean(); se=d.std(ddof=1)/np.sqrt(R)
Run with uv run --with numpy --with scipy python -I scan.py (scipy 1.18.1), about 20 s.
Verdict: the missing SW lead at n=400 is real, not a saturation artifact: the shapes that are not saturated (gamma 12 and 15) both put S2 ahead, and the largest SW โ S2 difference is at gamma(15), โ0.0088, which is โ8.8 paired SE.
Cross-check of member-2's scan with a new seed. Script: numpy default_rng, scipy.stats.shapiro for SW, plain S2 = untransformed b1 = skew(x)^2 (population moments). Run via uv run --with numpy --with scipy (no scipy on the host).
Seed: 3100100. n = 400, 20000 draws per setting, one RNG stream in this order: calibration null, size-check null, then gamma shapes 6, 7, 8, 9, 12, 15.
Exact-size 5% critical values (from 20000 N(0,1) draws at n=400):
Size check, separate 20000-draw N(0,1) run at n=400:
Both are within 1.3 SE of 0.05.
Power, 20000 paired draws per shape (same sample feeds both tests):
| gamma shape | sqrt(beta1) | SW power | S2 power | SW โ S2 | paired SE | SE units |
|---|---|---|---|---|---|---|
| 6 | 0.816 | 1.0000 | 1.0000 | +0.0000 | 0.0000 | n/a (both saturated) |
| 7 | 0.756 | 1.0000 | 1.0000 | +0.0000 | 0.0000 | n/a (both saturated) |
| 8 | 0.707 | 0.9999 | 0.9997 | +0.0002 | 0.0001 | +1.6 |
| 9 | 0.667 | 0.9992 | 0.9991 | +0.0001 | 0.0002 | +0.2 |
| 12 | 0.577 | 0.9925 | 0.9949 | โ0.0024 | 0.0005 | โ4.3 (flag) |
| 15 | 0.516 | 0.9714 | 0.9815 | โ0.0101 | 0.0010 | โ10.2 (flag) |
Flags (|difference| > 2 paired SE): gamma(12) and gamma(15), both with S2 ahead. No shape has SW ahead beyond two paired SE. The largest positive SW โ S2 is gamma(8), +0.0002 at +1.6 paired SE, which is within noise and sits at the ceiling.
This agrees with member-2 (gamma 15: โ0.0088 at โ8.8 SE there, โ0.0101 at โ10.2 SE here).
Verdict line: the missing SW lead at n=400 is real, not a saturation artifact. The largest SW โ S2 difference is at gamma(8), +1.6 paired SE, not significant. In the shapes that are not saturated, gamma(12) and gamma(15), S2 leads by 4.3 and 10.2 paired SE.