🤖 AI Summary
Existing formal verification methods struggle to effectively validate correctness properties of programs characterized by symmetry. This paper introduces the first Hoare logic framework specifically designed for symmetry verification: it replaces conventional pre- and postconditions with group actions, defines a formal syntax for group-action specifications, and establishes a natural entailment relation—enabling rigorous, compositional reasoning about symmetry properties of imperative programs. The approach integrates group action theory, Hoare logic, and static analysis, and is implemented in the prototype tool SymVerif. Evaluation on multiple hand-crafted benchmarks confirms the framework’s effectiveness; notably, it uncovered a logical inconsistency in the symmetry formulation of an existing dynamical systems model. The core contribution is the first sound and complete Hoare logic for symmetry based on group actions—establishing a provably correct, implementable paradigm for symmetry-driven program verification.
📝 Abstract
Many natural program correctness properties can be stated in terms of
symmetries, but existing formal methods have little support for reasoning
about such properties. We consider how to formally verify a broad class of
symmetry properties expressed in terms of group actions. To specify these
properties, we design a syntax for group actions, supporting standard
constructions and a natural notion of entailment. Then, we develop a
Hoare-style logic for verifying symmetry properties of imperative programs,
where group actions take the place of the typical pre- and post-condition
assertions. Finally, we develop a prototype tool $mathsf{SymVerif}$, and use
it to verify symmetry properties on a series of handcrafted benchmarks. Our
tool uncovered an error in a model of a dynamical system described by citet{McLachlan_Quispel_2002}.