Results 1 -
8 of
8
Pointfree factorization of operation refinement
- In FM’06, volume 4085 of LNCS
, 2006
"... Abstract. The standard operation refinement ordering is a kind of “meet of opposites”: non-determinism reduction suggests “smaller ” behaviour while increase of definition suggests “larger ” behaviour. Groves ’ factorization of this ordering into two simpler relations, one per refinement concern, ma ..."
Abstract
-
Cited by 4 (4 self)
- Add to MetaCart
Abstract. The standard operation refinement ordering is a kind of “meet of opposites”: non-determinism reduction suggests “smaller ” behaviour while increase of definition suggests “larger ” behaviour. Groves ’ factorization of this ordering into two simpler relations, one per refinement concern, makes it more mathematically tractable but is far from fully exploited in the literature. We present a pointfree theory for this factorization which is more agile and calculational than the standard set-theoretic approach. In particular, we show that factorization leads to a simple proof of structural refinement for arbitrary parametric types and exploit factor instantiation across different subclasses of (relational) operation. The prospect of generalizing the factorization to coalgebraic refinement is discussed.
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 Park-Milner definition popular in process algebra.
This research was supported by NASA grant NAG5-4301 and NSF grant AST9619552 to AW. MK was supported by KBN grant 2.P03D.006.1. Arecibo Observatory is part of the National Astronomy and Ionosphere Center, which is operated by Cornell University under cont
, 2005
"... A partial component is a process which fails or dies at some stage, thus exhibiting a finite, more ephemeral behaviour than expected (e.g. operating system crash). Partiality — which is the rule rather than exception in formal modelling — can be treated mathematically via totalization techniques. In ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
A partial component is a process which fails or dies at some stage, thus exhibiting a finite, more ephemeral behaviour than expected (e.g. operating system crash). Partiality — which is the rule rather than exception in formal modelling — can be treated mathematically via totalization techniques. In the case of partial functions, totalization involves error values and exceptions. In the context of a coalgebraic approach to component semantics, this paper argues that the behavioural counterpart to such functional techniques should extend behaviour with try-again cycles preventing from component collapse, thus extending totalization or transposition from the algebraic to the coalgebraic context. We show that a refinement relationship holds between original and totalized components which is reasoned about in a coalgebraic approach to component refinement expressed in the pointfree binary relation calculus. As part of the pragmatic aims of this research, we also address the factorization of every such totalized coalgebra into two coalgebraic components — the original one and an added front-end — which cooperate in a client-server style. Key words: partial components, try-again cycles, refinement, coalgebra 1
Transforming Data by Calculation
- In GTTSE’07, volume 5235 of LNCS
, 2008
"... Abstract. This paper addresses the foundations of data-model 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 pointfree-transform, a technique whereby predicat ..."
Abstract
-
Cited by 3 (3 self)
- Add to MetaCart
Abstract. This paper addresses the foundations of data-model 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 pointfree-transform, a technique whereby predicates are lifted to binary relation terms (of the algebra of programming) in a two-level 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 view-update problem.
Extended static checking by strategic rewriting of pointfree relational expressions
, 2007
"... Abstract. Binary relational algebra provides semantic foundations for major areas of computing, such as database design, state-based specification, and functional programming. Remarkably, static checking support in these areas fails to exploit the full semantic content of relations. In particular, p ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
Abstract. Binary relational algebra provides semantic foundations for major areas of computing, such as database design, state-based specification, and functional programming. Remarkably, static checking support in these areas fails to exploit the full semantic content of relations. In particular, properties such as the simplicity or injectivity of relations are not statically enforced in operations that manipulate relations, such as database queries, state transitions, or composition of functional components. We describe how a pointfree treatment of relations, their properties, their operators, and the laws that govern them can be captured in a type-directed strategic rewriting system for transformation of relational expressions. This rewriting tool can be used to simplify relational proof obligations and ultimately reduce them to tautologies. We demonstrate how such reductions provide extended static checking (ESC) for design contraints commonly found in software modeling and development.
Variations on an Alloy-centric Tool-Chain in Verifying a Journaled File System Model
, 2010
"... Tool interoperability is among the main goals of the international Grand Challenge initiative. In the context of the Verifiable File System mini-challenge put forward by Joshi and Holzmann, our work has been focused on the integration of different formal methods and tools in a tool-chain for modelli ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Tool interoperability is among the main goals of the international Grand Challenge initiative. In the context of the Verifiable File System mini-challenge put forward by Joshi and Holzmann, our work has been focused on the integration of different formal methods and tools in a tool-chain for modelling and verification. The current paper shows how to adapt such a tool-chain to the task in hands, aiming at reducing tool integration costs. The refinement of an abstract file store model into a journaled (flash) data model catering for wear leveling and recovery from power loss is taken as case study. This shows that refinement steps can be carried out within a shorter, reduced life-cycle where model checking in Alloy goes hand in hand with manual proofs carried out in the (pointfree) algebra of binary relations. This provides ample evidence of the positive impact of Alloy’s lemma ’everything is a relation ’ on software verification, in particular in carrying out induction-free proofs about data structures such as finite maps and lists.
Galois A Language for Proofs Using Galois Connections and Fork Algebras
"... Galois is a domain specific language supported by the Galculator interactive proof-assistant prototype. Galculator uses an equational approach based on Galois connections with indirect equality as an additional inference rule. Galois allows for the specification of different theories in a point-free ..."
Abstract
- Add to MetaCart
Galois is a domain specific language supported by the Galculator interactive proof-assistant prototype. Galculator uses an equational approach based on Galois connections with indirect equality as an additional inference rule. Galois allows for the specification of different theories in a point-free style by using fork algebras, an extension of relation algebras with expressive power of first-order logic. The language offers sub-languages to derive proof rules from Galois connections, to express proof tactics, and to organize axioms and theorems into modular definitions. In this paper, we describe how the algebraic theory underlying the proof-method drives the design of the Galois language. We provide the syntax and semantics of important fragments of Galois and show how they are hierarchically combined into a complete language. Categories and Subject Descriptors D.2.4 [Software/Program

