Verify that no ARC counter access reads a nonpositive value under C20
Establish a sound verification or analysis technique that can prove, for the core of Rust’s Atomic Reference Counting (ARC) algorithm under the C20 memory consistency model, that no atomic access of the reference-count field ever reads a value v ≤ 0 (Equation (2): “No access of the counter reads a value v ≤ 0”), thereby removing the current assumption required by the C20 proof.
References
For (\ref{eq:arc-no-zero}), in contrast, we have no suggestions; we leave it as an open problem.
— An approach for modularly verifying the core of Rust's atomic reference counting algorithm against the (X)C20 memory consistency model
(2505.00449 - Jacobs et al., 1 May 2025) in Section 1 (Introduction)