Skip to main content

The Logic Programming Paradigm

  • Chapter
  • First Online:
Programming Languages: Principles and Paradigms

Abstract

In this chapter we analyse the other paradigm which, together with functional programming, supports declarative programming. The logic programming paradigm includes both theoretical and fully implemented languages, of which the best known is surely PROLOG. Even if there are big differences of a pragmatic and, for some, a theoretical nature between these languages, they all share the idea of interpreting computation as logical deduction. In this chapter, we will therefore examine these concepts while trying to limit the theoretical part. We also adopt the approach that has characterised the rest of the text while examining this paradigm. We do not mean therefore to teach programming in PROLOG, even if we present various examples of real programs, but we do intend to provide enough basis for understanding and, in a short time, mastering this and other logic programming languages.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 34.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 49.95
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.

References

  1. K. Apt. From Logic Programming to Prolog. Prentice Hall, New York, 1997.

    Google Scholar 

  2. S. Ceri, G. Gottlob, and L. Tanca. Logic Programming and Databases. Springer, Berlin, 1989.

    Google Scholar 

  3. K. L. Clark. Predicate logic as a computational formalism. Technical Report Res. Rep. DOC 79/59, Imperial College, Dpt. of Computing, London, 1979.

    Google Scholar 

  4. H. C. Coelho and J. C. Cotta. Prolog by Example. Springer, Berlin, 1988.

    MATH  Google Scholar 

  5. E. Eder. Properties of substitutions and unifications. Journal of Symbolic Computation, 1:31–46, 1985.

    Article  MATH  MathSciNet  Google Scholar 

  6. J. Herbrand. Logical Writings. Reidel, Dordrecht, 1971. Edited by W.D. Goldfarb.

    MATH  Google Scholar 

  7. R. A. Kowalski. Predicate logic as a programming language. Information Processing, 74:569–574, 1974.

    Google Scholar 

  8. J. W. Lloyd. Foundations of Logic Programming, 2nd edition. Springer, Berlin, 1987.

    MATH  Google Scholar 

  9. K. Marriott and P. Stuckey. Programming with Constraints. MIT Press, Cambridge, 1998.

    MATH  Google Scholar 

  10. A. Martelli and U. Montanari. An efficient unification algorithm. ACM Transactions on Programming Languages and Systems, 4:258–282, 1982.

    Article  MATH  Google Scholar 

  11. J. A. Robinson. A machine-oriented logic based on the resolution principle. Journal of the ACM, 12(1):23–41, 1965.

    Article  MATH  Google Scholar 

  12. L. Sterling and E. Shapiro. The Art of Prolog. MIT Press, Cambridge, 1986.

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Maurizio Gabbrielli .

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag London

About this chapter

Cite this chapter

Gabbrielli, M., Martini, S. (2010). The Logic Programming Paradigm. In: Programming Languages: Principles and Paradigms. Undergraduate Topics in Computer Science. Springer, London. https://doi.org/10.1007/978-1-84882-914-5_12

Download citation

  • DOI: https://doi.org/10.1007/978-1-84882-914-5_12

  • Published:

  • Publisher Name: Springer, London

  • Print ISBN: 978-1-84882-913-8

  • Online ISBN: 978-1-84882-914-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics