[1-3] Books and Magazine Articles

A BiBTeX bibliography of Logic Programming Conferences is available by
anonymous ftp from duck.dfki.uni-sb.de. See [1-5] below.

A partially annotated bibliography of work on integrating
object-oriented and logic programming is available by anonymous ftp
from menaik.cs.ualberta.ca:/pub/oolog/ in PostScript and BibTeX
formats. Written by Vladimir Alexiev <vladimir@cs.ualberta.ca>.

The following books are regarded as popular and widely used. Also
included are some books about WAM. This is not intended to be a complete
Prolog bibliography.

Prolog Programming:

   Covington, Michael A.; Nute, D.; and Vellino, A. "Prolog
   Programming in Depth", Scott, Foresman & Co., 1987. ISBN 0-521-40984-5
   (Out of print, but new edition coming soon. Copies of the 1987
   edition are still available from the University of Georgia
   Bookstore, at 706-542-7131.)
   Book source code available at:
      http://www.als.com/ftp/pub/texts/texts.html

   Bowen, Kenneth A. "Prolog and Expert Systems", Mcgraw-Hill, Inc., 
   1991, ISBN 0-07-006731-7 ($29.95).  Book source code available at:
      http://www.als.com/ftp/pub/texts/texts.html

   Clocksin, W.F. and Mellish, C.S: "Programming in Prolog", 3rd Ed.
   Springer Verlag, 1987. 281 pages, ISBN 0-387-17539-3 ($29). 
   [Basic introduction to Prolog.]

   Coelho, H., and Cotta, J.C., "Prolog by Example", Springer Verlag,
   1988. 381 pages, ISBN 0-387-18313-2 ($39.50).

   Cooke, Daniel E., "Logic: The Basis for Understanding Prolog", 
   Ablex, Norwood, NJ, 1994. 224 pages, ISBN 1-56750-028-5 ($27.50).
   [Intro to Prolog with a review of the basic ideas underlying the language.]

   Conlon, Tom: "Programming in Parlog". Addison-Wesley, 1989, 
   ISBN 0-201-17450-2.

   Dawe, C.M. and M.S. Dawe, "Prolog for Computer Science", Springer
   Verlag, 1994. 190 pages, ISBN 0-387-19811-3 paper ($35). [Intro to
   computer science using Prolog.]

   Dodd, Anthony, "Prolog: A logical approach", Oxford University
   Press, New York, 1990, 556 pages. ISBN 0-198-53822-7 (cloth), $52.50; 
   ISBN 0-198-53821-9 (paperback), $26.00.

   Kluzniak and Szpakowicz: "Prolog for Programmers", Academic Press 1985

   G. L. Lazarev, "Why Prolog? Justifying Logic Programming for Practical
   Applications", Prentice Hall, 1989. [Software engineering bent.
   Emphasizes advantages of declarative programming.]

   Le, Tu Van,  "Techniques of Prolog programming, with implementation
   of logical negation and quantified goals", John Wiley, New York, 1993.
   ISBN: 0-471-57175-X (American edition), 0-471-59970-O (International
   edition).  LnProlog, a Prolog interpreter that supports negative
   finding queries and quantified queries is available together with
   the book. 

   Saint-Dizier, P., "An Introduction to Programming in Prolog",
   Springer Verlag, 1990. 184 pages, ISBN 0-387-97144-0 paper ($25).
   [Tutorial introduction, with simple examples of AI programs and games.]

   Leon Sterling, editor, "The Practice of Prolog", MIT Press, 1990.
   342 pages, ISBN 0-262-19301-9, $39.95.

Advanced Prolog Programming:

   O'Keefe, Richard A., "The Craft of PROLOG", MIT Press, 1990, 410 pages.
   ISBN 0-262-15039-5, $42.50.

   Peter Ross, "Advanced Prolog: Techniques and Examples",
   Addison-Wesley, 1989, ISBN 0-201-17527-4.

   Leon Sterling and Ehud Shapiro, "The Art of Prolog: Advanced
   Programming Techniques", 2nd Edition, MIT Press, 1994. 688 pages,
   ISBN 0-262-19338-8 ($49.95).
   [Source code for the book is available in ftp.cwru.edu:/ArtOfProlog/.
    There is a subdirectory for each chapter of the book containing the
    text of the programs in that chapter.]

