REACH: Refining Alloy Scenarios by Scope
Ana Jovanovic, Allison Sullivan

TL;DR
Reach enhances Alloy's Analyzer by enabling size-based scenario exploration, improving performance and scenario ordering, especially when incrementally adjusting scope, thus aiding systematic verification.
Contribution
Reach extends Alloy's Analyzer to allow size-based scenario exploration, improving performance and maintaining scenario order, with benefits for incremental scope adjustments.
Findings
Performance improves with Reach's enumeration.
Scenario ordering is semi-sorted, aiding user exploration.
Incremental scope changes are more efficient with Reach.
Abstract
Writing declarative models has numerous benefits, ranging from automated reasoning and correction of design-level properties be-fore systems are built, to automated testing and debugging of their implementations after they are built. Alloy is a declarative modeling language that is well suited for verifying system designs. A key strength of Alloy is its scenario-finding toolset, the Analyzer, which allows users to explore all valid scenarios that adhere to the model's constraints up to a user-provided scope. In Alloy, it is common for users to desire to first validate smaller scenarios, then once confident, move onto validating larger scenarios. However, the Analyzer only presents scenarios in the order they are discovered by the SAT solver. This paper presents Reach, an extension to the Analyzer which allows users to explore scenarios by size. Experimental results reveal Reach's…
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
TopicsModel-Driven Software Engineering Techniques · Software Testing and Debugging Techniques · Formal Methods in Verification
