## A Theory of First-Order Built-in's of Prolog (1992)

Citations: | 7 - 3 self |

### BibTeX

@MISC{Apt92atheory,

author = {Krzysztof R. Apt and Elena Marchiori and Catuscia Palamidessi},

title = {A Theory of First-Order Built-in's of Prolog},

year = {1992}

}

### Years of Citing Articles

### OpenURL

### Abstract

We provide here a framework for studying Prolog programs with various built-in's that include arithmetic operations, and such metalogical relations like var and ground. To this end we propose a new, declarative semantics and prove completeness of the Prolog computation mechanism w.r.t. this semantics. We also show that this semantics is fully abstract in an appropriate sense. Finally, we provide a method for proving termination of Prolog programs with built-in's which uses this semantics. The method is shown to be modular and is illustrated by proving termination of a number of programs including the unify program of Sterling and Shapiro [SS86]. Keywords and Phrases: Prolog programs, built-in's, declarative semantics, termination. 1985 Mathematics Subject Classification: 68Q40, 68T15, CR Categories: F.3.2., F.4.1, H.3.3, I.2.3. Note: This research was done during the second and third authors' stay at Centre for Mathematics and Computer Science, Amsterdam. The work of K.R. Apt was par...

### Citations

1873 |
Foundations of Logic Programming
- Lloyd
- 1987
(Show Context)
Citation Context ...raditional semantics based on first-order logic because var(x) is true whereas some instances of it are not. In presence of nonvar another complication arises: the well-known Lifting Lemma (see Lloyd =-=[Llo87]-=-) needed to prove completeness of the SLD-resolution does not hold --- for a non-variable term t, the goal / nonvar(t) can be refuted whereas its more general version / nonvar(x) cannot. Finally, stud... |

723 | Predicate Logic as a Programming Language
- Kowalski
- 1974
(Show Context)
Citation Context ...e to achieve this goal by simply modifying one of the usually considered declarative semantics. The standard declarative semantics, based on the (ground) Herbrand models due to van Emden and Kowalski =-=[vEK76]-=-, is clearly inadequate to deal with first-order built-in's. Indeed, in this semantics, in a given interpretation, if an atom is true then all its ground instances are. However, for every ground term ... |

628 |
The Art of Prolog
- Sterling, Shapiro
- 1986
(Show Context)
Citation Context ...2 We applied this approach to prove termination of the list program from the introduction, of the typed version of the append program and of both versions of the unify program of Sterling and Shapiro =-=[SS86]-=-. Modularity Theorem 3.14 allowed us to present these proofs in a modular way, by proving termination of various program parts separatly. We believe that the approach to the semantics and termination ... |

421 |
Introduction to logic programming
- Apt
- 1990
(Show Context)
Citation Context ...es P (H) ! nodes P (G) for all non-root nodes H in the LD-tree of P [ fGg, (iii) nodes P (H)snodes P (G) for all prefixes H of G. Proof. (i) By a simple generalization of the Variant Lemma 2.8 of Apt =-=[Apt90]-=- to the class of Prolog programs, an isomorphism between the LD-trees of P [ fGg and P [ fHg can be established. (ii), (iii) Immediate by the definition. 2 We are now in position to prove the desired ... |

208 | Linear ob- jects: Logical processes with built-in inheritance - Andreoli, Pareschi - 1990 |

194 | E.: The Art of Prolog: Advanced Programming Techniques - Sterling, Shapiro - 1986 |

93 |
Predicate Logic as a Computational Formalism
- Clark
- 1980
(Show Context)
Citation Context ...duction of non-ground atoms in the Herbrand interpretations, in order to define the truth value of an atom independently from its ground instances. The non-ground Herbrand semantics proposed by Clark =-=[Cla79]-=- (called C-semantics in [MP89]) is however not adequate, because it is monotonic. Namely, if A(x) is true in an interpretation, then also A(t) is true, for every t, in the same interepretation. In pre... |

71 | A Model-theoretic Reconstruction of the Operational Semantics of Logic Programs - Falaschi, Levi, et al. - 1993 |

61 |
Directions for meta-programming
- Lloyd
- 1988
(Show Context)
Citation Context ...reas ours is to extend the declarative semantics to Prolog programs with built-in's so that one can reason about such programs. In this respect our approach has the same aim as that of Hill and Lloyd =-=[HL88]-=- where all metalogical features of Prolog are represented in a uniform way by means of a representation of the object level in the meta-level, reminiscent of the Godelization process in Peano arithmet... |

46 | Algebraic properties of idempotent substitutions - Palamidessi - 1990 |

33 |
Proving termination in general Prolog programs
- Apt, Pedreschi
- 1991
(Show Context)
Citation Context ... whereas its pure Prolog counterpart obtained by dropping the atom nonvar(Xs) may diverge. As a result the methods developed to reason about termination of pure Prolog programs (see Apt and Pedreschi =-=[AP91]-=- for a short overview) cannot be used here. The aim of this paper is to provide a systematic account of the class of the above mentioned built-in's of Prolog. This class includes the arithmetic relati... |

31 |
Declarative modeling of the operational behaviour of logic languages
- Falaschi, Levi, et al.
- 1989
(Show Context)
Citation Context ...the Herbrand interpretations, in order to define the truth value of an atom independently from its ground instances. The non-ground Herbrand semantics proposed by Clark [Cla79] (called C-semantics in =-=[MP89]-=-) is however not adequate, because it is monotonic. Namely, if A(x) is true in an interpretation, then also A(t) is true, for every t, in the same interepretation. In presence of built-in relations li... |

30 |
A Logical Operational Semantics for Full Prolog. Part II: Built-in Predicates for Database Manipulations
- Borger
(Show Context)
Citation Context ...ilt-in's. We also show how termination proofs can be constructed in a modular way. We are aware of two other approaches to define the meaning of Prolog programs with builtin 's, namely that of Borger =-=[Bor89]-=- based on so-called dynamic algebras, and that of Deransart and Ferrand [DF87] based on an abstract interpreter. Their aim is to provide semantics for the complete Prolog language whereas ours is to e... |

6 |
An operational formal definition of Prolog
- Deransart, Ferrand
- 1987
(Show Context)
Citation Context ...ay. We are aware of two other approaches to define the meaning of Prolog programs with builtin 's, namely that of Borger [Bor89] based on so-called dynamic algebras, and that of Deransart and Ferrand =-=[DF87]-=- based on an abstract interpreter. Their aim is to provide semantics for the complete Prolog language whereas ours is to extend the declarative semantics to Prolog programs with built-in's so that one... |