AI and Prolog:

   Yoav Shoham, "Artificial Intelligence Techniques in Prolog", Morgan
   Kaufmann Publishers, 1993, 400 pages. ISBN 1-55860-167-8 (paper) $39.95. 
   ISBN 1-55860-319-0 (cloth) $49.95. [Topics include search, backward
   chaining, data-driven methods, truth maintenance, constraint
   satisfaction, reasoning with uncertainty, planning, temporal
   reasoning, machine learning, and natural language processing. Prolog
   source for all the programs in the book is available by anonymous ftp
   from unix.sri.com:/pub/shoham/]

   Bratko, Ivan, "Programming in Prolog for Artificial Intelligence", 
   2nd Edition, Addison-Wesley, 1990. [Good introduction to Prolog and AI.
   A bit large, though, for an Intro to Prolog course. Includes
   discussion of the 8-queens problem.]

   Dennis Merritt, "Building Expert Systems in Prolog", Springer-Verlag, 1989.
   358 pages, ISBN 0-387-97016-9 hardcover ($52).
   Explains how to build various expert system shells in Prolog, including
   forward/backward chaining, FOOPS, rete-network, frames, solving
   Rubik's cube and more. Includes complete source code listings.
   (Source code from the book is also sold on disk by Amzi! Inc. and
   is available by anonymous FTP from
      ftp.std.com:/ftp/vendors/amzi/programs/
      ftp.cs.cmu.edu:/user/ai/areas/expert/systems/amzi/programs/
   as the files xsip.*)

   Dennis Merritt: "Adventure in Prolog", Springer-Verlag, 1990. 
   186 papers, ISBN 0-387-97315-X hardcover ($38).
   Teaches Prolog by leading the reader through the construction of an
   adventure game. The exercises lead the reader through three other
   programs:  an intelligent database, an expert system and an order-entry
   program.  While most texts teach Prolog with fragments of interesting code,
   this book takes a more pragmatic (as opposed to theoretical approach) and
   shows the reader how to assemble complete Prolog programs.

   Gazdar, G. and Mellish, C., "Natural Language Processing in Prolog:
   An Introduction to Computational Linguistics", Addison-Wesley,
   Reading, Massachusetts, 1989. (There are three different editions
   of the book, one for Lisp, one for Prolog, and one for Pop-11.)

   Fernando C.N. Pereira and Stuart M. Shieber, "Prolog and
   Natural-Language Analysis", CSLI Lecture Notes Number 10, Stanford,
   CA, 1987. 286 pages, ISBN 0-937073-18-0.

   Michael A. Covington, "Natural Language Processing for Prolog
   Programmers", Prentice-Hall, Englewood Cliffs, NJ, 1994. ISBN
   0-13-629213-5.

   Harvey Abramson and Veronica Dahl, "Logic Grammars", Springer-Verlag,
   New York, 1989, 234 pages, ISBN 0-387-96961-6.

   Peter Flach, "Simply Logical: Intelligent Reasoning by Example",
   John Wiley & Sons, 1994, 256 pages. ISBN 0-471-94152-2 paper ($31.95).
   [Covers theoretical and practical aspects of Prolog programming as well
   as AI topics like knowledge representation, search, heuristics, 
   abduction, default reasoning, and induction. Every technique is
   accompanied by a Prolog program that implements it. More information
   about the book is available from  
      http://machtig.kub.nl:2080/Infolab/Peter/SimplyLogical.html
   or by email from Peter.Flach@kub.nl.]

Prolog and Object-Oriented Programming:

   Chris Moss, "Prolog++ The Power of Object-Oriented and Logic
   Programming", Addison-Wesley, 1994. 312 pages, ISBN 0-201-56507-2. UK
   price is 21.95 pounds. [This paperback includes a special offer to
   obtain a Prolog++ compiler from LPA for Windows 3.1 or Macintosh. UK
   price is 29.95 pounds (plus 17.5 percent VAT) plus 5.00 pounds postage
   and handling. Elsewhere the cost is $49.95 plus $8 p&h.]

Logic Programming:

   Hogger, Christopher J., "Introduction to Logic Programming",
   Academic Press, 1984. 278 pages. ISBN 0-12-352090-8 (alk. paper)
   ISBN 0-12-352092-4 (pbk.).

   Hogger, Christopher J., "Essentials of Logic Programming", 
   Clarendon Press, Oxford, 1990. ISBN 0-19-853820-0. [Covers both
   foundations and more practical material, relating it all to Prolog.
   Takes a different approach than his first intro, dividing the book
   into many short "themes" instead of chapters, and including many
   excercises (with some answers).]

   Kowalski, R.A.: "Logic for Problem Solving", New York 1979, Elsevier Publ.

   LLoyd, John: "Foundations of Logic Programming", 2nd Edition,
   Springer-Verlag, 1988. (Intro to logic programming theory.)

   David Maier and David S. Warren: "Computing with Logic: Logic
   Programming with Prolog", Benjamin Cummings, Menlo Park, CA, 1989.

   Nilsson, Ulf and Maluszynski, Jan, "Logic, Programming and Prolog",
   John Wiley & Sons, 1990, ISBN 0-471-92625-6.

   Subrata Kumar DAS, "Deductive Databases and Logic Programming",
   Addison-Wesley Publishing Company, July 1992, 448 pages. 
   ISBN 0-201-56897-7. 

