32 citations found. Retrieving documents...
C. C. Morgan & K. Robinson, "Specification Statements and Refinements," IBM J. Res. Develop. 31 (1987).

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

A Method of Program Refinement - Grundy (1993)   (9 citations)  (Correct)

....strict formality. The combination of formality and step wise refinement characterises a number of approaches known as program refinement methods. The earliest work on program refinement was that of Ralph Back [Bac81, Bac88] This work was later reinvented and extended both by Carroll Morgan [MR87, Mor88b] and by Joe Morris [Mor87] Each of these methods takes an existing programming language (Dijkstra s guardedcommand language) and extends it by adding a new specification statement that can be used to describe an arbitrary requirement. The addition of a specification statement yields a ....

....approach. Although work on tool support for the various refinement calculi is now in progress [GNU92, Vic90, Naf92, vWS91, vWHLL93, vW94] some of which exploits ideas developed in this thesis and published earlier [Gru91c, Gru92] none of the original papers on the refinement calculi [Bac81, MR87, Mor87] addresses this concern. This suggests that the ease with which tool support could be provided for these calculi was not a consideration when they were being designed. Predicative Programming An alternative approach to program refinement has been proposed by Mili [Mil83] Hoare [Hoa84] ....

Carroll C. Morgan and Ken A. Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5):546--555, September 1987.


Metavariables and Conditional Refinements in the Refinement.. - Nickson (1994)   (4 citations)  (Correct)

....(Editors) Proceedings of the 6th Refinement Workshop, London, 5 7 January 1994, Springer Verlag, 1994. Software Verification Research Centre, University of Queensland, Brisbane, Australia. Email: nickson cs.uq.oz.au. y Email: lindsay comp.vuw.ac.nz. 1 Introduction The refinement calculus [1, 2, 3] provides a set of rules for deriving programs from formal specifications. Each rule defines a small step from specification to program; by building an appropriate sequence of rule applications, we can develop programs hand in hand with their proofs, with the confidence that the whole proof is ....

....a larger example illustrating both techniques the derivation of an algorithm for calculating the least common multiple. 2 Refinement In this section, we describe the refinement calculus in a little more detail, and present the derivation of a simple program using refinement rules from [1] and [3] instantiating them fully before application. This serves to introduce the traditional style of development in the calculus, and shows how the goal directed strategies we wish to use sometimes conflict with the disciplines of this style. Specifications are written in the wide spectrum ....

[Article contains additional citation context not shown here]

Carroll C. Morgan and Ken Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5):546--555, September 1987.


The Formal Transformation Approach to Source Code Analysis and.. - Ward (2001)   (Correct)

....1 , R) and WP(S 2 , R) as formulae in infinitary logic, as shown above. We can define a notion of refinement using weakest preconditions as follows: S 1 is refined by S 2 if and only if the formula WP(S 1 , R) # WP(S 2 , R) can be proved for every formula R. Back and von Wright [3] and Morgan [9,10] use a second order logic to carry out this proof. In a second order logic we can quantify over boolean predicates, so the formula to be proved is: #R.WP(S 1 , R) # WP(S 2 , R) This approach has a serious drawback: second order logic is incomplete which means that there is not necessarily a ....

C. C. Morgan & K. Robinson, "Specification Statements and Refinements," IBM J. Res. Develop. 31 (1987).


Refining Specifications to Logic Programs - Hayes, Nickson, Strooper (1996)   (Correct)

....of a procedure explicit, and can be used during refinement to optimize the constructed logic program. We provide a semantics for the extended logic programming language and derive a set of refinement laws. Finally we apply these to an example derivation. 1 Introduction The refinement calculus [3, 12, 13, 14] provides a framework for the stepwise development of imperative programs from specifications. It makes use of a wide spectrum language which includes both specification and programming language constructs. That allows a specification to be refined, step by step, to program code within a single ....

....= X i) 9 L; X ; R ffl hT = tree(L; X ; R)i; hX Y i; isin(Y ; R) The step from the last predicate to a program in a language like Prolog is a mechanical translation. 15 6 Related work Traditionally, the refinement calculus has been used to develop imperative programs from specifications [3, 12, 13, 14]. The increase in expressive power of logic programming languages, when compared with imperative languages, leads to a reduced conceptual gap between a problem and its solution, which means that fewer development steps are required during refinement. An additional advantage of logic programming ....

