| John C. Reynolds. Idealized Algol and its specification logic. In Tools and Notions for Program Construction, 1982. |
....for accessing the variables, in a way that presents to the client a view of the module that does not reveal details of its internal structure. In this section we will consider a model that has arisen from work on finding a satisfactory semantic interpretation of the specification logic of [15, 17], which is a formal system for proving equivalences and partial correctness properties of programs in Algol like languages with higher order procedures. For our purposes, the most important rule of the logic is one for reasoning about local variable declarations; for clarity, we present it in ....
....c(f)s = c(f ; g)s where g is the restriction to fs 2 X j e(f)s = e(f)sg: Intuitively, c # e holds iff any (terminating) execution of c can be restricted to a world for which the value of e is invariant. For discussion of axioms that make use of this invariance at intermediate states, see [17, 20]. 18 In this model [ var] is again treated using the generalized form of variable discussed in the previous section. The rule for variable declarations can then be validated by showing that non local entities don t interfere with the expression component of a local variable, and that no ....
J. C. Reynolds. Idealized Algol and its specification logic. In D. N'eel, editor, Tools and Notions for Program Construction, pages 121--161. Cambridge University Press, Cambridge, 1982.
....that our definitions match up with the standard definitions of sheaves internal to the topos Span C op . Related Work After Reynolds series of seminal papers on higher order imperative languages such as Idealized Algol (in short, IA) and Syntactic Control of Interference (in short, SCI) [27, 26, 28], there have been several works to define the semantics of IA and SCI based on the presheaf category [21, 13, 14, 32, 18, 15, 12] In 2 [19, 16] the relational parametricity has been used to obtain more abstract model which captures data abstractions and the model is extended in [25] to handle ....
....statement can only be used with expressions or commands. 5 Two terms are independent when they use disjoint resources, in particular, different memory locations. We write M N to denote that M and N are independent. The independence predicate is expected to satisfy the following basic principles [26, 28, 13]: 1. if P M and N M , then P (N) M ; 2. if N i for all free identifiers i of M , then N M ; and 3. a non local entity M and a local variable x are independent. In [25] Reddy defined semantics of independence predicate in a parametricity model. As pointed out in the paper, he couldn t ....
J. C. Reynolds. Idealized Algol and its specification logic. In D. Neel, editor, Tools and Notions for Program Construction, pages 121--161. Cambridge Univ. Press, 1982. (Reprinted as Chapter 6 of [20]).
....variables are essential ingredients for specifying properties about imperative programs [Vic91] Nevertheless, the axioms and rules in Hoare Logic do not support the rle of auxiliary variables. This is a known deficiency and has been overcome in other frameworks e.g. specification logic [Rey82] and the Vienna Development Method (VDM) Jon90] In our opinion, the rle of auxiliary variables in Hoare Logic has been underestimated. We stipulate a new structural rule for adjusting auxiliary variables when strengthening preconditions This is an extended version of [Sch97] formerly ....
....which are specified with respect to pre and postcondition, but for which one does not consider a concrete implementation [Tar85] or ffl verify programs which invoke recursive procedures. This is a well known deficiency and has been overcome in several other systems. In specification logic [Rey82] as part of the correctness formula, one may explicitly state that a program does not interfere with auxiliary variables. For example, an adequate specification for the factorial function could be stated by SL 8X Delta fX = xg S fy = X g S#X : Another solution is the VDM formalism [Jon90, ....
John C. Reynolds. Idealized Algol and its specification logic. In D. Nel, editor, Tools & Notions for Program Construction. Cambridge University Press, 1982.
....a deep embedding for the syntax. Similarly, Honsell in [5] encodes the syntax of Dynamic Logic in a first order style. Such encodings allow justification arguments to be given by induction over the syntax. In [9] Reddy presents an OO, Algol like language IA based on Reynold s Idealized Algol[10] and its specification logic. Language IA uses HOAS and its specification logic is higher order but programs can only create objects on the stack, not in the heap. In contrast, the language of AL creates objects in the heap (global store) Our design decision to use HOAS has allowed us to ....
John C. Reynolds. Idealized algol and its specification logic. In Danielle Neel, editor, Tools and Notions for Program Construction, pages 121--161. Cambridge University Press, 1982.
....However, we notice that in the development of the previous section, we only consider a very basic language which did not have procedure calls. Adding procedures and aliasing, the ability of allowing two distinct identifiers to map to the same storage location, naturally complicates matters. 8 In [36], Reynolds gives examples to demonstrate how Hoare triples in themselves are no longer sufficient. For his first example, he hints at complications caused by procedure calls by considering the program x : double(x) whose behaviour depends on the meaning to which the identifier double is assigned. ....
....C does not interfere with E; that is, for all states, execution of C does not affect the value of E. The assertion gv(V ) is interpreted as the fact that variable V will always possess the same value which was last assigned to it. An example of a variable that is not good, given by Reynolds in [36], is the conditional variable if m = 1 then m else n, where m and n are good integer variables: for P , m = 1 n = 2; nC , if m = 1 then m else n) 3 and Q , if m = 1 then m else n) 2; we have fPgCfQg. Finally, the remaining connectives are given the usual interpretations. 3.3 Abadi and ....
[Article contains additional citation context not shown here]
John C. Reynolds. Idealized algol and its specification logic. In Danielle N'eel, editor, Tools and Notions for Program Construction, pages 121-- 161. Cambridge University Press, 1982.
....that this more direct approach is possible. in [3] encodes the syntax of Dynamic Logic in a first order style. Such encodings allow justification arguments to be given by induction over the syntax. In [7] Reddy presents an OO, Algol like language IA based on Reynold s Idealized Algol[8] and its specification logic. Language IA uses HOAS and its specification logic is higher order but programs can only create objects on the stack, not in the heap. In contrast, the language of AL creates objects in the heap (global store) Our design decision to use HOAS has allowed us to ....
John C. Reynolds. Idealized algol and its specification logic. In Danielle Neel, editor, Tools and Notions for Program Construction, pages 121--161. Cambridge University Press, 1982.
....does not give a fully abstract translation from IA to Idealized Algol. Our treatment can be seen as a formalization of the properties intrinsic to new operators of classes. 2. 2 Specifications An ideal framework for specifying classes in IA is the specification logic of Reynolds [52]. Specification logic is a theory within (typed) first order intuitionistic logic (and, hence, its name is somewhat a misnomer) We use the intuitionistic connectives , 8 and 9 . The types include those of Idealized Algol and an additional base type assert for assertions ....
Reynolds, J. C. Idealized Algol and its specification logic. In Tools and Notions for Program Construction, D. Neel, Ed. Cambridge Univ. Press, 1982, pp. 121--161. (Reprinted as Chapter 6 of [43]).
....upon recent advances in the semantics of languages with effects [16, 19, 28, 32, 33] and goes well beyond traditional programming logics, such as Hoare s logic [7] and Dynamic logic [22] by treating a richer language and expressing more properties. It is close in spirit to Specification Logic [49] and to Evaluation Logic [44] The underlying programming language of VTLoE, mk , is based on the call by value lambda calculus extended by the reference primitives mk, set, get. Atoms, references and lambda abstractions are all first class values they can be bound to lambda variables, stored, ....
J.C. Reynolds. Idealized ALGOL and its specification logic. In D. Neel, editor, Tools and Notions for Program Construction, pages 121--161. Cambridge University Press, 1982.
....advances in the semantics of languages with effects [7, 9, 15, 18, 19] and goes well beyond traditional programming logics, such as Hoare s logic [2] and Dynamic logic [10] by treating a richer programming language and more expressive logical language. It is close in spirit to Specification Logic [29] and to Evaluation Logic [27] Proceedings of CATS 96 (Computing: The Australasian Theory Symposium) Melbourne, Australia, January 29 January 30 1996. The underlying programming language of VTLoE, mk , is based on the call by value lambda calculus extended by the reference primitives mk, ....
J.C. Reynolds. Idealized ALGOL and its specification logic. In D. Neel (editor), Tools and Notions for Program Construction, pages 121--161. Cambridge University Press, 1982.
....Full abstraction for this model remains an open problem. In recent years various systems for reasoning about properties of programs written in general programming languages have been proposed, most notably Hoare s logic (Apt, 1981) Dynamic logic (Harel, 1984) Reynolds Specification Logic (Reynolds, 1982), Moggi s metalanguage for computational monads (Moggi, 1991) and Pitt s Evaluation Logic (Pitts, 1990) All are program logics of the exogenous kind, i.e. programs appear in formulas. 2 Hoare s logic is quite weak in the sense that it cannot express termination of programs, nor their ....
....can be used to express, inter alia, the non expansiveness of terms (Tofte, 1990) Other effects can also be represented within the system. These include read write effects (Lucassen, 1987; Lucassen and Gifford, 1988; Jouvelot and Gifford, 1991) and various forms of interference (Reynolds, 1978; Reynolds, 1982). 3 The paper is divided into three parts. I) The first part describes the syntax and operational semantics of our language, and establishes the basic results concerning the corresponding notion of operational equivalence. We also discuss some of the subtleties that arise due to the presence of ....
Reynolds, J. (1982). Idealized ALGOL and its specification logic. In N'eel, D., editor, Tools and Notions for Program Construction, pages 121--161. Cambridge University Press.
....construct inductively defined sets and derive the corresponding induction principles. VTLoE goes well beyond traditional programming logics, such as Hoare s logic [2] and Dynamic logic [9] by treating a richer language and expressing more properties. It is close in spirit to Specification Logic [21] and to Evaluation Logic [20] These logics all incorporate a full first order theory of data, and the ability to express program equivalence, and the ability to assert and nest Hoare like triples (called contextual assertions in VTLoE) In the case of Specification logic, the underlying ....
J.C. Reynolds. Idealized ALGOL and its specification logic. In D. N'eel, editor, Tools and Notions for Program Construction, pages 121--161. Cambridge University Press, 1982.
....in a loop or a conditional statement, we are only interested in the value it evaluates to, true or false. Similarly, in an assignment, we treat evaluation of the 1 Such a strict distinction between expressions and commands is one of the fundamental principles underlying idealised Algol (Reynolds 1982). Thomas Kleymann expression as atomic, merely a value depending on the state space. We are not interested in syntactic properties such as whether one expression is a subterm of another expression. Ignoring the syntax of expressions paves the way towards a reasonable level of abstraction when ....
Reynolds, J. C. (1982), Idealized Algol and its specification logic, in D. Néel, ed., `Tools & Notions for Program Construction', Cambridge University Press.
....quite simply as Oles original model reformulated in the 2 category of reflexive graphs, rather than the 2 category of sets. These functor category models have been used to give a denotational account of specification logic, Reynolds extension of Hoare logic to higher order procedures [Rey82, Ten90, OT93] Specification logic uses a notion of noninterference to avoid the problems of variable aliasing, where procedures may affect each other in unforeseen ways. This property can be hard to check, and with syntactic control of interference [Rey78, Rey89] Reynolds proposes a scheme to ....
J. C. Reynolds. Idealized Algol and its specification logic. In D. N'eel, editor, Tools and Notions for Program Construction, pages 121--161. Cambridge University Press, 1982.
....studied in the articles by Gordon and Smith. Higher order languages present difficult challenges for any style of semantics, be it axiomatic, denotational, or operational. For example, an axiomatic semantics of higher order procedures which is sound, expressive and useable has proved elusive (see Reynolds (1982) and O Hearn and Tennent (1993) Another wellknown example is the difficulty of finding mathematical structures which yield denotational semantics that are both compositional and agree with the observable behaviour of programs. The search for such fully abstract denotational models has been ....
Reynolds, J. C. (1982). Idealized Algol and its specification logic. In D. Neel (Ed.), Tools and Notions for Program Construction, pp. 121--161. Cambridge University Press.
....of constructive mathematics [2, 3] and later applied to the study of purely functional languages [4, 5] VTLoE goes well beyond traditional programming logics, such as Hoare s [1] and Dynamic logic [9] The programming language and logic are richer. It is close in spirit to Specification Logic [27], incorporating a full first order theory of data and the ability to express program equivalence, and to assert and nest Hoare like triples (called contextual assertions in VTLoE) The underlying programming languages are quite different: Specification Logic concerns Algol like programs that are ....
J.C. Reynolds. Idealized ALGOL and its specification logic. In D. N'eel, editor, Tools and Notions for Program Construction,pages 121--161. Cambridge University Press, 1982. This article was processed using the L a T E X macro package with LLNCS style
No context found.
John C. Reynolds. Idealized Algol and its specification logic. In Tools and Notions for Program Construction, 1982.
No context found.
John C. Reynolds. Idealized Algol and its specification logic. In Tools and Notions for Program Construction, 1982.
No context found.
J. C. Reynolds. Idealized Algol and its specification logic. In D. N eel, editor, Tools and Notions for Program Construction, pages 121--161. Cambridge University Press, 1982. (p. 125)
No context found.
Reynolds, J. Idealized Algol and its specification logic. Tools and Notions for Program Construction, 121--161, CUP.
No context found.
Reynolds, J. Idealized Algol and its specification logic. Tools and Notions for Program Construction, 121--161, CPU.
No context found.
J. C. Reynolds. Idealized Algol and its specification logic. Technical Report 1-81, School of Computer and Information Science, Syracuse University, July 1981.
No context found.
John C. Reynolds. Idealized Algol and its specification logic. In D. Neel, editor, Tools and Notions for Program Construction, pp. 121--162. Cambridge Univesity Press, 1982.
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