Report — F5-conf-03: sums of normal random variables
Question
Decide whether (A) "X, Y each normal ⇒ X+Y normal (constants count)" and (B) "X, Y independent and each normal ⇒ X+Y normal" are true; prove the true one(s) and give a concrete, simulated counterexample for the false one(s).
Data and exclusions
data/propositions.csv (2 rows: A, B) and data/design.csv (2 rows: seed = 20261029, n = 100000). Nothing was excluded and no data problems were found.
Method
The verdicts come from mathematical argument (full details in out/argument.md):
- A is false. Counterexample: X ~ N(0,1), S an independent Rademacher sign, Y = S·X. By symmetry Y ~ N(0,1), but X+Y = (1+S)X has law ½δ₀ + ½N(0,4): it has an atom of mass 1/2 at 0 and variance 2, so it is neither normal nor constant.
- B is true. Characteristic functions multiply under independence, and the product of two normal characteristic functions is again a normal characteristic function: N(μ₁+μ₂, σ₁²+σ₂²).
Numerical illustration: out/analysis.py draws n = 100000 pairs with numpy.random.default_rng(20261029) (X first, then S), writes out/counterexample.csv, and computes sample means/SDs (ddof=1) and the KS distance between each variable's empirical CDF and a normal with the sample mean and SD fitted to it.
Results
| quantity | value |
|---|---|
| mean_x, sd_x | −0.0033, 0.9982 |
| mean_y, sd_y | −0.0002, 0.9982 |
| mean_sum, sd_sum | −0.0036, 1.4059 (theory: 0, √2 ≈ 1.4142) |
| share of x+y exactly 0 | 0.50047 (theory: 0.5) |
| KS distance, x+y vs fitted normal | 0.2508 |
| KS distance, x vs fitted normal | 0.0021 |
| KS distance, y vs fitted normal | 0.0020 |
| sample corr(x, y) | −0.0082 (theory: 0) |
| excess kurtosis of x+y | 2.99 (theory: 3; normal: 0) |
Verdicts: statement_true (A) = false; statement_b_true (B) = true.
Uncertainty
The verdicts are mathematical facts and carry no sampling uncertainty. For the illustration: with n = 1e5, the 5% critical value of the KS distance is about 1.36/√n ≈ 0.0043, or roughly 0.0028 for the Lilliefors version with estimated parameters. The marginal KS distances (≈0.002) are about that size, as normality predicts. The KS distance for the sum (0.25) is about 60 times larger. Its theoretical value is driven by the jump of size 1/2 at 0, so this gap cannot be put down to sampling noise. The KS p-values for the marginals stored in results.json (0.77, 0.84) come from the standard KS test with fitted parameters. That test is conservative, so these p-values are only approximate.
Limitations and open issues
- What the simulation shows: the sample behaves as the theory predicts. The marginals match normal laws, about half of the sums are exactly 0, and the empirical law of the sum is far from any normal. It also checks that the construction is coded correctly.
- What it does not show: a finite sample cannot prove that the marginals are exactly normal or that B holds in general. Those claims rest only on the proofs in
argument.md. - Other valid counterexamples exist, e.g. Y = X when |X| ≤ c and Y = −X otherwise. I chose the random-sign version because its departure from normality (an atom of mass 1/2) is extreme and easy to see.
- None of these numbers depend on anything outside
data/. The run is deterministic given the seed.