Incremental Dead State Detection in Logarithmic Time
Caleb Stanford, Margus Veanes

TL;DR
This paper introduces guided incremental digraphs (GIDs) for dead state detection, achieving logarithmic time complexity and significant speedups over previous algorithms in formal verification tasks.
Contribution
The paper proposes GIDs and two algorithms that enable dead state detection in logarithmic time, improving efficiency over existing methods for incremental graph analysis.
Findings
Achieved $O(\log m)$ amortized time per edge for dead state detection.
Implemented and compared algorithms showing 110-530x speedups over the state-of-the-art.
Validated improvements across various graph classes and regex benchmark graphs.
Abstract
Identifying live and dead states in an abstract transition system is a recurring problem in formal verification; for example, it arises in our recent work on efficiently deciding regex constraints in SMT. However, state-of-the-art graph algorithms for maintaining reachability information incrementally (that is, as states are visited and before the entire state space is explored) assume that new edges can be added from any state at any time, whereas in many applications, outgoing edges are added from each state as it is explored. To formalize the latter situation, we propose guided incremental digraphs (GIDs), incremental graphs which support labeling closed states (states which will not receive further outgoing edges). Our main result is that dead state detection in GIDs is solvable in amortized time per edge for edges, improving upon per edge due to…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsFormal Methods in Verification · Software Testing and Debugging Techniques · Logic, programming, and type systems