Constraint Logic Programming and Constraint Satisfaction:

   Bennaceur, Hachemi and Gerard Plateau, "An exact algorithm for the
   constraint satisfaction problem: Application to logical inference",
   Information Processing Letters 48(3):151-158, November 19, 1993.

   Cohen, J., "Constraint Logic Programming Languages", Communciations
   of the ACM 33(7):52-68, 1992. [Good introduction to CLP and
   includes a historical overview.]

   Freeman-Benson, B.N., Maloney, J., and Borning, A., "An Incremental
   Constraint Solver", Communications of the ACM 33(1):54-63, 1990.
   [Includes a good reading list on the history and applications of
   constraints.]

   Freuder, Eugene C., and Richard J. Wallace, "Partial constraint
   satisfaction", Artificial Intelligence 58(1-3):21-70, December 1992.

   Van Hentenryck, Pascal, "Constraint Satisfaction in Logic Programming",
   MIT Press, Cambridge, MA, 1989, ISBN 0-262-08181-4.

   Jaffar, Joxan and Jean-Louis Lassez, "Constraint Logic Programming", in
   Proceedings of the 14th ACM Symposium on Principles of Programming
   Languages (POPL), Munich, Germany, pages 111-119, 1987.  
   [A longer version appears in Joxan Jaffar and Jean-Louis Lassez,
   "Constraint Logic Programming", Technical Report 86-74, Monash
   University, Victoria, Australia, June 1986.]

   Kumar, Vipin, "Algorithms for Constraint-Satisfaction Problems: A
   Survey", AI Magazine 13(1):32-44, 1992.

   Mackworth, Alan K., "The logic of constraint satisfaction", Artificial
   Intelligence 58:3-20, 1992.

   Meseguer, P., "Constraint Satisfaction Problems: An Overview", AICOM
   2(1):3-17, 1989.

   Steele, Guy L., "The Definition and Implementation of A Computer
   Programming Language Based on Constraints", PhD thesis, MIT, 1980.

   Tsang, Edward, "Foundations of Constraint Satisfaction", Academic
   Press, 1993. 421 pages, ISBN 0-12-701610-4 ($75). [Good overview.]

   Zhang, Ying and Alan K. Mackworth, "Constraint Programming in
   Constraint Nets", in Position Papers for the First Workshop on
   Principles and Practice of Constraint Programming, pages 303-312,
   Newport, RI, April 28-30, 1993.

   [See also the articles on Constraint Networks (pages 276-285) and
   Constraint Satisfaction (pages 285-293) in Shapiro's Encyclopedia
   of Artificial Intelligence.]

Prolog Implementations and WAMs:

   Ait-Kaci, Hassan, "Warren's Abstract Machine: A Tutorial Reconstruction",
   MIT Press, Cambridge, MA. 1991.
   125 pages, ISBN 0-262-51058-8 paper ($17.50), 0-262-01123-9 cloth.

   Patrice Boizumault, "The Implementation of Prolog", Princeton
   University Press, Princeton, NJ, 1993.  Translated by Ara M.
   Djamboulian and Jamal Fattouh. ISBN 0-691-08757-1, 357 pages ($49.50).
   [The interpreters developed in the book are available by anonymous
   ftp from cnam.cnam.fr:/pub/Boizumault/. See [2-1].]

   Campbell, J.A. (ed):  "Implementations of Prolog", John Wiley, 1984

   Peter M. Kogge, "The Architecture of Symbolic Computers", 
   McGraw-Hill, 1991. ISBN 0-07-035596-7.
      Includes sections on memory management, the SECD and
      Warren Abstract Machines, and overviews of the various
      Lisp Machine architectures.

   David Maier and David S. Warren, "Computing with Logic: Logic 
   Programming with Prolog", Benjamin/Commings Publishing Co., 1988.
   ISBN 0-8053-6681-4.

   David H. D. Warren: "An Abstract Prolog Instruction Set", Technical Note
   No 309, SRI International, Menlo Park, CA, 1983.

   David H. D. Warren, "Logic Programming and Compiler Writing," in
   Software-Practice and Experience 10(2):97-125, 1980.

   J. Cohen and T. Hickey, "Parsing and Compiling using Prolog",
   ACM Transactions on Programming Languages and Systems (TOPLAS), 
   9(2):125-163, 1987.

   J. Paakki, "Prolog in practical compiler writing", The Computer
   Journal 34(1):64-72, 1991. (But see Letters to the Editor, The
   Computer Journal 35(3):313, 1992.)

   Jonathan P. Bowen, "From Programs to Object Code using Logic and Logic
   Programming", in R. Giegerich and S. L. Graham, editors, Code
   Generation -- Concepts, Tools, Techniques, pages 173-192,
   Springer-Verlag, 1992.

   Jonathan P. Bowen, "From Programs to Object Code and back again using
   Logic Programming: Compilation and Decompilation", Journal of
   Software Maintenance: Research and Practice 5(4):205-234, December 1993.

