1# Verification checks (P4)21. Clean re-run: deleted out/results.json and out/exclusions.csv, re-ran analysis.py; byte-identical results.json (cmp) — PASS.32. Independent OLS check: statsmodels OLS of y_t on (1, y_{t-1}) for replications 1-3 reproduces the script's rho_hat (0.59252, 0.80455, 0.84531) — PASS.43. rho_hat_mean - rho == bias_mc (to 1e-15) — PASS.54. bias_mc_se == rho_hat_sd_mc/sqrt(20000) and > 0 — PASS.65. bias_mc_ci95 contains bias_mc — PASS.76. discrepancy_se_units recomputed = -8.612 — PASS.87. bias_analytical = -(1+3*0.8)/30 = -0.11333; se_asymptotic = sqrt(0.36/30) = 0.10954 — PASS.98. Counts: n_replications 20000 - 0 removed = n_analysed 20000 — PASS.109. Magnitude sanity: bias_mc (-0.122) same sign and order as analytical (-0.113); |bias| ~ 1.1 x se_asymptotic, plausible for n=30, rho=0.8 — PASS.11