C. C. Morgan and K. A. Robinson. Specification statements and refinement. IBM Jnl. Res. Dev., 31(5), September 1987.


A Superposition Refinement of Component-based Systems - Winnie Weiqun Qiu   (Correct)

....a method for the systematic construction of programs by applying a series of property preserving transformations (such as state invariants) from an initial abstract specification to a final set of concrete programs. Examples of well known stepwise refinement techniques are the Refinement Calculus [9] and the B Method [5] The Refinement Calculus is based on the weakest pre condition semantics [10] and has a typical specification expressed in terms of a system s state space with pre condition and post condition relations on this state. The B Method has the same theoretical foundation as the ....

C. C. Morgan and K. A. Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5):546--555, 1987.


Refinement for Direct Manipulation Interfaces - Faconti Massink Ritchie   (Correct)

....of low level user actions, such as selecting a representation of a game token and moving it to a certain location. The question arises how to relate such an implementation to the abstract specification in the best way. This note discusses the extent to which state based traditional refinement [11] and behaviour oriented architectural design techniques [16, 5, 10] are appropriate for reasoning about implementations using direct manipulation. We argue that at best traditional refinement can be used to provide a posit and prove existence proof, namely that it can be used to argue that a ....

C. Morgan. Specification Statements and Refinement. In IBM Jnl. Res. Dev., 31(5), 1987.


Requirements for a Program Refinement Engine - Carrington, Hayes, Nickson.. (1995)   (1 citation)  (Correct)

....the program satisfies the specification. The refinement approach starts with a formal, abstract specification of the required product and transforms this via a sequence of small steps into a form suitable for execution. The refinement calculus, developed by Back, Morgan and Morris, Bac78, Bac88, MR87, Mor94, Mor87] provides a uniform method for deriving programs from specifications. The calculus extends a programming language with abstract specification constructs, to give a wide spectrum language [B 85, B 87] that can express specifications, programs, and every step in between. The ....

....command with the appropriate number of branches. This will require list building 12 facilities to express how the subject and parameters combine to yield the instantiated applicability condition and result. Other refinement relations: We shall initially assume the simple refinement relation of [MR87] defined using wp. Later, it may be useful to use different refinement relations: to handle different forms of context, for example, we might want to index that relation in various ways. Another example of a useful variant refinement relation is Nelson s relation [Nel89] defined in terms of both ....

Carroll C. Morgan and Ken Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5):546--555, September 1987.


Metavariables and Conditional Refinements in the Refinement.. - Nickson, al. (1994)   (4 citations)  (Correct)

....developing programs using the refinement calculus make use of both of these techniques informally, but the written derivation does not usually reflect their use. We describe and illustrate a rigorous way to apply these techniques and record their use. 1 Introduction The refinement calculus [1, 2, 3] provides a set of rules for deriving programs from formal specifications. Each rule defines a small step from specification to program; by building an appropriate sequence of rule applications, we can develop programs hand in hand with their proofs, with the confidence that the whole proof is ....

....rule. a larger example illustrating both techniques the derivation of an algorithm for calculating the least common multiple. 2 Refinement In this section, we describe the refinement calculus in a little more detail, and present the derivation of a simple program using refinement rules from [1] and [3] instantiating them fully before application. This serves to introduce the traditional style of development in the calculus, and shows how the goaldirected strategies we wish to use sometimes conflict with the disciplines of this style. Specifications are written in the wide spectrum ....

[Article contains additional citation context not shown here]

Carroll C. Morgan and Ken Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5):546--555, September 1987.


Program Window Inference - Nickson, Hayes (1995)   (2 citations)  (Correct)

....the following rule. Gamma; 9w ffl pre post ( post 0 Gamma w : h pre . post i v w : h pre . post 0 i 2 Here the refinement relation below the line becomes reverse implication above the line. The objective of this paper is to adapt window inference techniques to the calculus [4, 5, 6, 3, 7], thus allowing easy access to context in a refinement calculus setting. To do this we extend the concept of a context to include not only the purely logical hypotheses, but also program context information such as the names of program variables in scope, the types of those variables and ....

Carroll C. Morgan and Ken Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5):546--555, September 1987.


VDM and the Refinement Calculus: a comparison of two systematic .. - Carrington (1993)   (1 citation)  (Correct)

