Skip to main content

Logic Programming in the 1970s

  • Conference paper
Logic Programming and Nonmonotonic Reasoning (LPNMR 2013)

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 8148))

Abstract

Logic programming emerged in the 1970s from debates concerning procedural versus declarative representations of knowledge in artificial intelligence. In those days, declarative representations were associated mainly with bottom-up proof procedures, such as hyper-resolution. The development of logic programming showed that procedural representations could be obtained by applying top-down proof procedures, such as linear resolution, to declarative representations in logical form.

In recent years, logic programming has become more purely declarative, with the development of answer set programming, tabling and the revival of datalog. These recent developments invite comparison with earlier attempts to reconcile procedural and declarative representations of knowledge, and raise the question whether anything has been lost.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Apt, K.R., van Emden, M.: Contributions to the Theory of Declarative Knowledge. JACM 29(3), 841–862 (1982)

    Article  MATH  Google Scholar 

  2. Clark, K.L.: Negation by Failure. In: Gallaire, H., Minker, J. (eds.) Logic and Databases, pp. 293–322. Plenum Press (1978)

    Google Scholar 

  3. Clark, K.L., Tärnlund, S.-A.: A First-order Theory of Data and Programs. In: Proceedings of the IFIP Congress 1977, pp. 939–944 (1977)

    Google Scholar 

  4. Cohen, J.: A View of the Origins and Development of Prolog. CACM 31, 26–36 (1988)

    Article  Google Scholar 

  5. Colmerauer, A.: Les Systèmes Q ou un Formalisme pour Analyser et Synthétiser des Phrases sur Ordinateur. Mimeo, Montréal (1969)

    Google Scholar 

  6. Colmerauer, A., Kanoui, H., Pasero, R., Roussel, P.: Un Systeme de Communication Homme-Machine en Francais. Research report, Groupe d’Intelligence Artificielle, Universite d’Aix-Marseille II, Luminy (1973)

    Google Scholar 

  7. Colmerauer, A., Roussel, P.: The Birth of Prolog. In: Bergin, T.J., Gibson, R.G. (eds.) History of Programming Languages, pp. 331–367. ACM Press and Addison Wesley (1996)

    Google Scholar 

  8. Chen, W., Warren, D.: Tabled Evaluation with Delaying for General Logic Programs. JACM 43, 20–74 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  9. Davis, M.: The Mathematics of Non-monotonic Reasoning. Artificial Intelligence 13(1), 73–80 (1980)

    Article  MathSciNet  MATH  Google Scholar 

  10. Elcock, E.W.: Absys: The First Logic Programming Language—a Retrospective and a Commentary. Journal of Logic Programming 9(1), 1–17 (1990)

    Article  MathSciNet  MATH  Google Scholar 

  11. van Emden, M.: The Early Days of Logic Programming: A Personal Perspective. The Association of Logic Programming Newsletter 19(3) (2006), http://www.cs.kuleuven.ac.be/~dtai/projects/ALP/newsletter/aug06/

  12. van Emden, M., Kowalski, R.A.: The Semantics of Predicate Logic as a Programming Language. JACM 23(4), 733–742 (1976)

    Article  MATH  Google Scholar 

  13. Gallaire, H., Minker, J.: Logic and Data Bases. Plenum Press, New York (1978)

    Book  MATH  Google Scholar 

  14. Green, C.: Application of Theorem Proving to Problem Solving. In: Walker, D.E., Norton, L.M. (eds.) Proceedings of the 1st International Joint Conference on Artificial Intelligence, pp. 219–239. Morgan Kaufmann (1969)

    Google Scholar 

  15. Hayes, P.J.: Computation and Deduction. In: Proceedings of the Second MFCS Symposium, Czechoslovak Academy of Sciences, pp. 105–118 (1973)

    Google Scholar 

  16. Hewitt, C.: Procedural Embedding of Knowledge In Planner. In: Proceedings of the 2nd International Joint Conference on Artificial Intelligence. Morgan Kaufmann (1971)

    Google Scholar 

  17. Hewitt, C.: Middle History of Logic Programming: Resolution, Planner, Edinburgh LCF, Prolog, Simula, and the Japanese Fifth Generation Project. arXiv preprint arXiv:0904.3036 (2009)

    Google Scholar 

  18. Hill, R.: LUSH Resolution and its Completeness. DCL Memo 78. School of Artificial Intelligence, University of Edinburgh (1974)

    Google Scholar 

  19. Huang, S.S., Green, T.J., Loo, B.T.: Datalog and Emerging Applications: an Interactive Tutorial. In: Proceedings of the 2011 ACM SIGMOD International Conference on Management of Data, pp. 1213–1216 (2011)

    Google Scholar 

  20. Kowalski, R.A.: The Predicate Calculus as a Programming Language (abstract). In: Procedings of the First MFCS Symposium, Jablonna, Poland (1972)

    Google Scholar 

  21. Kowalski, R.A.: Predicate Logic as a Programming Language. DCL Memo 70, School of Artificial Intelligence, Univ. of Edinburgh (1973); Proceedings of IFIP, pp. 569–574. North-Holland, Amsterdam (1974)

    Google Scholar 

  22. Kowalski, R.A.: Algorithm = Logic+ Control. CACM 22(7), 424–436 (1979)

    Article  MATH  Google Scholar 

  23. Kowalski, R.A.: The Early History of Logic Programming. CACM 31, 38–43 (1988)

    Article  Google Scholar 

  24. Kowalski, R.A., Kuehner, D.: Linear Resolution with Selection Function. Artificial Intelligence Journal 2, 227–260 (1971)

    Article  MathSciNet  MATH  Google Scholar 

  25. Kuehner, D.: Bi-directional Search with Horn Clauses. Edinburgh University (1969)

    Google Scholar 

  26. Loveland, D.W.: A Linear Format for Resolution. In: Symposium on Automatic Demonstration, pp. 147–162. Springer, Heidelberg (1970)

    Chapter  Google Scholar 

  27. Loveland, D.W.: A Unifying View of Some Linear Herbrand Procedures. JACM 19(2), 366–384 (1972)

    Article  MathSciNet  MATH  Google Scholar 

  28. Luckham, D.: Refinement Theorems in Resolution Theory. In: Symposium on Automatic Demonstration, pp. 163–190. Springer, Heidelberg (1970)

    Chapter  Google Scholar 

  29. Nicolas, J.M., Gallaire, H.: Database: Theory vs. Interpretation. In: Gallaire, H., Minker, J. (eds.) Logic and Databases. Plenum, New York (1978)

    Google Scholar 

  30. Reiter, R.: Two Results on Ordering for Resolution with Merging and Linear Format. JACM 18(4), 630–646 (1971)

    Article  MATH  Google Scholar 

  31. Robinson, J.A.: Machine-Oriented Logic Based on the Resolution Principle. JACM 12(1), 23–41 (1965)

    Article  MATH  Google Scholar 

  32. Robinson, J.: Automatic Deduction with Hyper-resolution. International J. Computer Math. 1(3), 227–234 (1965)

    MATH  Google Scholar 

  33. Sagonas, K., Swift, T., Warren, D.S.: XSB as an Efficient Deductive Database Engine. In: Proceedings of the ACM SIGMOD International Conference on the Management of Data, pp. 442–453 (1994)

    Google Scholar 

  34. Tamaki, H., Sato, T.: OLD Resolution with Tabulation. In: Shapiro, E. (ed.) ICLP 1986. LNCS, vol. 225, pp. 84–98. Springer, Heidelberg (1986)

    Chapter  Google Scholar 

  35. Scott, D.: Outline of a Mathematical Theory of Computation. In: Proc. of the Fourth Annual Princeton Conference on Information Sciences and Systems, pp. 169–176 (1970)

    Google Scholar 

  36. Siekmann, J., Woods, J.: History of Computational Logic in the Twentieth Century. Elsevier (to appear)

    Google Scholar 

  37. Tekle, K.T., Liu, Y.A.: More Efficient Datalog Queries: Subsumptive Tabling beats Magic Sets. In: Proceedings of the 2011 ACM SIGMOD International Conference on Management of Data, pp. 661–672 (2011)

    Google Scholar 

  38. Winograd, T.: Procedures as a Representation for Data in a Computer Program for Under-standing Natural Language. MIT AI TR-235 (1971) Also: Understanding Natural Language. Academic Press, New York (1972)

    Google Scholar 

  39. Zamov, N.K., Sharonov, V.I.: On a Class of Strategies for the Resolution Method. Zapiski Nauchnykh Seminarov POMI 16, 54–64 (1969)

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kowalski, R. (2013). Logic Programming in the 1970s. In: Cabalar, P., Son, T.C. (eds) Logic Programming and Nonmonotonic Reasoning. LPNMR 2013. Lecture Notes in Computer Science(), vol 8148. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-40564-8_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-40564-8_2

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-40563-1

  • Online ISBN: 978-3-642-40564-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics