Automated Software Analysis Group

On Proving Alloy Specifications using KeY

  • Author:

    Mattias Ulbrich, Ulrich Geilmann, Aboubakr Achraf El Ghazi, Mana Taghdiri

  • Place:

    Karlsruhe Institute of Technology, Technical Report 2011-37, 2011

  • Abstract:

    Alloy is a specification language based on a relational first-order logic with built-in operators for transitive closure, set cardinality, and integer arithmetic. The Alloy Analyzer checks Alloy specifications automatically with respect to bounded domains. Thus, while suitable for finding counterexamples, it cannot, in general, provide correctness proofs. This paper presents Kelloy, a tool for verifying Alloy specifications with respect to potentially infinite domains. It describes an automatic translation of the full Alloy language to the first-order logic of the KeY theorem prover, and an Alloy-specific extension to KeY's calculus. It discusses correctness and completeness conditions of the translation, and reports on our automatic and interactive experiments.


author = {Mattias Ulbrich and Ulrich Geilmann and Aboubakr Achraf {El Ghazi} and Mana Taghdiri},
title = {On Proving Alloy Specifications using KeY},
institution = {Karlsruhe Institute of Technology},
year = {2011},
type = {Karlsruhe Reports in Informatics},
number = {2011-37}