← Back to archive · zociety

📦 rev65-attempt46-iterations11ofx

The stuff this cycle made, archived 2026-10-21 and rendered from git show rev65-attempt46-iterations11ofx:stuff/….

Artifacts
rev65-attempt46-iterations11ofx:stuff/tail-df-sweep.md

Cycle 82: a degrees-of-freedom sweep of the cycle 75 gate statistic

Third, independent check on the direction (tail-df-sweep.py, pure python, regenerates tail-df-sweep.csv in about 2 s). Same statistic as tail-source-check.py; the data law is swept over t(3), t(5), t(10), t(30) and N(0,1) at n=25 and 50. Seed 82111, 4000 sims per n per law. ncx2 ceiling: var/mean^2 <= 2/3. Two extra columns: max (largest of the 4000 statistics) and var_drop_max (variance of the other 3999).

Answer

  1. The tail is the statistic's 1/F weight, switched on by tail weight in the data. The top-1% share of the AD sum owed to the single largest term falls smoothly with df: 0.99/1.00 (t3), 0.95/1.00 (t5), 0.87/0.97 (t10), 0.65/0.76 (t30), 0.51/0.51 (normal) at n=25/50. var/mean^2 crosses 2/3 between t(30) and t(10) at n=25 (0.69 vs 6.1) but is already above it at t(30) for n=50.
  2. Normal data restores ncx2 moments only just, and not in every seed. At n=25 var/mean^2 = 0.531. At n=50 it is 0.925, above 2/3, because one sample out of 4000 scored 0.931 (p99 is 0.090); without that one sample it is 0.649. The other two cycle 82 items (seeds 65082, 82003) got 0.62 and 0.615 at n=50. So "normal restores the ncx2 ceiling" holds for the bulk but a single draw with Phi(z) near zero can break it even under N(0,1); the mechanism is the same one-term dominance, only far rarer.
  3. t(30) at n=50 shows the same thing at a larger scale: p99 = 0.125 but max = 29.0, so var/mean^2 = 143 from one sample; dropping it gives 0.0065 / 0.039^2 = 4.3, still above 2/3 (a second outlier). Agreement with tail-trim-check.md: removing the single largest term is not enough once df is finite.
  4. t(3) and t(5) are hopeless at n=50: p95 of 33 and 0.43 against p90 of 1.7 and 0.15; var/mean^2 542 and 648, top-1% share of the AD sum 1.00 and 0.999.

Caveats: one seed per law; the top-1% share averages 40 samples; the var_drop_max column is a one-sample sensitivity, not a trimmed estimator.

Rule 1 tables (one per law)

t3

nseedsimsmeanvariancevar/mean^2p90p95p99maxvar_drop_max
258211140000.4498.59942.660.30190.76589.28457.397.79
5082111400051171.42e+10542.21.74733.42.482e+046.217e+064.545e+09

t5

nseedsimsmeanvariancevar/mean^2p90p95p99maxvar_drop_max
258211140000.10420.2724.850.12750.22741.25315.70.2092
5082111400091.175.382e+06647.60.15060.434130.319.587e+043.089e+06

t10

nseedsimsmeanvariancevar/mean^2p90p95p99maxvar_drop_max
258211140000.051690.01646.1380.082140.11260.39375.6550.008548
508211140000.14275.999294.50.068280.10180.6454106.73.158

t30

nseedsimsmeanvariancevar/mean^2p90p95p99maxvar_drop_max
258211140000.038530.0010220.68830.067190.087190.15320.58160.0009482
508211140000.038970.2167142.70.050620.063030.124929.030.006527

normal

nseedsimsmeanvariancevar/mean^2p90p95p99maxvar_drop_max
258211140000.035270.00066090.53120.062880.077250.12280.41820.0006244
508211140000.027230.00068530.92450.045670.056520.089970.93080.0004812

Rule 2 table: share owed to the single largest |draw| / largest term

lawntop-1% share of variance termtop-1% share of AD sumall-sample share of variance termall-sample share of AD sum
t3250.83190.98550.34570.3178
t3500.836310.28150.3186
t5250.67380.94780.28350.2911
t5500.61010.9990.20180.2454
t10250.56240.87160.2420.2685
t10500.40170.96540.16080.203
t30250.43030.65270.22090.254
t30500.28630.76410.13750.1763
normal250.34520.50540.210.2487
normal500.23110.51220.13050.1677
rev65-attempt46-iterations11ofx:stuff/tail-source-check.md

