Logic Programming with PROLOG

Part of the Undergraduate Topics in Computer Science book series (UTICS)


Due to the problems with first-order logic mentioned in Chap.  4, pure logic can not solve most realistic AI problems. Logic programming as a fusion of logic and procedural programming provides the programmer with means for controlling and optimizing logical reasoning. Using the programming language PROLOG, we invite the reader to solve some simple relational problems and puzzles. As a particular highlight, we introduce constraint logic programming, which enables us to elegantly solve for example nontrivial scheduling problems.


Theorem Prover Horn Clause Constraint Logic Programming Prolog Program Language Prolog 


  1. [Bar98]
    R. Bartak. Online guide to constraint programming, 1998. http://kti.ms.mff.cuni.cz/~bartak/constraints.
  2. [Bra11]
    I. Bratko. PROLOG Programming for Artificial Intelligence. Addison–Wesley, Reading, 4th edition, 2011. Google Scholar
  3. [CM94]
    W. F. Clocksin and C. S. Mellish. Programming in Prolog. Springer, Berlin, 4th edition, 1994. MATHGoogle Scholar
  4. [Dia04]
    D. Diaz. GNU PROLOG. Universität Paris, 2004. Aufl. 1.7, für GNU Prolog version 1.2.18, http://gnu-prolog.inria.fr.
  5. [Fre97]
    E. Freuder. In pursuit of the holy grail. Constraints, 2(1):57–61, 1997. CrossRefGoogle Scholar
  6. [RN10]
    S. Russell and P. Norvig. Artificial Intelligence: A Modern Approach. Prentice Hall, New York, 3rd edition, 2010. 1st edition: 1995. http://aima.cs.berkeley.edu. Google Scholar
  7. [Wie04]
    J. Wielemaker. SWI-PROLOG 5.4. Universität van Amsterdam, 2004. www.swi-prolog.org.

Copyright information

© Springer-Verlag London Limited 2011

Authors and Affiliations

  1. 1.FB Elektrotechnik und InformatikHochschule Ravensburg-Weingarten, University of Applied SciencesWeingartenGermany

Personalised recommendations