1<!-- Author: Simon-Pierre Boucher — simon-pierre.boucher@uqo.ca -->2# 🧮 Beyond One-Step Distributed Maximum Likelihood34**UQO Working Paper No. 28** — *Local bias cancellation, global synchronization, and the price of inexact curvature: a joint order–round frontier, its sharpness in an exact model, and measured communication costs*56[](paper/main.pdf)7[](requirements.txt)8[](results/)9[](experiments/)10[](https://uqo.ca)11[](mailto:simon-pierre.boucher@uqo.ca)1213> **TL;DR** — Each of $K$ workers debiases its local MLE by an order-$r$ split-sample extrapolation over nested sub-blocks; the coordinator averages and applies $q$ aggregated Newton steps. For fixed-dimensional regular likelihoods the result is first-order equivalent to the centralized MLE whenever $K = o(N^{1-1/(2^{q+1}r)})$ (half-block jackknife + one step: $K = o(N^{7/8})$ against the $K = O(N^{1/2})$ stated for the plain-average one-step estimator). The exponent is sharp for the construction in the exponential model (boundary shift $-\theta_0(\beta_r c^r)^{2^q}$, e.g. $-4\theta_0c^4$), and a perturbation theorem gives the exponent for stale, single-machine and $b$-bit quantized Hessians. Monte Carlo (exponential, logistic, Poisson; paired replications; $N$ up to $2^{22}$), an exact boundary study, ablations, and timed coordinator–worker benchmarks on the MacLustr cluster quantify the finite-sample costs. Components are known (Quenouille/Dhaene–Jochmans jackknife; Huang–Huo one-step); the joint frontier, its sharpness and the bit-precision result are new. No communication lower bound is claimed.1415---1617## 📌 Status1819| Item | Value |20|---|---|21| Version | 1.0 (October 2026) — working draft under internal review; see `FINAL_REVIEW.md` |22| SSRN | not yet submitted |23| Journal | — (candidates: Journal of Econometrics, Econometric Theory, JASA T&M, JCGS) |24| Code & data | fully reproducible from `experiments/` (synthetic data only); raw Monte Carlo outputs committed in `results/raw/` with manifests |25| Provenance | develops the exploratory note "Local Bias Correction versus Global Synchronization in Distributed Maximum Likelihood" (Boucher & "GPT-6.1", 2026-10-28), frozen in `references/initial_pamle/`; see `SOURCE_PROVENANCE.md` and the disclosure on page 3 of the paper |2627## 🎯 What this paper does2829Distributed MLE with $N$ observations on $K$ workers of $m = N/K$ observations: averaging local MLEs keeps the $O(1/m)$ local bias, so plain averaging is equivalent to the centralized MLE only for $K = o(N^{1/2})$. Two known remedies — local debiasing and global Newton corrections — are analysed **jointly**. The local correction is the generalized (split-sample) jackknife with Vandermonde weights over nested sub-blocks of sizes $m/s_j$,3031```32J_{r,k} = Σ_j w_j T_{s_j,k}, Σ_j w_j = 1, Σ_j w_j s_j^a = 0 (a = 1..r-1)33θ^(0) = K^{-1} Σ_k J_{r,k}; θ ← θ − H_N(θ)^{-1} g_N(θ) (q times, aggregated score and Hessian)34```3536Main results: Theorem 1 (frontier $K = o(N^{1-1/(2^{q+1}r)})$ with the centered random remainder of order $(m\sqrt K)^{-1}$ kept), Theorem 2 (exact exponential identities, boundary limits for every $(r,q)$, Newton basin $(0, 2\hat\theta_N)$, necessity), Theorem 3 (inexact curvature: stale averaged local Hessians $\Rightarrow 1-1/(2(r+q))$; single-machine Hessian $\Rightarrow 1-1/(2r+q)$, recovering CEASE's $(t+1)/(t+2)$ and CSL's $2/3$; quantization to $b \ge (\tfrac12 - r(1-\alpha))\log_2 N$ bits), Proposition 4 (unequal sizes, misspecification), Proposition 5 (cost model and exchange rate between a local level and a round).3738## 🏆 Headline results3940| Object | Result |41|---|---|42| Sufficient exponent, half-block jackknife + 1 Newton step | $K = o(N^{7/8})$ (plain average + 1 step: $3/4$; quarter-block + 1 step: $11/12$) |43| Exponent structure | depends on $(r,q)$ only through $D = 2^q r$: one round ⇔ doubling the local order |44| Sharpness (exponential model) | $\sqrt N(\theta^{(1)}_2 - \hat\theta_N) \to -4\theta_0c^4$ when $K \sim cN^{7/8}$; divergence beyond |45| Inexact curvature | stale: $1-1/(2(r+q))$; single machine: $1-1/(2r+q)$; bits for quantized derivatives: $(\tfrac12 - r(1-\alpha))\log_2 N$ |46| Exact variance cost of the half-block correction | $\mathrm{Var}\,J_2 = \theta_0^2 m^2(m^2-6m+17)/((m-4)(m-2)^2(m-1)^2) = \theta_0^2(m^{-1}+4m^{-2}+O(m^{-3}))$, same first two terms as the raw MLE |47| Monte Carlo and benchmarks | see `paper/tables/` (generated), `results/processed/summary.csv`, `results/processed/benchmarks_summary.csv` |4849## 🗂 Repository layout5051```52distributed-mle-synchronization/53├── CLAUDE.md # the research mandate (verbatim)54├── PROJECT_MAP.md · SOURCE_PROVENANCE.md · PHASE_STATUS.md · research_log.md55├── LIMITATIONS_AND_CLAIMS.md · FINAL_REVIEW.md · FINAL_DELIVERY.md56├── references/initial_pamle/ # frozen prior draft + archive + SHA256SUMS.txt (read-only)57├── literature/ # audits A–D, PRIOR_ART_MATRIX.csv (56 rows), PRIORITY_AND_GAP.md58├── theory/ # ASSUMPTIONS.md, THEOREM_AUDIT.md (proof ledger), symbolic_checks.py (SymPy)59├── src/pamle/ # library: jackknife, partitioning, likelihoods, algorithms, communication, diagnostics, protocol, worker60├── experiments/ # run_monte_carlo.py (+configs/), scatter_cluster.py, run_boundary.py, run_ablations.py, run_skewed.py,61│ # run_benchmarks.py, process_results.py, make_tables.py, EXPERIMENT_MANIFEST.csv62├── tests/ # pytest suite (weights, exact identities, derivatives, estimators, accounting, reproducibility, protocol)63├── results/{raw,processed,tables,figures,resource_profiles}64├── paper/ # main.tex, sections/, appendices/, tables/ (generated), figures/, references.bib → main.pdf65├── scripts/ # compile_paper.sh, validate_pdf.sh, reproduce_all.sh66└── docs/ # cluster inventory, misc67```6869## 🚀 Quick start7071```bash72python3 -m pip install -r requirements.txt73pytest -q # 30 tests (≈ 10 s)74python3 theory/symbolic_checks.py # SymPy verification of every identity (≈ 1 min)75python3 experiments/run_monte_carlo.py --config experiments/configs/main_exponential.yaml # laptop, ≈ 2 h76python3 experiments/run_boundary.py; python3 experiments/run_ablations.py --model logistic; python3 experiments/run_skewed.py77python3 experiments/scatter_cluster.py --configs experiments/configs/main_logistic.yaml experiments/configs/main_poisson.yaml experiments/configs/robustness.yaml --launch # cluster78python3 experiments/run_benchmarks.py --config experiments/configs/benchmarks.yaml --out results/raw/benchmarks.jsonl # cluster79python3 experiments/process_results.py --figures && python3 experiments/make_tables.py80bash scripts/compile_paper.sh && bash scripts/validate_pdf.sh81```8283Runtime: the exponential Monte Carlo (40 cells × 2000 replications) takes about two hours on an Apple M5 Max laptop; the logistic/Poisson/robustness grids (136 cells) were spread over 18 MacLustr nodes (several hours); the benchmarks need the cluster.8485## 🗃 Data8687All data are synthetic and seeded (`seed_base = 20261028` plus a hash of the cell description); nothing proprietary. Raw per-replication outputs (`results/raw/*.csv`) carry a JSON manifest (git commit, Python/NumPy versions, host, wall time, SHA-256); `experiments/EXPERIMENT_MANIFEST.csv` collects them.8889## 🔬 Methodology90911. Local split fits on nested sub-blocks, batched Newton with step halving and status codes — `src/pamle/likelihoods.py`, `algorithms.local_split_fits`.922. Vandermonde weights, pilot — `jackknife.py`, `algorithms.worker_corrected_estimates`, `pilot_estimator`.933. Global corrections (exact / stale / single-machine / quantized curvature), CSL, AEE, analytic Cox–Snell — `algorithms.global_newton`, `csl`, `aee_lin_xi`, `analytic_bias_correction`.944. Communication accounting — `communication.py`; real protocol — `protocol.py`, `worker.py`.955. Experiments and processing — `experiments/` (every table/figure regenerated from `results/`).9697## 🖼 Figures & tables inventory9899| Figure | Content |100|---|---|101| `fig_rms_gap_vs_m_<design>` | RMS scaled gap to the centralized MLE vs $m$ for all estimators |102| `fig_rmse_theta0_vs_m_<design>` | scaled RMSE vs $\theta_0$: bias–variance trade-off across orders |103| `fig_gap_collapse_<design>` | gaps against $K/N^{\alpha(r,q)}$ for several $N$ (collapse predicted by Theorem 1) |104| `fig_coverage95_<design>` | empirical 95 % coverage vs $m$ |105| `fig_boundary_exponential` | boundary study: gap / asymptotic limit vs $m$ with finite-$m$ prediction |106107Tables (`paper/tables/*.tex`, generated by `experiments/make_tables.py`): `mc_<design>.tex`, `mc_rates.tex`, `boundary.tex`, `abl_exponential.tex`, `abl_logistic.tex`, `skew.tex`, `bench.tex`, `numbers.tex`.108109## ⚠️ Limitations110111See `LIMITATIONS_AND_CLAIMS.md`. Fixed $p$ and i.i.d. data only; sufficient exponents, sharp only for the construction in the exponential model; the boundary regime $m \asymp N^{1/(2^{q+1}r)}$ is reached only at very large $N$; higher orders inflate variance and can fail at small $m$; benchmarks are specific to one cluster and one Python/TCP implementation; no energy or cost measurements; no lower bounds.112113## 📝 Citation114115```bibtex116@techreport{boucher2026distributedmle,117 author = {Boucher, Simon-Pierre},118 title = {Beyond One-Step Distributed Maximum Likelihood: Local Bias Cancellation, Global Synchronization, and the Price of Inexact Curvature},119 institution = {Universit\'e du Qu\'ebec en Outaouais, D\'epartement des sciences administratives},120 type = {Working Paper},121 number = {28},122 year = {2026},123 month = {October}124}125```126127## 👤 Author & contact128129**Simon-Pierre Boucher** — Département des sciences administratives, Université du Québec en Outaouais (UQO), Gatineau, QC. 📧 [simon-pierre.boucher@uqo.ca](mailto:simon-pierre.boucher@uqo.ca)130131## 🗒 Notes132133- Numbering: No. 28 is the next free number of the UQO series (`Recherche-UQO/README.md` stops at 27). The SPID database paper in `finance/russell3000-strategic-project-database` carries FIRC series No. 0001, not 28; see `SOURCE_PROVENANCE.md`.134- Authorship: the title page lists Simon-Pierre Boucher and preserves the "GPT-6.1" AI co-author designation of the prior draft, with a disclosure paragraph; for a journal submission the designation should move to the disclosure (flagged, not silently changed).135- Deviation from the template: `paper/main.tex` adds amsthm, algorithmic and TikZ packages; `sections/titlepage.tex` is the exact template copy.136