{"id":"ade43c3f-ed87-4114-9ee7-729316fa775a","arxiv_id":"2608.08559","paper_version":1,"verdict":"CONDITIONAL","confidence":"HIGH","novelty_score":7.0,"correctness_risk":"low","formal_verification":"none","parameter_count":3,"one_line_summary":"A reverse sweep of local 3x3 adjoint solves gives machine-precision gradients through the exact finite-depth Vertex Block Descent solver without forming any global system.","lead":"This paper presents a way to compute exact gradients through block implicit physics solvers by running the solver's updates backwards as tiny local solves, instead of differentiating the converged equation. It reports 33x faster and 71x less memory than unrolled automatic differentiation on a controlled comparison, and scales differentiable elastodynamics to about 8 million vertices on one GPU.","discovery_kind":"new_method","skeptic_critique":{"model":"deepseek-v4-flash","headline":"Exactness is proven only for C1 block updates with disjoint same-color stencils; the contact-coupled scale experiment violates both conditions, and no autograd check is reported there.","rationale":"The reader's weakest_assumption identifies replay of non-smooth safeguards and branch decisions as the key risk; my reading agrees and sharpens it. The paper's Theorem 1 is mathematically sound for the class of block implicit updates it states, and the contact-free empirical validation against autograd is strong evidence for that core construction. The unresolved issue is scope: the headline applications, especially the 10^6-body contact-coupled demonstration, rely on mechanisms that are not covered by the theorem's hypotheses and for which no exactness measurement is reported. This is not an accusation of error; it is a gap between the proven claim and the advertised regime. A single additional experiment, comparing the reverse sweep against autograd through an identical contact-rich forward at small K, would settle whether the contact mechanisms preserve machine-precision exactness or introduce the same finite-depth error that Section 3.5 documents for omitted safeguard terms. Without that check, the central claim 'exact at every solver depth' is overbroad, and a conditional acceptance requiring the contact-exactness measurement is appropriate. I did not find a flaw in the core adjoint derivation itself, and I do not recommend rejection; the paper's contribution is real and the mathematical core appears correct.","tokens_in":20424,"tokens_out":13221,"duration_ms":156300,"concrete_test":"Run the exactness protocol from Section 6.1 on a contact-rich scene (e.g., the cube bounce or Cover the Spot) with the fused CUDA forward and a PyTorch autograd implementation of the same forward, including the IPC barrier active-set gating and the center-of-mass penalty, verifying forward trajectories agree to 1e-16. Compare max relative gradient error at K=1 and K=5. If error exceeds 1e-12, store contact branch decisions in the replay buffer or scope the exactness claim to contact-free block updates.","verdict_should_be":"CONDITIONAL","load_bearing_attack":"Theorem 1 is the load-bearing result, and its proof (Appendix A) requires two conditions: each block update F_i is C1 at the executed linearization state, and same-color updates touch disjoint stencils so that parallel execution equals composition in any order. The contact machinery in Section 5 sits outside both hypotheses. The IPC log barrier is active only when the gap d < d_hat, so the activation boundary is non-C1 and the active set can change across sweeps; the center-of-mass penalty between separate bodies couples vertices that are not adjacent in the color graph, so the disjoint-stencil step of the proof does not apply. The machine-precision measurements of Section 6.1, including the stated worst case 3.6e-15, cover meshes up to |V|=631 with no contact and no inter-body coupling. The scale experiment in Section 6.6 uses exactly these omitted mechanisms, but reports only task success, not an autograd-vs-reverse-sweep error. If the reverse sweep must replay active-set decisions, lagged-dissipation gates, or broad-phase pair changes that are not stored in the 72-byte replay buffer, the same failure mode as Section 3.5(i)-(iii) can appear: exact at large K, wrong at small K, and invisible to convergence-regime validation. The paper's statement that pair indices carry no gradient does not by itself establish that the reverse sweep reconstructs the forward's branch decisions exactly, because the forward branch structure is a function of positions that must either be stored or recomputed identically.","agreement_with_reader":"agree"},"referee_report":{"model":"deepseek-v4-flash","summary":"The paper proposes differentiating the finite executed block-implicit solver rather than the converged equation, instantiating the idea on Vertex Block Descent. The central claim (Theorem 1) is that the exact discrete adjoint of a finite composition of block implicit updates is a reverse sweep of constant-size local adjoint solves, with no global linear-algebra object. The authors prove the theorem under C1-differentiability and disjoint same-color stencil assumptions, give closed-form local adjoints including safeguard terms (saturation Jacobian, Hessian tangent, validity gates), and validate the construction against unrolled automatic differentiation through the identical executed forward at solver depths K=1, 5, 20 on non-contact scenes, reporting machine-precision agreement. They also report ablations showing the error laws of omitted safeguard terms, a controlled cost comparison against unrolled AD and global equation-level adjoints, exactness transfers to XPBD and projective dynamics, inverse-problem results, and a large-scale demonstration with 10^6 contact-coupled bodies.","tokens_in":20678,"tokens_out":5947,"duration_ms":73784,"significance":"If the central claim is correct, the contribution is significant: it replaces a global adjoint system with a block-local reverse sweep that inherits the forward solver's parallelism and memory behavior, and it makes finite-solver-depth exactness precise rather than asymptotic. The paper's strengths include a self-contained proof of the core theorem, machine-precision validation against an external autograd reference on the same executed forward, explicit identification and measurement of non-smooth safeguard terms that prior hand-derived adjoints omit, a same-codebase controlled cost comparison, and a reproducible harness with single-command experiments. The main weakness is that the contact-coupled experiments, including the headline 10^6-body scale demo, sit outside the theorem's hypotheses and are not validated against an autograd reference, so the exactness claim is not yet established for the regime the paper itself presents as its largest demonstration.","major_comments":[{"comment":"The contact terms of §5 fall outside the hypotheses of Theorem 1. The proof in Appendix A requires each F_i to be C1 in a neighborhood of the executed linearization state and same-color updates to touch disjoint stencils. The IPC log barrier b(d) = -kappa (d-dhat)^2 log(d/dhat) has a third-derivative discontinuity at the activation boundary d = dhat, and the active set can change across sweeps; the Hessian-tangent term of Eq. (10) needs the third derivative of the barrier, so the C1 condition is not met in a neighborhood of the boundary. In addition, the center-of-mass penalty between separate bodies couples vertices through body centers and broad-phase pair lists, so two same-color vertices can have overlapping stencils through the shared body center; the disjoint-stencil step of Appendix A then does not apply. This is load-bearing because §6.6 uses exactly these mechanisms. Please either prove an extended exactness statement for these terms, or provide a small-scale autograd-vs-reverse-sweep validation with contact activation/deactivation and changing broad-phase pairs at multiple K, and restrict the exactness claims accordingly.","section":"§3.4, §5, Appendix A"},{"comment":"The scale experiment in §6.6 reports only task success (loss reduction to 87%) and never reports a gradient error against an autograd reference through the identical executed forward. Table 1 covers meshes up to |V|=631 with no contact, and Appendix B covers XPBD and projective dynamics on spring systems with no contact. Since the contact-coupled center-of-mass penalty and the IPC barrier are claimed to be differentiated by the same reverse sweep, the finite-depth exactness of the contact path is unverified. This matters precisely because the paper's thesis is that at small K the reverse sweep differs from equation-level differentiation; without an autograd check on a contact scene, there is no evidence that the contact backward pass is the exact adjoint of the executed forward. Please add such a check, including scenes where the contact active set changes between sweeps or steps.","section":"§6.6, Table 1, Appendix B"},{"comment":"The statement that 'pair indices carry no gradient' does not by itself resolve the branch-replay problem. The broad-phase pair list is a discrete function of the current positions; if the reverse sweep does not store or exactly replay which pairs were active in each forward sweep, the backward pass may not correspond to the function the forward actually executed. The replay buffer stores only the applied update and the six symmetric Hessian entries per vertex, not the pair list or activation flags. The paper should specify how discrete branch decisions (active IPC contact pairs, broad-phase candidate pairs, saturation/regularization branch selections) are replayed exactly, or store them, and verify this replay in a contact experiment. Without this, the 'provided the backward replays the same local linearization states' qualifier in §3.4 is not satisfied for the contact machinery.","section":"§5, §H (Contact)"}],"minor_comments":[{"comment":"The abstract states that the backward matches automatic differentiation 'to machine precision at every solver depth'; the measured support in Table 1 is for non-contact scenes with |V| up to 631. Please qualify the abstract and §6.1 to indicate the validated regime, given that the contact-coupled experiments are not covered by the machine-precision measurements.","section":"Abstract, §6.1"},{"comment":"The text says the reverse pass 'undoes Δx_i to recover the pre-update state'; in floating-point arithmetic, x := x + Δx followed by x := x - Δx is not guaranteed to return the original x bit-exactly. The paper reports machine-precision agreement, so this apparently does not affect the measurements, but the mechanism should be explained or the reconstruction should be specified (e.g., storing the pre-update value or showing the error is below the reported tolerance).","section":"Appendix H"},{"comment":"The cross-paper comparison with DiffIPC ('two orders of magnitude less memory') is not controlled and the caveat is stated; consider moving this comparison to a clearly labeled 'published numbers' paragraph and referring to Table 3 as the only controlled memory comparison.","section":"§6.4"},{"comment":"In the description of validity gates, the quantity '8.2×10^-3' is reported without units; please state whether this is an absolute or relative gradient error and in what norm.","section":"§3.5 (iii)"}],"recommendation":"major_revision","confidential_remarks":"The core no-contact contribution is sound and well validated, and the paper is a strong candidate if the contact extension is substantiated. The main risk is that the headline scale experiment and the §5 contact claims currently exceed what Theorem 1 and the reported measurements support. A focused revision adding a small contact autograd check and clarifying or narrowing the exactness claims would substantially de-risk acceptance."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"Here is my read. The core result is correct and genuinely useful: for a block implicit solver like Vertex Block Descent, the exact discrete adjoint of the executed sweep is a reverse sweep of 3x3 local solves, with no global system. The paper proves this, and the validation is strong where it applies: Table 1 shows machine-precision agreement with autograd through the identical forward at K=1, 5, 20, and the ablation of the three safeguard terms (saturation, Hessian tangent, validity gates) is exactly the kind of careful work that usually gets skipped. The controlled same-codebase comparison against unrolled AD and equation-level adjoints is also well done; the 33x/71x numbers look credible given the memory model.\n\nThe soft spot is contact. Theorem 1 assumes each block update is C1 and same-color updates touch disjoint stencils. The IPC log barrier has an activation boundary, and the center-of-mass penalty between bodies couples vertices that are not graph-adjacent, so the proof does not cover the contact-coupled regime. The paper's scale experiment uses exactly these mechanisms but reports only task success, not an autograd-vs-reverse-sweep error. The sentence that pair indices carry no gradient does not by itself show the reverse sweep reconstructs the forward's branch decisions exactly; if active-set changes or broad-phase pairs cannot be replayed from the 72-byte buffer, the machine-precision claim could fail at small K in the same way the paper's own ablations show for other omitted terms. This is not a fatal objection to the method, but it is a real gap in the paper's exactness narrative. The fix is straightforward: run the autograd comparison on a contact scene, at least for a small mesh, and say what happens when contact set changes between sweeps.\n\nAlso, the reproducibility statement promises a released harness and single-command reproduction, but the text gives no repository URL or commit hash. Given the paper's empirical claims, a referee should ask for the link before this is accepted.\n\nOverall: for non-contact block implicit simulation, this is correct, well explained, and a real advance over equation-level adjoints at finite solver depth. The contact claim needs more work, and the code needs to be findable. I would send it to peer review without hesitation; the right outcome is a conditional accept after the authors close the contact validation gap. Worth discussing in the reading group, definitely.","headline":"Solid solver-level adjoint with machine-precision validation in the non-contact regime; the contact-scale experiment sits outside the theorem's hypotheses and needs an exactness check.","tokens_in":21265,"tokens_out":2939,"would_cite":true,"duration_ms":30814,"reading_group":"yes","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":null,"created_at":"2026-08-14T04:32:01.283613+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":null,"supporting_citations":[],"review_version":1}