## Invited Paper: First-order Predicate Logic as a Common Basis for Relational and Functional Programming (at LICS 1987)

**Maarten H. van Emden**

### Abstract

This lecture will report on joint work with K. Yukawa and
M.H.M. Cheng aiming at the amalgamation of relational and functional
programming. The starting point is the thesis that logic programming can be
used to proceed systematically from definitions of relations expressed in logic
to computer programs expressed in Prolog.

Our goal is to free logic programming of some of its limitations -- to allow

- functions to be defined as functions;
- functional expressions to be evaluated; and
- functions to be considered as "first-class citizens" by the use of lambda notation.

Our methods of proceeding require that

- Expression evaluation be an inference about an equality relation, using the same resolution as in Prolog;
- The definition of equality relation be a first-order theory consisting of equality axioms and equations; and
- Lambda notation have the status of syntactic sugar for first-order equations.

### BibTeX

@InProceedings{vanEmden-FirstorderPredicate, author = {Maarten H. van Emden}, title = {First-order Predicate Logic as a Common Basis for Relational and Functional Programming}, booktitle = {Proceedings of the Second Annual IEEE Symposium on Logic in Computer Science (LICS 1987)}, year = {1987}, month = {June}, pages = {179--179}, location = {Ithaca, NY, USA}, note = {Invited Talk}, publisher = {IEEE Computer Society Press} }