| Jones, N.D. and A. Mycroft (1984). Stepwise development of operational and denotational semantics for Prolog. In: Proceedings of the Symposium on Logic Programming. Atlantic City. pp. 281-288. |
....semantics for Prolog with the intention of providing a semantic basis for program analysis. The semantics of Prolog is usually specified by encoding its (sequential) control within different frameworks such as dynamic algebras [6] deterministic transition systems [12] or denotational semantics [17, 3, 13]. However, semantics based) analyses of Prolog are usually achieved by abstracting the more simple but less precise semantics of pure logic programs. Unfortunately, it is not straightforward to encode Prolog control directly in terms of pure logic programs. Instead, we propose to model Prolog ....
N. D. Jones and A. Mycroft. Stepwise Development of Operational and Denotational Semantics for Prolog. In Sten- Ake Tarnlund, editor, Proc. Second Int'l Conf. on Logic Programming, pages 281--288, 1984.
....of prede ned functions needs to be added. Let us compare our work with some other related approaches. Launchbury [16] Sestoft [21] and Sansom and Peyton Jones [19] gave similar descriptions for purely lazy functional languages where logic programming features and concurrency are not covered. [15] and [8] contain operational and denotational descriptions of Prolog with the main emphasis on covering the backtracking strategy and the cut operator. Although the modeling of backtracking by the use of a goal sequence has some similarities with our description, laziness, sharing, and ....
N.D. Jones and A. Mycroft. Stepwise Development of Operational and Denotational Semantics for Prolog. In S. Tarnlund, editor, Proc. of Second Int'l Conf. on Logic Programming, pages 281-288, 1984.
....Otherwise, we could only compute the cost of each single derivation in the search tree, since some computation steps may be shared by more than one derivation. Thus, the definition of a deterministic version of the small step semantics becomes essential (see [2] As for logic programming, [16] and [8] contain operational and denotational descriptions of Prolog with the main emphasis on specifying the backtracking strategy and the cut operator. However, laziness and sharing are not covered. The same holds for Borger s descriptions of Prolog s operational semantics (e.g. 6,7] which ....
N.D. Jones and A. Mycroft. Stepwise Development of Operational and Denotational Semantics for Prolog. In S. Tarnlund, editor, Proc. of the 2nd Int'l Conf. on Logic Programming (ICLP'84), pages 281--288, 1984.
....these language features. Nevertheless, we want to compare our work with some other related approaches. Launchbury [17] Sestoft [22] and Sansom and Peyton Jones [20] gave similar descriptions for purely lazy functional languages where logic programming features and concurrency are not covered. [16] and [9] contain operational and denotational descriptions of Prolog with the main emphasis on covering the backtracking strategy and the cut operator. Although the modeling of backtracking by the use of a goal sequence has some similarities with our description, laziness, sharing, and ....
N.D. Jones and A. Mycroft. Stepwise Development of Operational and Denotational Semantics for Prolog. In S. Tarnlund, editor, Proc. of ICLP'84, pages 281--288, 1984.
....strategy used in real implementations, and [15] does not model search strategies and concurrency (but allows partial applications in case patterns) Sestoft [23] proposes similar descriptions for purely lazy functional languages where logic programming features and concurrency are not covered. [17] and [7] contain operational and denotational descriptions of Prolog with the main emphasis on covering the backtracking strategy and the cut operator. Although our modeling of search strategies by the use of goal sequences has some similarities with their description, laziness, sharing, and ....
N.D. Jones and A. Mycroft. Stepwise Development of Operational and Denotational Semantics for Prolog. In S. Tarnlund, editor, Proc. of 2nd Int'l Conf. on Logic Programming (ICLP'84), pages 281--288, 1984.
....efficiency reasons, a depth first left to right computation strategy. As a consequence, the declarative semantics of logic programming cannot be adopted as the abstract logical semantics for Prolog programs. For this reason, usually the semantics of Prolog is defined using non logical frameworks [4 7,9,10,17]. When dealing with computational issues, one has to abandon classical 2 valued logic and has to move to multiple valued logic. A first attempt is to adopt a 3 valued logic where the third truth value (undefined) is introduced to model non terminating computations (see, e.g. 1,2,14,16,19] ....
N.D. Jones and A. Mycroft. Stepwise Development of Operational and Denotational Semantics for Prolog. In Sten- Ake Tarnlund, editor, Proc. Second Int'l Conf. on Logic Programming, 281--288, 1984.
....iff 8 1. there exists exactly one clause whose head is unifiable with A via an mgu ; 2. H J) is a variant of H J. They proved that both such restrictive unfold operations preserve the sequence of answer substitution semantics (a semantics for Prolog programs, defined in [JM84, Bau89] which takes into account also the order of the computed answer substitutions, together with their multiplicity) This guarantees that if the initial program is left terminating, then the resulting program is left terminating as well. Also partial evaluation systems for real Prolog ....
....as: C3) either cl defines an old atom, or the leftmost atom of the folded clause is the result of a previous unfolding. 1 They proved that this system preserves a very strong semantics, namely, the sequence of answer substitutions semantics (a semantics for Prolog programs, defined in [JM84, Bau89] This guarantees also that if the initial program is left terminating, then the resulting program is left terminating as well. While this system has rather restrictive applicability conditions (e.g. the transformation of Example 3.8 is not possible within it) we believe that in order to ....
N. Jones and A. Mycroft. Stepwise Development of Operational and Denotational Semantics for Prolog. In Sten- Ake Tarnlund, editor, Proc. Second Int'l Conf. on Logic Programming, pages 281--288, 1984.
....since we want to allow derivations to be equivalent up to variable renaming. 7 The derivation containing just one resolution step is an exception that has to be treated specially in every kind of derivation. 15 [ 1] 1] 2,3] 1] 2,3] 4,5] 1] 7,8] 1] 7,8] [10,11]] Figure 2.7: The six derivations of the kind induced by TrivInt. The numbers are machine states, as given in figure 2.5. We introduced TrivInt by showing the sequence of states passed through during execution because machine states are usually understood only with reference to execution; the ....
....are commonly used to specify the semantics of pure Prolog, but not of full Prolog, because of the so called non logical features of the language. We now argue that these features do not present a problem. First of all, abstract interpreters presented for pure Prolog (such as those given in [4, 10, 3]) already have states that we would call derivations; a new choicepoint is pushed each time a new goal is resolved, and each choicepoint corresponds to a resolution step, so this list of choicepoints is a derivation. The first language extension we consider is the cut operator. The cut prunes ....
N. D. Jones and A. Mycroft. Stepwise Development of Operational and Denotational Semantics for Prolog. In Int. Symp. on Logic Programming 2/84, pages 289--298, 1984.
....continuations in logic programming is the use of Continuation Passing Style (CPS) ST89, TB90, Ued87] programming to define Prolog translations into imperative languages [MH84] Many authors have studied the problem of modelling the control mechanism of Prolog in a formal way. Jones and Mycroft [JM84] gave an operational characterization of Prolog as a deterministic language. Their approach is based on the SLD procedure, and it models the cut control operator, too. Arbab and Berry [AB87] provided both an operational and a denotational semantics for Prolog; they considered both the cut , ....
....the SLD procedure, and it models the cut control operator, too. Arbab and Berry [AB87] provided both an operational and a denotational semantics for Prolog; they considered both the cut , the database and some extra logical facilities. Their approach is substantially different from the one in [JM84] since it is not based on the SLD procedure. The definition of the operational semantics is an interpretive one, defined by means of a Vienna Definition Language, and it is quite near to the way Prolog interpreters (written in Prolog) proceed. In particular, the backtracking mechanism is made ....
N. D. Jones and A. Mycroft. Stepwise development of operational and denotational semantics for Prolog. In Proc. International Symposium on Logic Programming, 1984.
....of the sequence of computed answers. This for instance is not guaranteed by the partial deduction framework of [60] which only preserves the computed answers but not their sequence. However, the semantics of the if then else remains reasonably simple and a straightforward denotational semantics [38], in the style of [4] and [79] can be given to ITE Prolog. For example, suppose that we associate to each ITE Prologliteral L a denotation [jL]j P in the program P , which is a possibly infinite sequence of computed answer substitutions with an optional element at the end of (a finite ....
N. D. Jones and A. Mycroft. Stepwise development of operational and denotational semantics for Prolog. In Proceedings of the 1984 International Symposium on Logic Programming, pages 289--298, Atlantic City, New Jersey, 1984. IEEE Computer Society Press. 36
....term inspection facilities and program manipulation built ins, more work needs to be done to clarify the situation. See also the next section. 11.12 Bibliographic Remarks The problem of formalizing the meaning of cut has been studied in a number of publications starting from Jones and Mycroft [JM84] where various semantics for Prolog with cut were defined. This work was pursued by Arbab and Berry [AB87] Debray and Mishra [DM88] and, more recently, by Lilly and Bryant [LB92] The approach presented here is due to Apt and Teusink [AT95] The WIN program appeared first in Gelfond and ....
N. D. Jones and A. Mycroft. Stepwise development of operational and denotational semantics for Prolog. In Sten- Ake Tarnlund, editor, Proceedings of the Second International Conference on Logic Programming, pages 281--288, Uppsala, 1984.
....view of Prolog derivation stops at the level of resolution [Llo87] For the purposes of verification within our transformational approach to annotating full Prolog, we needed a more detailed notion of a derivation. So we came up with a novel continuationbased semantics of Prolog execution (cf. [JM84], Sch86] NF89] And92] BR93] Pet95] Some highlights of our approach: a novel linear representation of the Prolog tree traversal, enabling small and readable specifications closer to the spirit of logic programming: by treating if then else and disjunction simply and compatibly ....
.... logic, but at a price of certain limitations; the results are not extended to a full description of depth first evaluation [Elb99] For example, the ubiquitous depthfirst evaluation employed in actual Prolog systems is modelled by the continuations in the denotational semantic approaches of [JM84] and [NF89] The language constructs covered include the cut operator, but more advanced control constructs like catch and throw or database predicates are not treated. Among the first to specify backtracking and cut as an elegant use of continuations was also D. Schmidt in his book [Sch86] ....
N. D. Jones and A. Mycroft. Stepwise development of operational and denotational semantics for Prolog. In ISLP'84, pages 281--288, Atlantic City, 1984.
....features and whose search strategy is typically incomplete. Many authors therefore abandon the classical, logical semantics and propose other semantics. The usual depth first search employed in actual Prolog systems is modelled by the denotational semantics approaches of Jones and Mycroft [12], Nicholson and Foo [18] Debray and Mishra [8] de Vink [7] or Baudinet [4] Among the first to specify backtracking and cut as an elegant use of continuations was also D. Schmidt [21] The language constructs covered in these approaches include the cut operator, but further advanced control ....
.... ) Parent( X) Parent(G) C (#) #Has# # C # #Has# Parent(G) if su#x(Has ,G) Parent(G) C (#) #Hasnt# # Return C # #Hasnt# if su#x(Hasnt ,G) Parent(G) # Return C (#) #X# Return # Return C (#) #X# Pending(G) Return # G Observe that we do not need a special cut marker [12,8,4,7] or cut parent [5] because in our approach the cut parent is literally the parent of the cut (starting the current goal) and the parent of any goal can in our approach be found by the simple syntactic criterion from above, the su#x criterion. Incidentally, note that, due to the intricacies of ....
[Article contains additional citation context not shown here]
N. D. Jones and A. Mycroft. Stepwise development of operational and denotational semantics for Prolog. In SLP'84: 1st Int. Symposium on Logic Programming, pages 281--288, Atlantic City, 1984.
....In the following, we briefly describe this semantics; more detailed descriptions can be found in [7] and [25] Pettorossi and Proietti [26, 28] also proposed an operational semantics for Prolog, but it does not handle the cut. The direct style semantics proposed by Jones and Mycroft [17] as well as the one of Debray and Mishra [12] do handle the cut. But we believe that the semantics of Nicholson and Foo is more elegant because the search stack and the resolvent are not handled by explicit datastructures. This leaves open all kinds of actual representations of the search stack ....
N. D. Jones and A. Mycroft. Stepwise development of operational and denotational semantics for Prolog. In Proc. of the Int. Symp. on Logic Programming. IEEE, Computer Society Press, 1984. 126
....semantics for Prolog with the intention of providing a semantic basis for program analysis. The semantics of Prolog is usually specified by encoding its (sequential) control within different frameworks such as dynamic algebras [8] deterministic transition systems [14] or denotational semantics [3, 15, 20]. However, semantics based) analyses of Prolog are usually achieved by abstracting the more simple but less precise semantics of pure logic programs. This can lead to problems as illustrated by the following example. Example 1.1 Consider the parallel execution of the following Prolog program P ....
N. D. Jones and A. Mycroft. Stepwise Development of Operational and Denotational Semantics for Prolog. In Sten- Ake Tarnlund, editor, Proc. Second Int'l Conf. on Logic Programming, pages 281--288, 1984.
....semantics for Prolog with cut [dBdV89, Bor90, Bau92] including Billaud in his original paper [Bil90] Some of these approaches have proven equivalence with an operational semantics. These papers were based on earlier work in operational and denotational semantics of Prolog, including [JM84, DF87, AB87, DM88, NF89] This research essentially views a Prolog program as a function from goals to sequences of answer substitutions. We took a different view in our work [And90, And91] giving a proof theoretic characterization of the success and failure of Prolog goals not involving ....
Neil D. Jones and Alan Mycroft. Stepwise development of operational and denotational semantics for Prolog. In Proceedings of the 1984 International Symposium on Logic Programming, February 1984.
....we sometimes wish to restrict our attention to a horizontal slice of the input output relation of a predicate. This is given by the notion of input restriction: ################################ This is a straightforward abstraction of denotational semantics that have been proposed for Prolog [9, 12] 4 Definition: Let R be the input output relation for an n ary predicate (clause, literal) in a program, and let T be a set of n tuples of terms. The input restriction of R to T, written s T (R) is the set of pairs langle S I , S O rangle in R such that S I is in T. # Implementations ....
N. D. Jones and A. Mycroft, Stepwise Development of Operational and Denotational Semantics for PROLOG, in Proc. 1984 Int. Symposium on Logic Programming, IEEE Computer Society, Atlantic City, New Jersey, Feb. 1984, 289-298.
....operational semantics for GP. The primary role of this semantics is to introduce our ways of handling control flow before we need to include store manipulations in the semantics. The portions of this semantics that deal with predicate calls and backtracking (in ways that are inspired by Jones and Mycroft [1984]; Debray and Mishra [1988] will recur without substantial changes in the semantics for P and RP. Though this semantics is formally the ultimate definition of what GP programs mean, we need to address the question of how it relates to our original definition of GP as a subset of Prolog. The ....
....below behaves the same as the Prolog program it would be in the Prolog like syntax for GP we introduced in Section 2.1. It would be straight forward, though tedious, to substantiate this claim by proving this equivalence when the Prolog program is to be interpreted according to interpreter V in Jones and Mycroft [1984] or the operational semantics with cuts in Debray and Mishra [1988] The structures of the semantics are related enough that a correspondence relation between the states of either could be formulated. One could then show that each step of the present semantics is simulated by one or more steps of ....
[Article contains additional citation context not shown here]
Jones, N. D. and Mycroft, A. [1984]. Stepwise development of operational and denotational semantics for Prolog. In International Symposium on Logic Programming (ISLP '84, Atlantic City, NJ, USA), pages 281--288. IEEE Computer Society, Los Alamitos, CA, USA, ISBN 0-8186-0522-7.
....C will be dropped from the name of the i state. If a variable v maps to a pair d, V in an i state A, then d is said to be the instantiation of v in A, written ################################ This is a straightforward abstraction of denotational semantics of such languages, e.g. see [8, 14]. 7 inst(A(v) while V is its dependency set, written deps(A(v) The instantiation component d acts as a constraint on the terms a variable can be instantiated to at runtime, and the dependency set V acts as a further constraint by allowing us to consider only those terms in d that depend only ....
N. D. Jones and A. Mycroft, Stepwise Development of Operational and Denotational Semantics for PROLOG, in Proc. 1984 Int. Symposium on Logic Programming, IEEE Computer Society, Atlantic City, New Jersey, Feb. 1984, 289-298.
....interpreter state to the denotational semantics (Section 4) For the sake of continuity, the proofs of theorems have been relegated to the appendices. Related work on the denotational treatment of the semantics of logic programming languages includes that of Frandsen [5, 6] and Jones and Mycroft [7]. Frandsen treats pure programs and ignores 2 the sequential nature of Prolog s computation, which makes it difficult to use his semantics to explain behavioral aspects of programs. There are a number of differences between our work and that of Jones and Mycroft. Our semantic definitions are ....
N. D. Jones and A. Mycroft, Stepwise Development of Operational and Denotational Semantics for PROLOG, in Proc. 1984 Int. Symposium on Logic Programming, IEEE Computer Society, Atlantic City, New Jersey, Feb. 1984, 289-298.
....Nets of the Joincalculus can express ideas from Functional, Concurrent and Object Oriented languages within a single framework in a manner which allows constructs from these disparate languages to interact. One can also see this paper as an delayed continuation of Jones and Mycroft s [2] work on semantics of Prolog. In that paper, denotational and smallstep operational semantics for Prolog were given; these are arguably a functional language implementation and a hardware implementable machine. Here we give a semantics (or implementation if one wishes to consider it that way ) of ....
Jones, N.D. and Mycroft, A. Stepwise development of operational and denotational semantics for Prolog. Proc. IEEE intl. symp. on Logic Programming, Atlantic City, 1984.
No context found.
Jones, N.D. and A. Mycroft (1984). Stepwise development of operational and denotational semantics for Prolog. In: Proceedings of the Symposium on Logic Programming. Atlantic City. pp. 281-288.
No context found.
N. D. Jones and A. Mycroft. Stepwise development of operational and denotational semantics for Prolog. In Proceedings of the 1984.
No context found.
N. D. Jones and A. Mycroft. Stepwise Development of Operational and Denotational Semantics for Prolog. In Sten- Ake Tarnlund, editor, Proc. Second Int'l Conf. on Logic Programming, pages 281--288, 1984.
No context found.
N.D. Jones and A. Mycroft. Stepwise Development of Operational and Denotational Semantics for Prolog. In S. Tarnlund, editor, Proc. of ICLP'84, pages 281-288, 1984.
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