A verification tool for ERLANG. This paper presents an overview of the main results of the project “Verification of ERLANG Programs ”, which is funded by the Swedish Business Development Agency (NUTEK) and by Ericsson within the ASTEC (Advanced Software TEChnology) initiative. Its main outcome is the ERLANG Verification Tool (EVT), a theorem prover which assists in obtaining proofs that ERLANG applications satisfy their correctness requirements formulated as behavioural properties in a modal logic with recursion. We give a summary of the verification framework as supported by EVT, discuss reasoning principles essential for successful proofs such as inductive and compositional reasoning, and an efficient treatment of side-effect-free code. The experiences of applying the tool in an industrial case study are summarised, and an approach for supporting verification in the presence of program libraries is outlined. EVT is essentially a classical proof assistant, or theorem-proving tool, requiring users to intervene in the proof process at crucial steps such as stating program invariants. However, the tool offers considerable support for automatic proof discovery through higher-level tactics tailored to the particular task of the verification of ERLANG programs. In addition, a graphical interface permits easy navigation through proof tableaux, proof reuse, and meaningful feedback about the current proof state, to assist users in taking informed proof decisions.
References in zbMATH (referenced in 9 articles )
Showing results 1 to 9 of 9.
- Vidal, Germán: Towards Erlang verification by term rewriting (2014)
- de Mol, Maarten; van Eekelen, Marko; Plasmeijer, Rinus: Proving properties of lazy functional programs with Sparkle (2008)
- Noll, Thomas: Equational abstractions for model checking Erlang programs. (2005)
- Dam, Mads; Fredlund, Lars-åke; Guruv, Dillian: Formal methods research at SICS and KTH: An overview. (2003)
- Fredlund, Lars-Åke; Gurov, Dilian; Noll, Thomas; Dam, Mads; Arts, Thomas; Chugunov, Gennady: A verification tool for ERLANG (2003)
- Huch, Frank: Model checking Erlang programs - abstracting recursive function calls. (2002)
- Arts, Thomas; Noll, Thomas: Verifying generic Erlang client-server implementations (2001)
- Huch, Frank: Model checking Erlang programs - abstracting the context-free structure. (2001)
- Noll, Thomas; Fredlund, Lars-Åke; Gurov, Dilian: The Erlang verification tool (2001)