DocumentCode
3694743
Title
Executable calculational specifications
Author
Francisco Cháves;Camilo Rocha
Author_Institution
Escuela Colombiana de Ingenierí
fYear
2015
Firstpage
1
Lastpage
8
Abstract
The calculational style of E. W. Dijkstra and C. S. Scholten is a semi-formal style for the development, both in terms of verification and derivation, of correct programs. This calculational style heavily relies on the symbolic manipulation of expressions involving, for instance, arithmetic, quantifiers, and collections. This paper presents Calculational, an executable specification language for a broad class of calculational expressions in the style of Dijkstra & Scholten. The Calculational tool offers support for executable specifications, including: (i) quantifier expressions such as summation and universal/existential quantification, and (ii) data types such as lists, sets, and bags (i.e., multisets). The current implementation of Calculational is executable in the Haskell programming language, offering support also for higher order computation and pattern matching. This implementation is available for download as open source code and as a Haskell library too (which can be embedded in other programming languages). The main features of Calculational, some examples of its use-including the formal processing and querying of relational data-, and details of its implementation are included in this paper.
Keywords
"Arrays","Computer languages","Production","Syntactics","Generators","Pattern matching","Semantics"
Publisher
ieee
Conference_Titel
Computing Colombian Conference (10CCC), 2015 10th
Type
conf
DOI
10.1109/ColumbianCC.2015.7333398
Filename
7333398
Link To Document