Parallel Prologs:
 
   Gregory, Steve: "Parallel Logic Programming in Parlog: The Language
   and Its Implementation", Addison-Wesley, 1987, ISBN 0-201-19241-1.

   Tick, E.: "Parallel Logic Programming". MIT Press, 1991

Miscellaneous:

   Deville, Yves: "Logic Programming, Systematic Program Development",
   International Series in Logic Programming, Addison-Wesley, 1990, 338 pages.
   ISBN 0-201-17576-2. 

   Wolfram, D.A., "The Clausal Theory of Types", Cambridge Tracts in 
   Theoretical Computer Science {\bf 21}, Cambridge University Press,
   1993.

Magazine Articles:

   PCAI Magzine, September/October 1993. Article on exploring Prolog,
   showing the first steps to four applications -- an adventure game, an
   object-oriented shell, a tax program, and an animal guessing game.
   An excerpt of this article is available from
      ftp.cs.cmu.edu:/user/ai/lang/prolog/doc/intro/explore.doc 

   BYTE Magazine, August 1987. 5 introductory articles on Prolog.
   Applications include logic grammars and simulating a microprocessor.

   Uwe Schreiweis: Beredte Logik, Konzepte der 'KI-Sprache" Prolog,
   (Eloquent Logic, Concepts of the AI language Prolog), iX Magazine,
   October 1992, pages 84-90.

   Uwe Schreiweis: Basis der Fuenf, Die Sprache Prolog in der Public
   Domain, (Base of the Five, Prolog in the Public Domain), iX Magazine,
   October 1992, pages 92-94.

   Uwe Schreiweis: Fuenfte Generation, Kommerzielle Prolog-Systeme,
   (Fifth Generation, Commercial Prolog Systems), iX Magazine, October
   1992, pages 96-102.

   Klaus Bothe: Weniger Raum, Speicherplatzbezogener Prolog-Benchmark,
   (Less Space, A Space Oriented Prolog Benchmark), iX Magazine, October
   1992, pages 106-7.

Magazines Related to Prolog:

   Logic Programming Newsletter (4 issues/yr)
   Included with membership in the Association for Logic Programming 
   ($30 regular, $15 students). For membership information, write to
   Valerie Anderson (ALP), DoC-ICSTM, 180 Queens Gate, London SW7 2BZ,
   UK, phone +44-171-594-8226, fax +44-171-589-1552, or send email
   to alp@doc.ic.ac.uk. Contributions are welcome and should be sent
   to Andrew Davidson <ad@cs.mu.oz.au>. Selected articles from the
   newsletter are available from the WWW archive
      http://www.cs.mu.oz.au/~ad/alp/archive.html

   AI Communications (4 issues/yr)
   "The European Journal on Artificial Intelligence"  ISSN 0921-7126,
   European Coordinating Committee for Artificial Intelligence.

   AI Expert (issued monthly) ISSN 0888-3785, Miller Freeman Publishers
   See a copy of the magazine for list of BBS's in NA. On CompuServe: GO
   AIEXPERT. Regularly reviews Prolog interpreters and compilers.
   -- Ceased publication in June, 1995.

   PC AI (issued bi-monthly) ISSN 0894-0711, Knowledge Technology Inc.
   Regularly reviews Prolog systems and applications.  
   See http://www.pcai.com/pcai

   Expert Systems (issued Feb, May, Aug and Nov) ISSN 0266-4720,
   Learned Information (Europe) Ltd. Subscription: GBP 85 or USD 110

   IEEE Expert (issued bimonthly) ISSN 0885-9000, IEEE Computer Society

   The Journal of Logic Programming (issued bimonthly), (North-Holland),
   Elsevier Publishing Company, ISSN 0743-1066

   New Generation Computing, Springer-Verlag. (LOTS of Prolog in it.)
Go Back Up

Go To Previous

Go To Next