✗ Mechanism failed 2026

Permutation-family residual network

Implementation & benchmark of arXiv:2607.15060 — Learning the Fermion sign structure in path-integral Monte Carlo

Usefulness8/10
Difficulty5/10
Novelty7/10

Source paper: Learning the Fermion sign structure in path-integral Monte Carlo arXiv:2607.15060 ⓘ · analyzed Aug 30, 2026

AI-generated research hypothesis, automatically tested. Not peer-reviewed.

Idea description

Replace direct learning of a highly cancelling signed observable with a quotient-space model over symmetry orbits of inputs. Predict a physically constrained baseline for each family and use an LSTM or set/graph encoder only for the residual many-body correlation, then aggregate family predictions with known signed weights instead of forming a noisy sample-level ratio.

Formulas

$$\langle E\rangle_F=\frac{\langle \sigma E\rangle_B}{\langle\sigma\rangle_B}=\frac{\sum_c s_cP_cE_c}{\sum_c s_cP_c},\qquad s_c\in\{-1,+1\}.$$
$$P_c(x)=\frac{\exp f_\phi(z_c(x))}{\sum_{c'}\exp f_\phi(z_{c'}(x))},\qquad E_c(x)=b_c(x;\theta)+r_\psi(z_c(x),h_{c-1}).$$
$$\mathcal L=\sum_c\left[-n_c\log P_c+\frac{(\widehat E_c-E_c)^2}{2\widehat v_c}\right]+\lambda\sum_c\left\|b_c-b_c^{\mathrm{limit}}\right\|^2+\frac{\lambda_r}{2}\sum_c\|r_c\|^2.$$
$$\operatorname{Var}[\widehat E_F]\ \text{for the direct ratio estimator becomes noise dominated when}\ \left|\sum_c s_cP_c\right|\lesssim O(n^{-1/2}),$$

Mathematical statement

Let p denote a configuration or permutation, c(p) its conjugacy-class or family label, s(p)=(-1)^{p_ex} its known sign, P_c the probability mass of family c, and E_c its conditional energy. The target signed observable is E_F=(sum_c s_c P_c E_c)/(sum_c s_c P_c), where s_c is constant within a family. Parameterize log P_c with a normalized model and decompose E_c=b_c(theta)+r_c(theta), where b_c is a hand-specified asymptotic physical baseline and r_c is learned by the neural network. Priors penalize deviations from known limiting behavior. The transferable mechanism is that cancellation occurs after low-dimensional family predictions are averaged, avoiding a ratio of two noisy Monte Carlo sample means.

Implementation notes

1. Integration point: use this as a supervised or self-supervised head for examples possessing a known symmetry action, such as particle permutations, graph automorphisms, exchangeable sets, or structured data augmentations. Construct a family label from permutation cycle type or an orbit hash. A shared encoder produces family features; an LSTM is optional when families have an ordered cycle-length sequence. 2. Pseudocode: for each minibatch, compute family IDs c, signs s, counts n_c, and empirical conditional targets Ehat_c; compute logits f_phi, normalized probabilities P_c, baseline b_c, residual r_psi, and E_c=b_c+r_psi; minimize the displayed loss; estimate the final prediction as sum(s*P*E)/sum(s*P). Use numerical log-sum-exp stabilization and do not alter the target by clipping the denominator. 3. Computed from the paper’s mechanism: signed family aggregation, physical baseline plus residual decomposition, and asymptotic prior. Estimated empirically: family probabilities, conditional energies, residual uncertainty, and final aggregate variance. 4. First cheap experiment: use a permutation-invariant MLP on synthetic sets with known random-permutation signs. Compare direct signed regression, a vanilla LSTM, and the family-residual model while increasing cancelling negative families. The prediction is that the direct estimator fails near |D|=|sum_c s_cP_c| approximately n^{-1/2}, while the family model remains stable and its error grows with family-model error rather than 1/|D|. Test whether the measured crossover agrees with the predicted boundary within 20%.

Verification

Mechanism failed

Stage 1 · Toy mechanism gate: Failed ✗

Stage 2 · Mechanism transferred to benchmark: Not tested

Stage 2 · Practical benchmark result: Not run

Methodology: Toy-system gate first; the benchmark stage runs only after a pass. How verification works

Stage 1 — Mechanism check agent confidence 9/10

Built a reusable PyTorch family-residual head in family_residual.py and a deterministic synthetic permutation-family experiment in experiment.py. The population family formula matched exactly (error 0), and the direct estimator became unstable near the predicted 1/sqrt(400)=0.05 boundary: RMSE rose sharply from 0.33 at D=0.20 to 8.42 at D=0.06. However, the direct log-log scaling was approximately D^-1.66 rather than the simple D^-1 expectation, and the family estimator also scaled approximately as 1/D because its conditional energy estimates remained noisy. Thus cancellation instability was reproduced, but the proposed architecture did not independently remove denominator sensitivity in this toy setting.

Agent confidence
9/10
Baseline
Direct signed sample ratio, n=400: RMSE 0.325 at D=0.20, 4.618 at D=0.10, 8.419 at D=0.06, 10.717 at D=0.04, 15.073 at D=0.02; inverse-D sweep log-log slope -1.66.
Idea
Family baseline+residual aggregation, 80 samples per family: RMSE 0.089 at D=0.30, 0.252 at D=0.10, 0.644 at D=0.04; D*RMSE approximately 0.026, 0.025, 0.026, showing persistent inverse-D amplification. PyTorch smoke test had zero probability-normalization error, zero aggregation discrepancy, and finite gradients.

Limitations: This is a small synthetic Monte Carlo verification, not a trained end-to-end permutation-invariant neural network or a real physical observable. Family probabilities were supplied exactly rather than learned, and no comparison of training FLOPs, generalization, or an LSTM/set encoder was performed. The experiment also did not test variance-aware training or a regime where the physical baseline is sufficiently accurate to suppress residual noise.

How to run: python3 experiment.py && /home/maxwelhelp/main/bin/python3 - <<'PY' import torch from family_residual import FamilyResidualHead torch.manual_seed(946) h=FamilyResidualHead(5,8,[1.,.8,1.2,.9]); x=torch.randn(3,4,5,requires_grad=True) p,e,r=h(x); s=torch.tensor([1.,-1.,1.,-1.]); y,d=h.signed_energy(p,e,s) loss=h.loss(p,e,torch.full_like(p,.25),torch.zeros_like(e),residual=r,residual_weight=.01); loss.backward() print(float((p.sum(-1)-1).abs().max()), float(loss)) PY

Verdict computed by deterministic test code from paired-seed statistics — not by the language model.

Artifacts

Implementation overview ⬇ Download all as ZIP 4 files · code, reports and structured results