Towards an Operational Semantics for Alloy

  • Authors:
  • Theophilos Giannakopoulos;Daniel J. Dougherty;Kathi Fisler;Shriram Krishnamurthi

  • Affiliations:
  • Department of Computer Science, WPI,;Department of Computer Science, WPI,;Department of Computer Science, WPI,;Computer Science Department, Brown University,

  • Venue:
  • FM '09 Proceedings of the 2nd World Congress on Formal Methods
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

The Alloy modeling language has a mathematically rigorous denotational semantics based on relational algebra. Alloy specifications often represent operations on a state, suggesting a transition-system semantics. Because Alloy does not intrinsically provide a notion of state, however, this interpretation is only implicit in the relational-algebra semantics underlying the Alloy Analyzer. In this paper we demonstrate the subtlety of representing state in Alloy specifications. We formalize a natural notion of transition semantics for state-based specifications and show examples of specifications in this class for which analysis based on relational algebra can induce false confidence in designs. We characterize the class of facts that guarantees that Alloy's analysis is sound for state-transition systems, and offer a sufficient syntactic condition for membership in this class. We offer some practical evaluation of the utility of this syntactic discipline and show how it provides a foundation for program synthesis from Alloy.