An Alloy model is a collection of constraints that describes (implicitly) a set of structures, for example: all the possible security configurations of a web application, or all the possible topologies of a switching network. Alloy’s tool, the Alloy Analyzer, is a solver that takes the constraints of a model and finds structures that satisfy them. It can be used both to explore the model by generating sample structures, and to check properties of the model by generating counterexamples. Structures are displayed graphically, and their appearance can be customized for the domain at hand.
At its core, the Alloy language is a simple but expressive logic based on the notion of relations, and was inspired by the Z specification language and Tarski’s relational calculus. Alloy’s syntax is designed to make it easy to build models incrementally, and was influenced by modeling languages (such as the object models of OMT and UML). Novel features of Alloy include a rich subtype facility for factoring out common features and a uniform and powerful syntax for navigation expressions.
The Alloy Analyzer works by reduction to SAT. Version 4 was a complete rewrite that included Kodkod, a new model finding engine that optimizes the reduction, and a new front end.
Download Alloy Analyzer Portable 4.2_2015-02-22 Dev Test 1 (12.7MB download / 13.4MB installed)
Note: 4.2_2015-02-22 is an experimental build released by the Alloy developers. For previous versions, see the SourceForge project page.
Note: Alloy Analyzer is a Java application so it requires either a local Java installation or jPortable
See all release notes at the SourceForge project page
Updated to 4.2_2014-02-14 Dev Test 1. See release notes for details.
Updated to 4.2_2014-03-07 Dev Test 1. See release notes for details.
Updated to 4.2_2014-05-16 Dev Test 1. See release notes for details.
New version available: 4.2_2015-02-22
Do you plan on updating to it?
I have been on hiatus from doing PA.c stuff for a while now because of various life things. I'm not sure when I will be able to return to packaging. I am encouraging people who wish to take over the programs to tell me and then do so. I want to see these apps get the respect they deserve.
Updated to 4.2_2015-02-22 Dev Test 1. See release notes for details.