....both specification and reification. The Refinement Calculus augments Dijkstra s guarded command language[3] with a specification construct and provides rules for transforming program structures while maintaining essential properties. Because it has been discovered by three people independently [1, 12, 13], it has several syntactic variations. We use the notation described in Morgan s text[8] which is the most accessible introduction. The specification statement w : h Pre ; Post i denotes a program that, executed in a state satisfying Pre, terminates in a state satisfying Post while modifying ....

C.C. Morgan and K.A. Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5):546--555, September 1987.


Refinement in Ergo - Carrington, Hayes, Nickson, Watson.. (1995)   (Correct)

....the program satisfies the specification. The refinement approach starts with a formal, abstract specification of the required product and transforms this via a sequence of small steps into a form suitable for execution. The refinement calculus, developed by Back, Morgan and Morris, Bac78, Bac88, MR87, Mor94, Mor87] provides a uniform method for deriving programs from specifications. The calculus extends a programming language with abstract specification constructs, to give a wide spectrum language [B 85, B 87] that can express specifications, programs, and every step in between. The ....

Carroll C. Morgan and Ken Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5):546--555, September 1987.


Supporting Contexts in Program Refinement - Nickson, Hayes (1996)   (1 citation)  (Correct)

....is borrowed from a technique, called window inference, for handling context in theorem proving. Window inference is the primary proof paradigm of the Ergo proof editor. This tool has been extended to mechanize refinement using program window inference. 1 Introduction The refinement calculus [1, 2, 3, 4] provides a systematic method for the derivation of a program from a specification via a sequence of correctness preserving transformations. Its main innovation is to extend a programming language with specification constructs, such as specification commands [5] or nondeterministic assignments ....

Carroll C. Morgan and Ken Robinson. Specification statements and refinement. In Morgan and Vickers [19], pages 23--46. Also in IBM Journal of Research and Development, 31(5):546--555, 1987.


A Review of Existing Refinement Tools - Carrington, Hayes, al. (1994)   (2 citations)  (Correct)

....The refinement approach starts with a formal, abstract specification of the required product and transforms this in a sequence of small steps into a form suitable for execution. 1. 2 What is the refinement calculus The refinement calculus, developed independently by Back, Morgan and Morris, [1, 2, 3, 4, 5, 6, 7, 8] provides a uniform method for deriving programs from specifications. The calculus extends a programming language with an abstract specification construct. The calculus defines formally an ordering between specifications that allows one specification to be substituted for another. The semantics of ....

C. C. Morgan and K. A. Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5):546--555, September 1987.


The PRT User Manual - Version 1.03 - Carrington, Hayes, al. (1995)   (Correct)

....: 74 D.3.1 obligationaction : 75 D.4 The PWI Specification Programming language. 75 3 1 Introduction 1. 1 The Scope of the Tool PRT is an editor for refinement documents using the refinement calculus of Back, Morgan and Morris [1, 2, 3, 4, 5, 6, 7, 8]. Specifically, PRT follows the style of the refinement calculus as described by Carroll Morgan [6] readers are assumed to be familiar with this work. A derivation in the refinement calculus proceeds by the successive application of refinement rules, each of which may incur proof obligations to ....

C. C. Morgan and K. A. Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5):546--555, September 1987.


A Language of Refinements - Vickers, Gardiner (1994)   (Correct)

....provides an abstract representation of the overall program development, reflecting its tree like structure. The language is used for recording developments in the refinement editor an automated tool supporting the refinement calculus. 1 Introduction Formal techniques of program development [1, 2, 12, 14, 17] have the potential to revolutionise the way in which programs are constructed. The formalization of the process of program development brings with it the benefits of rigour, and increases confidence in the program s correctness. These formal methods also provide a history of the program s ....

C.C. Morgan and K.A. Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5), September 1987. Reprinted in [16].


A Recursion Removal Theorem - Ward (1992)   (Correct)

....effect is to add the variables in x to the state space, assign new values to them such that Q is satisfied, remove the variables in y from the state and terminate. If there is no assignment to the variables in x which satisfies Q then the atomic specification does not terminate. Morgan and others [14,15,16,17] use a different specification statement, written x : Pre; Post] This statement is guaranteed to terminate for all initial states which satisfy Pre and will terminate in a state which satisfies Post while only assigning to variables in the list x. It is thus a combination of an assignment and a ....

C. Morgan & K. Robinson, "Specification Statements and Refinements," IBM J. Res. Develop. 31 (1987).


Understanding Data Refinement Using Procedural Refinement - Kearns (1990)   (Correct)