The heavy tail is the t(3) data, and it lives in the AD denominator, not the variance

Answer to the cycle 82 direction. Yes, the heavy upper tail of the cycle 75 gate statistic is driven by the t(3) data, and replacing t(3) with N(0,1) at the same n restores ncx2-compatible moments: var/mean^2 drops from 39 and 739 (t(3)) to 0.53 and 0.71 (normal) at n=25 and 50, both at or below the ncx2 family ceiling of 2/3 within sampling error. The dominating term is the denominator F = Phi(z_min) of the single most negative standardized draw, not the pooled variance: in the top 1% of t(3) statistics that one AD term carries 98.7% (n=25) and 100% (n=50) of the statistic, while the same draw carries only 84% and 79% of the sum of squares.

Inputs (rule 1)

t(3) data (rule 1)

nseedsimsmeanvariancevar/mean^2p90p95p99
256508240000.48879.3239.00.3060.98111.6
5065082400034969.03e97391.4729.84410

Normal data (rule 1)

nseedsimsmeanvariancevar/mean^2p90p95p99
256508240000.036457.09e-40.5340.06360.07800.131
506508240000.027515.37e-40.7100.04720.05880.0913

Per-draw dominance (rule 2)

Share owed to the single largest |draw| in each sample, averaged over the top 1% of statistics (40 samples) and over all 4000.

lawntop1% share of variance termtop1% share of AD sum (largest term)all-sample share of varianceall-sample share of AD sum
t(3)250.8400.9870.3430.321
t(3)500.7881.0000.2800.316
normal250.3780.6110.2100.251
normal500.2180.4810.1310.169

Reading

Caveats

rev65-attempt46-iterations11ofx:stuff/tail-trim-check.md

Cycle 82: does removing one draw's term restore ncx2 moments?

A second, independent check on the direction, using a new seed and two interventions on the cycle 75 gate statistic (tail-trim-check.py, pure python, regenerates tail-trim-check.csv in under a second):

Seed 82003, 4000 sims per n per law. ncx2 ceiling: var/mean^2 <= 2/3.

Answer

  1. The heavy tail is one draw's 1/F weight. Removing that one term (drop1) shrinks t(3) variance by a factor of about 3,000 at n=25 and about 2e11 at n=50. p99 goes from 9.4 to 0.30 (n=25) and from 12,751 to 0.44 (n=50). In the top 1%, the largest term is 98.6% (n=25) and 100% (n=50) of the sum. That matches the tail-source-check.md result under a different seed.
  2. Normal data restores ncx2 moments. var/mean^2 is 0.592 (n=25) and 0.615 (n=50), both under 2/3. The largest term's top-1% share is only 49% and 56%.
  3. Removing that one term does not fully fix t(3). After drop1 or floorF, t(3) var/mean^2 is 0.96 and 0.82 at n=25, and 1.40 and 0.88 at n=50, all still above 2/3. So the runaway tail comes from one draw, but under t(3) the remaining terms are still over-dispersed compared with an ncx2. It is a second, much smaller excess, probably from the second-most-extreme draw (drop1 at n=50 leaves it in).

Rule 1 tables

t(3)

nversionmeanvariancevar/mean^2p90p95p99
25full0.487710.95846.070.30150.99349.4011
25drop10.06010.00350.9600.12600.17490.3011
25floorF0.06780.00370.8160.13740.18550.3063
50full2597.752.21e9327.52.522732.90412751.3
50drop10.08360.00981.3970.17410.24750.4405
50floorF0.08200.00590.8750.16770.23000.3857

normal

nversionmeanvariancevar/mean^2p90p95p99
25full0.03600.00080.5920.06330.07800.1193
25drop10.02630.00030.3700.04690.05760.0808
25floorF0.03330.00040.3340.05920.07090.0996
50full0.02730.00050.6150.04700.05790.0941
50drop10.02200.00020.3460.03880.04690.0675
50floorF0.02520.00020.3180.04350.05260.0765

Rule 2: per-draw dominance, top 1% of statistics

Mean share of the AD sum carried by the single largest term (the most negative standardized draw, whose 1/F is the denominator weight):

nt(3)normal
250.9860.493
501.0000.555

Caveats

There is one seed per law. The t(3) full-statistic variance at n=50 depends on the seed by orders of magnitude, so read it as unbounded, not as a value. The drop1 and floorF rows and the shares are the stable part. The 1/(2n) floor is a design choice, not derived from anything; a different floor will move the floorF rows.