Results 11  20
of
23
Strategic term rewriting and its application to a VDMSL to SQL conversion
 In Proceedings of the Formal Methods Symposium (FM’05
, 2005
"... Abstract. We constructed a tool, called VooDooM, which converts datatypes in VDMSL into SQL relational data models. The conversion involves transformation of algebraic types to maps and products, and pointer introduction. The conversion is specified as a theory of refinement by calculation. The imp ..."
Abstract

Cited by 5 (5 self)
 Add to MetaCart
Abstract. We constructed a tool, called VooDooM, which converts datatypes in VDMSL into SQL relational data models. The conversion involves transformation of algebraic types to maps and products, and pointer introduction. The conversion is specified as a theory of refinement by calculation. The implementation technology is strategic term rewriting in Haskell, as supported by the Strafunski bundle. Due to these choices of theory and technology, the road from theory to practise is straightforward. Keywords: Strategic term rewriting, program calculation, VDM, SQL. 1
Mathematics of Recursive Program Construction
, 2001
"... A discipline for the design of recursive programs is presented. The core concept ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
A discipline for the design of recursive programs is presented. The core concept
Transforming Data by Calculation
 IN GTTSE’07, VOLUME 5235 OF LNCS
, 2008
"... This paper addresses the foundations of datamodel transformation. A catalog of data mappings is presented which includes abstraction and representation relations and associated constraints. These are justified in an algebraic style via the pointfreetransform, a technique whereby predicates are lif ..."
Abstract

Cited by 5 (3 self)
 Add to MetaCart
This paper addresses the foundations of datamodel transformation. A catalog of data mappings is presented which includes abstraction and representation relations and associated constraints. These are justified in an algebraic style via the pointfreetransform, a technique whereby predicates are lifted to binary relation terms (of the algebra of programming) in a twolevel style encompassing both data and operations. This approach to data calculation, which also includes transformation of recursive data models into “flat ” database schemes, is offered as alternative to standard database design from abstract models. The calculus is also used to establish a link between the proposed transformational style and bidirectional lenses developed in the context of the classical viewupdate problem.
Demonic Operators and Monotype Factors
, 1993
"... This paper tackles the problem of constructing a compact, pointfree proof of the associativity of demonic composition of binary relations and its distributivity through demonic choice. In order to achieve this goal a definition of demonic composition is proposed in which angelic composition is r ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
This paper tackles the problem of constructing a compact, pointfree proof of the associativity of demonic composition of binary relations and its distributivity through demonic choice. In order to achieve this goal a definition of demonic composition is proposed in which angelic composition is restricted by means of a socalled "monotype factor". Monotype factors are characterised by a Galois connection similar to the Galois connection between composition and factorisation of binary relations. The identification of such a connection is argued to be highly conducive to the desired compactness of calculation. Nothing delights a mathematician more than to discover that two things, previously regarded as entirely distinct, are mathematicaly identical. W. W. Sawyer La math'ematique est l'art de donner le meme nom `a des choses diff'erentes. [J.] H. Poincar'e The term "Galois connexion" was coined by Oystein Ore [20] almost fifty years ago in order to describe a particularly si...
Inductive Datatypes with Laws and Subtyping – A Relational Model
 Faculty of Mathematics and Computing
"... ..."
Generic Properties of Datatypes
, 2002
"... Generic programming adds a new dimension to the parametrisation of programs by allowing programs to be dependent on the structure of the data that they manipulate. ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
Generic programming adds a new dimension to the parametrisation of programs by allowing programs to be dependent on the structure of the data that they manipulate.
Constructive Lattice Theory
, 1993
"... A notion of simulation of one datatype by another is defined as a constructive preorder. A calculus of datatype simulation is then developed by formulating constructive versions of leastfixedpoint theorems in lattice theory. The calculus is applied to the construction of several isomorphisms betwe ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
A notion of simulation of one datatype by another is defined as a constructive preorder. A calculus of datatype simulation is then developed by formulating constructive versions of leastfixedpoint theorems in lattice theory. The calculus is applied to the construction of several isomorphisms between classes of datatypes. In particular constructive adaptations of theorems in lattice theory about closure operators are shown to yield simulations and isomorphisms between monad structures, and constructive adaptations of theorems in regular algebra are shown to yield isomorphisms between list structures. A question to which any respectable theory of datatypes should provide immediate answers is when two datatypes are isomorphic, i.e. entirely equivalent modulo implementation details. A subsidiary question is when one datatype simulates another. This second question is of interest in its own right but is also important to answering the first question since isomorphism is frequently reduce...
Calculating invariants as coreflexive bisimulations
, 2008
"... Abstract. Invariants, bisimulations and assertions are the main ingredients of coalgebra theory applied to computer systems engineering. In this paper we reduce the first to a particular case of the second and show how both together pave the way to a theory of coalgebras which regards invariant pred ..."
Abstract

Cited by 3 (3 self)
 Add to MetaCart
Abstract. Invariants, bisimulations and assertions are the main ingredients of coalgebra theory applied to computer systems engineering. In this paper we reduce the first to a particular case of the second and show how both together pave the way to a theory of coalgebras which regards invariant predicates as types. An outcome of such a theory is a calculus of invariants ’ proof obligation discharge, a fragment of which is presented in the paper. The approach has two main ingredients: one is that of adopting relations as “first class citizens ” in a pointfree reasoning style; the other lies on a synergy found between a relational construct, Reynolds ’ relation on functions involved in the abstraction theorem on parametric polymorphism and the coalgebraic account of bisimulation and invariants. In this process, we provide an elegant proof of the equivalence between two different definitions of bisimulation found in coalgebra literature (due to B. Jacobs and Aczel & Mendler, respectively) and their instantiation to the classical ParkMilner definition popular in process algebra.
Domain Operators and Domain Kinds
, 1993
"... The notions of domain operator and domain kind are introduced. Several examples are presented. In particular, it is shown that the partial equivalence relations form a domain kind. The proof involves the construction of a Galois connection demonstrating that the partial equivalence relations form a ..."
Abstract
 Add to MetaCart
The notions of domain operator and domain kind are introduced. Several examples are presented. In particular, it is shown that the partial equivalence relations form a domain kind. The proof involves the construction of a Galois connection demonstrating that the partial equivalence relations form a complete lattice under the socalled domain ordering, thus providing another illustration of the importance of the early recognition of Galois connections. 1 Introduction This paper has been specially prepared for the workshop on Galois connections organised by the (Dutch) Mathematics of Programming group and held on 13th and 14th September, 1993. It is essentially a tutorial on how recognition of a Galois connection aids the construction of a complete lattice of partial equivalence relations. Additionally, the notions domain operator and domain kind are introduced. A central element of the calculus of datatypes [3, 2, 4, 1] developed by the authors and their students is the notion of a mon...
The Secrets of Causality
, 1993
"... In this paper a model for a relational calculus for distributed program design is introduced. Here, the distributed programs are compositions of socalled processes. The construction of the model is guided by desired properties for several forms of composition of processes, such as sequential compos ..."
Abstract
 Add to MetaCart
In this paper a model for a relational calculus for distributed program design is introduced. Here, the distributed programs are compositions of socalled processes. The construction of the model is guided by desired properties for several forms of composition of processes, such as sequential composition and feedback. Functionality (determinism) and totality of processes are defined. After the observation that functionality and totality are not preserved by the feedback operator the class of causal processes is introduced. It is shown that causality guarantees the preservation by the feedback of functionality and totality.