A First Step in the Translation of Alloy to Coq

Abstract : Alloy is both a formal language and a tool for software mod-eling. The language is basically first order relational logic. The analyzer is based on instance finding: it tries to refute assertions and if it succeeds it reports a counterexample. It works by translating Alloy models and instance finding into SAT problems. If no instance is found it does not mean the assertion is satisfied. Alloy relies on the small scope hypothesis: examining all small cases is likely to produce interesting counterexamples. This is very valuable when developing a system. However, Alloy cannot show their absence. In this paper, we propose an approach where Alloy can be used as a first step, and then using a tool we develop, Alloy models can be translated to Coq code to be proved correct interactively.
Complete list of metadatas

Cited literature [29 references]  Display  Hide  Download

https://hal.archives-ouvertes.fr/hal-02317118
Contributor : Frédéric Loulergue <>
Submitted on : Tuesday, October 15, 2019 - 6:58:59 PM
Last modification on : Friday, October 18, 2019 - 5:01:13 AM

File

ICFEM_2019__Alloy_to_Coq.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-02317118, version 1

Citation

Salwa Souaf, Frédéric Loulergue. A First Step in the Translation of Alloy to Coq. 21st International Conference on Formal Engineering Methods (ICFEM), 2019, Shenzen, China. ⟨hal-02317118⟩

Share

Metrics

Record views

41

Files downloads

125