A Denotational Semantics for First-Order Logic
In Apt and Bezem [AB99] we provided a computational interpretation of first-order formulas over arbitrary interpretations. Here we complement this work by introducing a denotational semantics for first-order logic. Additionally, by allowing an assignment of a non-ground term to a variable we introduce in this framework logical variables.
The semantics combines a number of well-known ideas from the areas of semantics of imperative programming languages and logic programming. In the resulting computational view conjunction corresponds to sequential composition, disjunction to “don’t know” nondeterminism, existential quantification to declaration of a local variable, and negation to the “negation as finite failure” rule. The soundness result shows correctness of the semantics with respect to the notion of truth. The proof resembles in some aspects the proof of the soundness of the SLDNF-resolution.
KeywordsInduction Hypothesis Logic Program Logic Programming Operational Semantic Atomic Formula
Unable to display preview. Download preview PDF.
- AB99.K. R. Apt and M. A. Bezem. Formulas as programs. In K.R. Apt, V.W. Marek, M. Truszczyński, and D.S. Warren, editors, The Logic Programming Paradigm: A 25 Year Perspective, pages 75–107, 1999. Available via http://xxx.lanl.gov/archive/cs/.
- Cla78.K. L. Clark. Negation as failure. In H. Gallaire and J. Minker, editors, Logic and Databases, pages 293–322. Plenum Press, New York, 1978.Google Scholar
- Cla79.E. M. Clarke. Programming language constructs for which it is impossible to obtain good Hoare axiom systems. J. of the ACM, 26(1):129–147, January 1979.Google Scholar
- DVS+88._M. Dincbas, P. Van Hentenryck, H. Simonis, A. Aggoun, T. Graf, and F. Berthier. The Constraint Logic Programming Language CHIP. In FGCS-88: Proceedings International Conference on Fifth Generation Computer Systems, pages 693–702, Tokyo, December 1988. ICOT.Google Scholar
- HL94.P. M. Hill and J. W. Lloyd. The Gödel Programming Language. The MIT Press, 1994.Google Scholar
- JMSY92.J. Jaffar, S. Michayov, P. Stuckey, and R. Yap. The CLP(R) language and system. ACM Transactions on Programming Languages and Systems, 14(3):339–395, July 1992.Google Scholar
- Kow74.R.A. Kowalski. Predicate logic as a programming language. In Proceedings IFIP’74, pages 569–574. North-Holland, 1974.Google Scholar
- Mah88.M.J. Maher. Complete axiomatizations of the algebras of finite, rational and infinite trees. In Proceedings of the Fifth Annual Symposium on Logic in Computer Science, pages 348–357. The MIT Press, 1988.Google Scholar
- SS71.D. S. Scott and C. Strachey. Towards a mathematical semantics for computer languages. Technical Report PRG-6, Programming Research Group, University of Oxford, 1971.Google Scholar
- Van89.P. Van Hentenryck. Constraint Satisfaction in Logic Programming. Logic Programming Series. MIT Press, Cambridge, MA, 1989.Google Scholar
- vE98.J. van Eijck. Programming with dynamic predicate logic. Technical Report INS-R9810, CWI, Amsterdam, 1998.Google Scholar