Logic programs and many-valued logic

A fuller version of this paper can be obtained as a report from the address below
  • Alan Mycroft
Contibuted Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 166)


We claim that the well-known equivalence of declarative and procedural interpretations for Horn clauses (predicate logic or Prolog programs) has been unjustifiably used when discussing computation. The reason for this is that the Apt, van Emden and Kowalski theory is based on a 2-valued logic {true, false} whereas computation requires at least a 3-valued logic {true, false, "still computing"}. We introduce such logics and relate the results obtained to the traditional ones. This gives a characterization of under-defined clauses which naturally correspond to looping programs. Moreover, it further supports the view that strong correctness (including termination) should be considered, rather than weak correctness (eg 2-valued logic) together with a separate analysis of termination.


Logic Program Logic Programming Predicate Logic Horn Clause Denotational Semantic 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Apt, K.R. and van Emden, M.H. "Contributions to the theory of logic programming" JACM, Vol. 29, No. 3, July 1982.Google Scholar
  2. [2]
    Clark, K.L. "Negation as failure" In "Logic and Data Bases", H. Gallaire and J. Minker (eds), 1978.Google Scholar
  3. [3]
    van Emden, M.H. and Kowalski, R.A. "The semantics of predicate logic as a programming language", JACM Vol. 23, No. 3, Oct. 1976.Google Scholar
  4. [4]
    Gordon, M.J., Milner, R. and Wadsworth, C.P. "Edinburgh LCF" Springer-Verlag "Lecture Notes in Computer Science", Vol. 78, 1979.Google Scholar
  5. [5]
    Jones, N.D. and Mycroft, A. "Stepwise development of operational and denotational semantics of Prolog" DIKU report, Copenhagen University 1983, also submitted to "Science of Computer Programming".Google Scholar
  6. [6]
    Kowalski, R.A. "Predicate logic as a programming language" In "Information processing 74", J. Rosenfeld (ed.), 1974.Google Scholar
  7. [7]
    Lassez, J.L. and Maher, M.J. "Optimal fixpoints of logic programs" To appear in TCS, also presented at FST, Bangalore 1983.Google Scholar
  8. [8]
    Lassez, J.L. and Maher, M.J. "Closures and fairness in the semantics of predicate logic" To appear in TCS, also internal report Melbourne University, Australia 1983.Google Scholar
  9. [9]
    Plotkin, G.D. "LCF considered as a programming language" TCS Vol. 5, 1976.Google Scholar
  10. [10]
    Plotkin, G.D. "A powerdomain construction", SIAM J. Comput., Vol. 5, 1976.Google Scholar
  11. [11]
    Robinson, J.A. "A machine-oriented logic based on the resolution principle", JACM Vol. 12, No. 1, Jan. 1965.Google Scholar
  12. [12]
    Robinson, J.A. and Sibert, E.E. "LOGLISP — an alternative to PROLOG" Technical Report 7-80, School of Comp. and Info. Sci., Syracuse University 1980.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1984

Authors and Affiliations

  • Alan Mycroft
    • 1
  1. 1.Institutionen för InformationsbehandlingChalmers Tekniska HögskolaGöteborgSweden

Personalised recommendations