The stuff this cycle made, archived 2026-10-21 and rendered from
git show rev65-attempt59-iterations11ofx:stuff/….
cycle95-gamma-skew-results.mdcycle95-gamma-skew-seed95303.mdcycle95-gamma-skew-seed95407.md
Question: how does the Shapiro-Wilk margin over plain S2 scale with population skewness? Script: stuff/cycle95_gamma_skew.py (run with numpy + scipy, 13 s wall).
| shape | sqrt(beta1) | SW power | S2 power | SW-S2 | paired SE | gap/SE | beats >2SE |
|---|---|---|---|---|---|---|---|
| 1 | 2.0000 | 0.9993 | 0.9801 | +0.0192 | 0.0010 | +19.8 | yes |
| 2 | 1.4142 | 0.9478 | 0.8159 | +0.1319 | 0.0024 | +55.1 | yes |
| 5 | 0.8944 | 0.5804 | 0.4333 | +0.1471 | 0.0026 | +56.8 | yes |
| 10 | 0.6325 | 0.3291 | 0.2453 | +0.0839 | 0.0023 | +36.8 | yes |
| 20 | 0.4472 | 0.1823 | 0.1409 | +0.0414 | 0.0020 | +21.1 | yes |
| 50 | 0.2828 | 0.1057 | 0.0877 | +0.0181 | 0.0017 | +10.7 | yes |
Reading the table from high to low skewness (shape 1 to shape 50), the margin goes 0.019, 0.132, 0.147, 0.084, 0.041, 0.018. It is **not monotone in skewness**. It rises from shape 1 to shape 2 and again from shape 2 to shape 5, then falls at every later step. The margin peaks near sqrt(beta1) = 0.89 (gamma(5)), where SW is at 58% power and S2 at 43%.
The two inversions are both saturation effects at the skewed end, not S2 wins: at gamma(1) SW is at 0.999 power and S2 at 0.980, so there is no room left for a large gap; at gamma(2) SW is already at 0.948. Below the peak the margin shrinks roughly in step with power itself: the ratio of margin to S2 power is 0.34 at shape 5, 0.34 at shape 10, 0.29 at shape 20, 0.21 at shape 50.
SW beats S2 beyond two paired SE at every shape tested, including the least skewed. The smallest skewness at which SW still beats S2 beyond two paired SE is therefore sqrt(beta1) = 0.2828 (gamma(50)), the floor of this grid; the gap/SE there is still 10.7, so the crossover, if any, lies below sqrt(beta1) = 0.28, outside the shapes this cycle's direction asked for.
Largest shape with SW minus S2 beyond two paired SE: shape 50, sqrt(beta1) = 0.2828, margin +0.0181, paired SE 0.0017; adjacent inversions between the margin ordering and the sqrt(beta1) ordering across the six shapes: 2 (not monotone, peak at shape 5); empirical null rejection rate from a separate 20000-draw N(0,1) run at the stated critical values: SW 0.0494, S2 0.0491.
Replicates stuff/cycle95-gamma-skew-results.md (seed 95201) with a fresh seed. Script: stuff/cycle95_gamma_skew.py with only SEED = 95303 changed, run with numpy and scipy via uv run --no-project --with numpy --with scipy. Wall 13 s.
Seed 95303. n = 50, 20000 paired draws per law, all tests at exact 5% size.
Critical values (one 20000-draw N(0,1) calibration run):
| shape | sqrt(beta1) | SW power | S2 power | SW-S2 | paired SE | gap/SE | beats >2SE |
|---|---|---|---|---|---|---|---|
| 1 | 2.0000 | 0.9993 | 0.9796 | +0.0197 | 0.0010 | +20.1 | yes |
| 2 | 1.4142 | 0.9485 | 0.8145 | +0.1340 | 0.0024 | +55.6 | yes |
| 5 | 0.8944 | 0.5836 | 0.4360 | +0.1476 | 0.0026 | +56.9 | yes |
| 10 | 0.6325 | 0.3170 | 0.2345 | +0.0826 | 0.0023 | +36.6 | yes |
| 20 | 0.4472 | 0.1851 | 0.1457 | +0.0393 | 0.0019 | +20.3 | yes |
| 50 | 0.2828 | 0.1004 | 0.0832 | +0.0173 | 0.0017 | +10.2 | yes |
Monotone in skewness: no. The margin peaks at gamma(5) (sqrt(beta1) 0.89) and falls toward both ends. Same shape as seed 95201: two adjacent inversions, at gamma(1) and gamma(2), where SW power saturates near 1 and the headroom for a gap collapses. From gamma(5) down to gamma(50) the margin falls monotonically with skewness.
Agreement with seed 95201: every shape is a win beyond two paired SE in both seeds, and the smallest-skewness margin replicates (gamma(50): +0.0173 here vs a 10.7 SE gap there, 10.2 SE here). The crossover, if any, lies below sqrt(beta1) = 0.28.
Null check caveat: on the separate 20000-draw N(0,1) run both tests reject a little under 5% (SW 0.0457, S2 0.0464; binomial SE about 0.0015, so roughly 2.5 to 3 SE low). Both are low by the same amount, so the paired comparison is not tilted toward either test, but the calibration quantile carries Monte Carlo noise of this size. Seed 95201 got 0.0494 and 0.0491.
Largest win shape: gamma(50), sqrt(beta1) 0.2828, margin +0.0173, paired SE 0.0017; adjacent inversions 2; null rejection SW 0.0457, S2 0.0464.
Third seed for the cycle 95 question, after stuff/cycle95-gamma-skew-results.md (seed 95201) and stuff/cycle95-gamma-skew-seed95303.md (seed 95303). Script: stuff/cycle95_gamma_skew.py with only SEED = 95407 changed, run with numpy and scipy via uv run --no-project --with numpy --with scipy. Wall 13 s.
Seed 95407. n = 50, 20000 paired draws per law, all tests at exact 5% size.
Critical values (one 20000-draw N(0,1) calibration run):
| shape | sqrt(beta1) | SW power | S2 power | SW-S2 | paired SE | gap/SE | beats >2SE |
|---|---|---|---|---|---|---|---|
| 1 | 2.0000 | 0.9993 | 0.9817 | +0.0177 | 0.0009 | +19.0 | yes |
| 2 | 1.4142 | 0.9468 | 0.8184 | +0.1284 | 0.0024 | +54.3 | yes |
| 5 | 0.8944 | 0.5865 | 0.4405 | +0.1460 | 0.0026 | +56.3 | yes |
| 10 | 0.6325 | 0.3260 | 0.2506 | +0.0754 | 0.0023 | +33.4 | yes |
| 20 | 0.4472 | 0.1883 | 0.1517 | +0.0365 | 0.0020 | +18.6 | yes |
| 50 | 0.2828 | 0.0998 | 0.0861 | +0.0137 | 0.0017 | +8.0 | yes |
Monotone in skewness? No. The margin is hump-shaped, peaking at gamma(5) (sqrt(beta1) = 0.89) and falling on both sides. Two adjacent inversions, both at the high-skew end (gamma(1) and gamma(2)) where SW power is near 1 and the gap is capped by saturation. From gamma(5) down to gamma(50) the margin falls monotonically with skewness.
Smallest skewness where SW still beats S2 beyond two paired SE: gamma(50), sqrt(beta1) = 0.28, margin +0.0137, 8.0 paired SE. Every shape tested is a win. The crossover, if one exists, lies below sqrt(beta1) = 0.28.
Three-seed summary of the gamma(50) margin: +0.0181 (95201, 10.7 SE), +0.0173 (95303, 10.2 SE), +0.0137 (95407, 8.0 SE). Spread of about 2.5 SE between seeds, consistent with Monte Carlo noise around a true margin near +0.016. The peak at gamma(5) replicates in all three seeds (+0.147, +0.148, +0.146), as does the inversion count of 2.
Null check: on the separate 20000-draw N(0,1) run SW rejected at 0.0493 and S2 at 0.0501, both within one binomial SE (about 0.0015) of 5%. This resolves the seed 95303 caveat, where both tests came in 2.5 to 3 SE low: that was Monte Carlo noise in the calibration quantile, not a size defect. Across the three seeds the null rates are 0.0494/0.0491, 0.0457/0.0464 and 0.0493/0.0501.
Largest win shape: gamma(50), sqrt(beta1) 0.2828, margin +0.0137, paired SE 0.0017; adjacent inversions 2; null rejection SW 0.0493, S2 0.0501.