Results 1 
7 of
7
Formal Method Integration via Heterogeneous Notations
, 1997
"... Method integration is the procedure of combining multiple methods to form a new technique. In the context of software engineering, this can involve combining specification techniques, rules and guidelines for design and implementation, and sequences of steps for managing an entire development. In cu ..."
Abstract

Cited by 15 (9 self)
 Add to MetaCart
Method integration is the procedure of combining multiple methods to form a new technique. In the context of software engineering, this can involve combining specification techniques, rules and guidelines for design and implementation, and sequences of steps for managing an entire development. In current practice, method integration is often an adhoc process, where links between methods are defined on a casebycase basis. In this dissertation, we examine an approach to formal method integration based on socalled heterogeneous notations: compositions of compatible notations. We set up a basis that can be used to formally define the meaning of compositions of formal and semiformal notations. Then, we examine how this basis can be used in combining methods used for system specification, design, and implementation. We demonst...
Sequential Calculus.
 Information Processing Letters
, 1994
"... This paper presents an algebraic calculus like the relational calculus for reasoning about sequential phenomena. It provides a common foundation for several proposed models of concurrent or reactive systems. It is clearly differentiated from the relational calculus by absence of a general converse o ..."
Abstract

Cited by 9 (1 self)
 Add to MetaCart
This paper presents an algebraic calculus like the relational calculus for reasoning about sequential phenomena. It provides a common foundation for several proposed models of concurrent or reactive systems. It is clearly differentiated from the relational calculus by absence of a general converse operation. This permits the treatment of temporal logic within the sequential calculus. 1 Introduction and general axioms.
Interconnection of Object Specifications
 Formal Methods and Object Technology
, 1996
"... ing yet further from reality, we might proscribe the simultaneous effect of two or more methods on an object's state; doing so, we impose a monoid structure on the fixed set of methods proper to an object class. Applying methods one after the other corresponds to multiplication in the monoid, and ap ..."
Abstract

Cited by 8 (2 self)
 Add to MetaCart
ing yet further from reality, we might proscribe the simultaneous effect of two or more methods on an object's state; doing so, we impose a monoid structure on the fixed set of methods proper to an object class. Applying methods one after the other corresponds to multiplication in the monoid, and applying no methods corresponds to the identity of the monoid. A monoid is a set M with an associative binary operation ffl M : M \ThetaM ! M , usually referred to as `multiplication', which has an identity element e M 2 M . If M = (M; ffl M ; e M ) is a monoid, we often write just M for M, and e for e M ; moreover for m;m 0 2 M , we usually write mm 0 instead of m ffl M m 0 . For example, A , the set of lists containing elements of A, together with concatenation ++ : A \ThetaA ! A and the empty list [ ] 2 A , is a monoid. This example is especially important for the material in later sections. A monoid homomorphism is a structure preserving map between the carriers of ...
A Relational Approach To Optimization Problems
, 1996
"... The main contribution of this thesis is a study of the dynamic programming and greedy strategies for solving combinatorial optimization problems. The study is carried out in the context of a calculus of relations, and generalises previous work by using a loop operator in the imperative programming s ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
The main contribution of this thesis is a study of the dynamic programming and greedy strategies for solving combinatorial optimization problems. The study is carried out in the context of a calculus of relations, and generalises previous work by using a loop operator in the imperative programming style for generating feasible solutions, rather than the fold and unfold operators of the functional programming style. The relationship between fold operators and loop operators is explored, and it is shown how to convert from the former to the latter. This fresh approach provides additional insights into the relationship between dynamic programming and greedy algorithms, and helps to unify previously distinct approaches to solving combinatorial optimization problems. Some of the solutions discovered are new and solve problems which had previously proved difficult. The material is illustrated with a selection of problems and solutions that is a mixture of old and new. Another contribution is the invention of a new calculus, called the graph calculus, which is a useful tool for reasoning in the relational calculus and other nonrelational calculi. The graph
A Graphical Calculus
 Mathematics of Program Construction. SpringerVerlag LNCS 947
, 1995
"... . We present a graphical calculus, which allows mathematical formulae to be represented and reasoned about using a visual representation. We define how a formula may be represented by a graph, and present a number of laws for transforming graphs, and describe the effects these transformations have o ..."
Abstract

Cited by 6 (1 self)
 Add to MetaCart
. We present a graphical calculus, which allows mathematical formulae to be represented and reasoned about using a visual representation. We define how a formula may be represented by a graph, and present a number of laws for transforming graphs, and describe the effects these transformations have on the corresponding formulae. We then use these transformation laws to perform proofs. We illustrate the graphical calculus by applying it to the relational and sequential calculi. The graphical calculus makes formulae easier to understand, and so often makes the next step in a proof more obvious. Furthermore, it is more expressive, and so allows a number of proofs that cannot otherwise be undertaken in a pointfree way. 1 Introduction Traditionally, mathematical formulae are written down on a single line. For example, in the relational calculus [9], given four relations P , Q, R and S, we can write P ;Q " R;S to represent the relation that relates two elements x and y iff there exist u and...
Heterogeneous Specifications and their Application to Software Development
, 1995
"... We describe a course of research examining formal and semiformal heterogeneous specifications, i.e., compositions of partial specifications written in different textual and visual notations. We describe why we believe this to be an interesting topic for further inquiry, and suggest why such specific ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
We describe a course of research examining formal and semiformal heterogeneous specifications, i.e., compositions of partial specifications written in different textual and visual notations. We describe why we believe this to be an interesting topic for further inquiry, and suggest why such specifications might prove beneficial for use in software development.
Specification and Refinement of Functional Programs
, 1994
"... This paper only deals with laws about expressions with one dummy. ..."