Computing and Proving Well-founded Orderings through Finite Abstractions
Rob Sumners (Centaur Technology)

TL;DR
This paper introduces a method for verifying progress in complex state machines by constructing finite abstractions and measures, ensuring progress properties without complex invariant derivation, with applications to microprocessor memory transactions.
Contribution
We develop a process to compute finite abstract graphs with decreasing measures, enabling progress verification in complex systems without complex invariants.
Findings
Successfully applied to the Bakery algorithm
Efficient extraction of abstract graphs using incremental SAT
Guarantees progress through measure reduction on system transitions
Abstract
A common technique for checking properties of complex state machines is to build a finite abstraction then check the property on the abstract system -- where a passing check on the abstract system is only transferred to the original system if the abstraction is proven to be representative. This approach does require the derivation or definition of the finite abstraction, but can avoid the need for complex invariant definition. For our work in checking progress of memory transactions in microprocessors, we need to prove that transactions in complex state machines always make progress to completion. As a part of this effort, we developed a process for computing a finite abstract graph of the target state machine along with annotations on whether certain measures decrease or not on arcs in the abstract graph. We then iteratively divide the abstract graph by splitting into strongly…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Formal Methods in Verification · Logic, programming, and type systems