....b: I2 Q) if s Q DN t We use the statement none:P which essentially is a promise to add an assertion of P at this point in the program, sometime in the future. It can be used to create the miracle statement in [Morris, 89] and [Morgan, 87b] s Q Lemma 5.2.10 [ TypeK k; s Q ; k:I2; none: b:I2 Q sp(s, c ) b: I2 Q) add b TRUE before b:P [ TypeK k; s Q ; k:I2; b TRUE none: b:I2 sp(s, c ) b: I2 Q) s Q DN t [ TypeK k; k:I1; t; b:I2 Q sp(s, c ) none: b:I2 sp(s, c ) b: I2 Q) P none:P ....

Morgan, C., Robinson, K.: Specification Statements and Refinement, IBM J. Res. Development, 31(5), September 1987a, pp. 546-554.


Refinement for Direct Manipulation Interfaces - Faconti Massink   (Correct)

....Manipulation Interfaces G.P. Faconti, M.Massink, B.Ritchie CNUCE Institute, National Research Council of Italy, 56126 Pisa, Italy e mail: faconti cnuce.cnr.it and M. Massink guest.cnuce.cnr.it Computing and Information System Department, Rutherford Appleton Laboratory, Chilton, DIDCOT, Oxon OX11 0QX, U.K. e mail: B.Ritchie rl.ac.uk Abstract This note discusses the extent to which state based traditional refinement and behaviour oriented architectural design and verification techniques are appropriate for reasoning about implementations using direct manipulation. We argue that at best ....

....of low level user actions, such as selecting a representation of a game token and moving it to a certain location. The question arises how to relate such an implementation to the abstract specification in the best way. This note discusses the extent to which state based traditional refinement [11] and behaviour oriented architectural design techniques [16, 5, 10] are appropriate for reasoning about implementations using direct manipulation. We argue that at best traditional refinement can be used to provide a posit and prove existence proof, namely that it can be used to argue that a ....

[Article contains additional citation context not shown here]

C. Morgan. Specification Statements and Refinement. In IBM Jnl. Res. Dev., 31(5), 1987.


An Object-Oriented Refinement Calculus with Modular Reasoning - Utting (1992)   (15 citations)  Self-citation (Robinson)   (Correct)

.... as predicate transformers are discussed in [GM91] and [DS90] The extension from Dijkstra s language to the refinement calculus was made by Back [Bac78] Bac81] Bac88a] then redeveloped independently twice in the late 1980 s by Morris [Mor87] Mor90c] Mor90b] Mor89] and by Morgan and Robinson [MR87] MRG88] Mor90a] 2.2.1 Values and States Let Var be a countable set of variables. Generally we will not distinguish between sets and sequences of variables, so we assume some total ordering over Var, which gives a one to one correspondence between a set of variables and its ordered sequence. ....

Carroll Morgan and Ken Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5), September 1987. Ref. on page 9.


The Formal Transformation Approach to Source Code Analysis.. - Manipulation Ward Software (2001)   (Correct)

No context found.

C. C. Morgan & K. Robinson, "Specification Statements and Refinements," IBM J. Res. Develop. 31 (1987).


Formal Methods Applied to a Floating Point Number System - Geoff Barrett July (1989)   (31 citations)  (Correct)

No context found.

C. Morgan, The specification statement, to appear in TOPLAS C. Morgan, and K. Robinson, Specification statements and refinement, IBM Jnl. Res. Dev., 31, 5, pp. 546--555, Sept. 1987.


Pigs from Sausages? Reengineering from Assembler to C via FermaT.. - Ward (2004)   (Correct)

No context found.

C. C. Morgan & K. Robinson, "Specification Statements and Refinements," IBM J. Res. Develop. 31 (1987).


Program Slicing via FermaT Transformations - Ward (2002)   (2 citations)  (Correct)

No context found.

C. C. Morgan & K. Robinson, "Specification Statements and Refinements," IBM J. Res. Develop. 31 (1987).


A Tool Survey on Z Specification and Refinement - Wu (1999)   (Correct)

No context found.

C. C. Morgan and K. A. Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5):546--555, September 1987.


Select Z Bibliography - Bowen (1993)   (Correct)

No context found.

C. Carroll Morgan and Ken A. Robinson. Specification statements and refinement. IBM Journal of Research and Development, 31(5), September 1987. Also reprinted in [182].

First 50 documents

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC