Conformal-symplectic sandwich layer
Implementation & benchmark of arXiv:2607.03339 — CSympNet-ID: conformal-symplectic map learning for linearly damped Hamiltonian systems
Source paper: CSympNet-ID: conformal-symplectic map learning for linearly damped Hamiltonian systems arXiv:2607.03339 ⓘ · analyzed Aug 30, 2026
AI-generated research hypothesis, automatically tested. Not peer-reviewed.
Idea description
Replace an unconstrained one-step transition network with a symmetric damping–symplectic-core–damping composition. The damping strength is one learned scalar rate and is applied through positive exponential diagonal factors, so every step has a known contraction law while the neural core models nonlinear conservative transport.
Formulas
Mathematical statement
The paper defines a conformally symplectic map F by (DF(z))^T J DF(z) = lambda*(t) J, where z=(q,p) is a 2d-dimensional canonical state, DF is the Jacobian, J=[[0,I_d],[-I_d,0]] is the canonical symplectic matrix, and lambda*(t)>0 is the dissipation factor. Use an exact symplectic core C_theta satisfying (DC_theta(z))^T J DC_theta(z)=J. Let D_h(gamma)=a_h(gamma)I_{2d}, with a_h(gamma)=exp(-gamma h/4), h the step size, and gamma>=0 the learned damping rate. Since D_h^T J D_h=a_h^2 J, the symmetric sandwich F_{theta,gamma,h}=D_h(gamma) C_theta D_h(gamma) satisfies (DF)^T J DF= a_h^4 J=exp(-gamma h)J. Thus its conformal factor is exactly lambda_h=exp(-gamma h), independently of the neural-core parameters. For an implementable symplectic core, compose canonical shears: Q=q+epsilon grad_p V_phi(p), P=p, followed by Q=q, P=p-epsilon grad_q T_psi(q). Each shear has unit symplectic Jacobian, so their composition is symplectic. The scalar gamma is trained jointly from snapshot pairs and is identifiable across irregular step sizes because log(lambda_h)=-gamma h.
Implementation notes
(1) Integration point: use this module as the transition function in a latent world model or state-space model. The input is a latent vector z_t of even dimension 2d, split into q_t and p_t, together with the observed step size h_t; the output is z_{t+1}. Do not apply a generic MLP after the structured map, since that would destroy the guarantee.
(2) Pseudocode:
raw_rate = gamma_parameter
gamma = softplus(raw_rate) + 1e-6
a = exp(-gamma * h / 4)
z0 = a * z_t
(q,p) = split(z0)
for k in range(K):
q = q + eps * grad_p(V_k(p)) # symplectic q-shear
p = p - eps * grad_q(T_k(q)) # symplectic p-shear
z_pred = a * concat(q,p)
loss = mse(z_pred, z_next) + optional_observation_loss
Use small MLPs for scalar potentials V_k and T_k; calculate their input gradients with automatic differentiation. For a simpler MVP, use one V/T pair and K=2 alternating shear blocks.
(3) Computed from the paper's mathematics: the exponential positive damping factor, sandwich ordering, and exact predicted conformal factor lambda_h=exp(-gamma h). Estimated empirically: gamma, potential-network parameters, and model errors. Validate the structural identity numerically by computing explicit Jacobians on a small batch and measuring ||DF^T J DF-exp(-gamma h)J||_F. Train with mixed step sizes so gamma cannot absorb a fixed discretization artifact.
(4) First experiment: train on 2D and 20D damped harmonic oscillators from snapshot pairs, using 10%, 25%, and 100% of trajectories. Compare against an equal-parameter MLP transition and an unconstrained symplectic-core model at matched one-step FLOPs. Evaluate one-step MSE, rollout error over 100–1000 steps, recovered gamma, and contraction-law error from log singular-volume change versus h. The expected signal is lower long-horizon error and less drift in data-scarce training, with recovered log contraction approximately linear in h and slope -gamma. Also test random irregular h; success requires stable extrapolation to unseen step sizes and a Jacobian residual near numerical precision rather than merely a low training loss.
Verification
Stage 1 · Toy mechanism gate: Passed ✓
Stage 2 · Mechanism transferred to benchmark: Confirmed ✓
Stage 2 · Practical benchmark result: Significant win ✓
Methodology: 8 paired seeds, permutation test (p<0.05) against a learning-rate-tuned baseline. How verification works
Stage 1 — Mechanism check agent confidence 8/10
Built a differentiable conformal-symplectic sandwich with learned nonnegative damping and alternating potential-gradient shears. Across gamma={0.05,0.35,1.0} and h={0.03,0.2,0.8}, the measured Jacobian residual was 4.1e-8 to 1.1e-6 and determinant errors were 3.0e-8 to 7.7e-7, confirming the predicted factor exp(-gamma h). The sweep also confirmed log-volume slope -gamma and fixed-h sensitivity -h essentially exactly. However, on the small damped-oscillator fit the MLP was better (one-step 0.00145 vs 0.00281; 80-step rollout 0.0141 vs 0.0360), so there is no observed performance win in this MVP.
- Agent confidence
- 8/10
- Baseline
- Unconstrained h-conditioned MLP: one-step MSE 0.0014456, 80-step rollout MSE 0.0140538.
- Idea
- Conformal-symplectic sandwich: one-step MSE 0.0028070, 80-step rollout MSE 0.0360249, recovered gamma 0.3912 vs target 0.35. Structural residual 4.1e-8–1.1e-6; determinant absolute error 3.0e-8–7.7e-7; fitted contraction slopes matched -gamma with <=8.3e-17 error.
Limitations: Only a 2D damped oscillator and one small fixed-seed training run were compared; the planned 20D, data-fraction, irregular-step extrapolation, matched-FLOP, and longer 1000-step evaluations were not tested. The sweep verifies the analytic law using the implemented layer rather than estimating contraction from noisy learned trajectories.
How to run: python3 experiment.py
Stage 2 — Benchmark vs. tuned baseline (arXiv:2607.03339)
Beats the tuned baseline by 36.1% (p=0.0312, wins 6 / 8 paired seeds; metric: lower is better).
- Benchmark
- Dynamics forecasting
- Model
- rnn_small
- Paired seeds
- 8
- Baseline mean
- 0.0014
- Idea mean
- 0.0009
- Effect (Δ)
- -0.0005 (−36.1%; negative = idea better)
- Wins
- 6 / 8 paired seeds
- p-value
- 0.0312 (permutation test, 20 000 shuffles)
- Smallest detectable effect
- ±27.0%
- Mechanism
- Confirmed ✓
- Practical effect
- Helps
- Baseline tuning
- swept over 3 configs
Only the registered dynamics track was tested. The harness dynamics inputs do not expose irregular step sizes, so irregular-step extrapolation and long-horizon rollout metrics were not tested.
How to run: python3 bench_run.py
Verdict computed by deterministic test code from paired-seed statistics — not by the language model.
Stage 2 — Benchmark latest Worked ✓
Agent confidence: 8/10
The conformal-symplectic sandwich improved the registered dynamics benchmark significantly under the required paired protocol. Mean test MSE was 0.0009185384 for the idea versus 0.0014385634 for the tuned baseline, with paired delta_mean=-0.000520025 and permutation p=0.0312. The trained-model Jacobian signature confirmed the predicted contraction law quantitatively.
- Baseline
- Mean test MSE 0.0014385634, std 0.0004339347, tuned lr=0.01.
- Idea
- Mean test MSE 0.0009185384, std 0.0002242067, lr=0.01 and eps=0.08; 6/8 paired wins; p=0.0312.
- Mechanism signature
- Predicted log-determinant slope -0.3088485 versus observed -0.3088534; slope error 4.86e-6; confirmed=true.
Benchmark result
Beats the tuned baseline by 36.1% (p=0.0312, wins 6 / 8 paired seeds; metric: lower is better).
- Benchmark
- Dynamics forecasting
- Model
- rnn_small
- Paired seeds
- 8
- Baseline mean
- 0.0014
- Idea mean
- 0.0009
- Effect (Δ)
- -0.0005 (−36.1%; negative = idea better)
- Wins
- 6 / 8 paired seeds
- p-value
- 0.0312 (permutation test, 20 000 shuffles)
- Smallest detectable effect
- ±27.0%
- Mechanism
- Confirmed ✓
- Practical effect
- Helps
- Baseline tuning
- swept over 3 configs
Only the registered dynamics track was tested. The harness dynamics inputs do not expose irregular step sizes, so irregular-step extrapolation and long-horizon rollout metrics were not tested.
How to run: python3 bench_run.py
Artifacts
- bench_report.json 4.6 KB View Raw
- bench_round.py 5.5 KB View Raw
- bench_run.py 5.3 KB View Raw
- experiment.py 5.6 KB View Raw
- report.md 1.6 KB View
- report_bench_2026-08-30T204451.md 6.3 KB View
- results.json 2.9 KB View Raw