Skip to main content

Prolog: A step towards the future of programming

  • Part 2: Logic and Logic Programming
  • Conference paper
  • First Online:
Advanced Topics in Artificial Intelligence

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

  • 150 Accesses

Abstract

This is an introductory paper to the domain of logic programming and Prolog. The basic notions of logic programming are introduced through simple examples. Substantial part of the paper describes important features of Prolog language, which make this language especially attractive for application in certain domains. This practical aspect of Prolog is supported by quotations from recent big projects for real as they have been presented at the first international conference The Practical Applications of Prolog held in April 1992.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Annotated bibliography

  • Ait-Kaci, H.; Warren's Abstract Machine, A Tutorial Reconstruction, The MIT Press, Cambridge, Massachusetts 1991

    Google Scholar 

  • Allred, D. et al.; AGATHA: Applying Prolog to Test and Diagnosis of Printed Circuit Boards. In: [Moss (1992)]

    Google Scholar 

  • Armstrong, J.L. et al.; Use of Prolog for Developing a New Programming Language. In: [Moss (1992)]

    Google Scholar 

  • Böhringer, B., Ciopris, C., Futó, I.; Wissensbasierte Systeme mit Prolog, Addison Wesley, Bonn 1988

    Google Scholar 

  • Bratko, I.; Prolog Programming for Artificiall Inteligence, Second edition, Addison Wesley, 1990

    Google Scholar 

  • Clement, T.P., Lau, K.K. (eds.); Logic Program Synthesis and Transformation, Worshops in Computing, Manchester 1991, Springer Verlag 1992

    Google Scholar 

  • Clark,K.J., Gregory,S.; Parlog: Parallel Programming in Logic, TR DOC 84/4, Dept. of Computing, Imperial College of Science and Technology, University of London 1984

    Google Scholar 

  • Clocksin, W.F., Mellish, C.S.; Programming in Prolog, third revised and extended edition, Springer-Verlag, Berlin, Heidelberg 1987 Good elementary introduction to programming in Prolog. It describes the (de facto) standard of the Prolog language. The book has become a standard reference source. Recommendable both to the students of various branches and/or specialists in Computer Science.

    Google Scholar 

  • Colmerauer, A.; Les grammaires de metamorphose, Groupe d'Intelligence Artificielle, Université de Marseille-Luminy 1975 (English translation in: Natural Language Communication with Computers, Bolc, L. (editor), Springer Verlag, Berlin 1978)

    Google Scholar 

  • Coelho, H., Cotta, J.C.; Prolog by example, Springer-Verlag, Berlin, Heidelberg 1988. A collection of Programs from various application domains. The reader should be careful, there are many unpleasant misprints in the text of the programs.

    Google Scholar 

  • Coulston, E. et al.; An Example of Maintainable Program design in Prolog: Weeds in Sugar Cane. In: [Moss (1992)]

    Google Scholar 

  • Covington, M.A., Nute, D., Vellino, A.; Prolog Programming in Depth, Scott, Foresman & Company, 1988. A good survey of the Prolog language and of its applications including Artificial Intelligence and Natural language processing.

    Google Scholar 

  • Dahl, V.; Logic Based Metagrammars for natural language analysis, Tech. Rep. Department Comp. Sci. Simon Fraser University, Burnaby, Canada 1985

    Google Scholar 

  • Deville, Y.; Logic Programming. Systematic Program Development. Addison-Wesley 1990. A systematic methodology for logic program development is proposed, covering the entire development process: from an informal specification to an efficient logic program.

    Google Scholar 

  • De Kleer, J., Brown, J.S.; A Qualitative Physics Based on Confluences, Artificial Intelligence 24 (1984), 7–83, 1984

    Google Scholar 

  • Doyle, J.; A truth-maintenance system, Artificial Intelligence 12(1979), 231–272

    Google Scholar 

  • Eder,J.; Logic and databases, in this volume

    Google Scholar 

  • Furukawa, K.; Logic Programming as the Integrator of the Fifth Generation Computer Systems Project, Communications of the ACM, March 1992, vol35, No.3, pp. 82–92

    Google Scholar 

  • Gallaire, H., Minker, J. (editors); Logic and Data Bases, Plenum Press New York and London 1977. This is a classical collection of papers concerning Logic, Knowledge Representation and Data Bases. It contains several highly cited classical papers in the field and it is a standard reference source.

    Google Scholar 

  • Gallier, J.H.; Logic for Computer Science, Foundations of Automatic Theorem Proving, John Wiley & Sons 1987. A deep and wide survey of Logic for a Computer Science student and/or specialist.

    Google Scholar 

  • Genesereth, M.R., Nilsson, N.J.; Logical Foundations of Artificial Intelligence, Morgan Kaufmann Publishers, 1987. A rather complete introduction to logical foundations of Artifical Intelligence with emphasis on declarative representation of knowledge. Good reading, sometimes a bit short in argumentation.

    Google Scholar 

  • Gibbins, P.; Logic with Prolog. Clarendon Press 1988. Textbook of logic based on Prolog excercises.

    Google Scholar 

  • Grant, J., Minker, J.; The Impact of Logic Programming on Databases. Communications of the ACM, March 1992, vol35, No.3, pp. 66–81

    Google Scholar 

  • Hogger, C.J.; Introduction to Logic Programming, Academic Press, London 1984. A concise (rather informal) survey of Foundations of Logic Programming, programming techniques in Prolog and implementation. The book is more formal and precise than Kowalski (1979) but it contains less material.

    Google Scholar 

  • Hogger, C.J.; Essentials of Logic Programming, Clarendon Press, Oxford 1990. The book is of great help for an introductory course of logic programming. Theoretical issues as semantics of definite programs, their transformations and completions, problems of negation are well covered. Many excercises are given to support the text.

    Google Scholar 

  • Jackson, P., Reichgelt, H. and van Hermelen, F. (editors); Logic-Based Knowledge Representation, The MIT Press, Cambridge Massachusetts 1989. A collection of papers concerning Logic and its role in Knowledge Representation and Problem Solving.

    Google Scholar 

  • Jaffar,J., Lassez,J.-L.; Constraint Logic Programming, in: ACM POPL Conference, Munich 1987

    Google Scholar 

  • Jaffar,J., Lassez,J.-L.; From Unification to Constraints, GULP '89 Conference 1989

    Google Scholar 

  • Jaffar,J., Michaylov, S. Methodology of Implementation of a CLP System, Proc. 4th Int. Conf. on Logic Programming 1987

    Google Scholar 

  • Kim, S.H.; Knowledge Systems through Prolog. Oxford University Press 1991. The book is based on the experience of teaching an undergraduate course at MIT. It can well be used even for selfstudy.

    Google Scholar 

  • Knoll, R., Zagenberg, H.; How do Prolog Products fit Company Needs. In: [Moss (1992)]

    Google Scholar 

  • Kowalski, R.; Logic for Problem Solving, North Holland Publishing Co. New York 1979 A classic book written by one of the founders of the discipline of Logic Programming. It emphasizes applications of Logic to Problem Solving especially the fragment of so called Horn Logic.

    Google Scholar 

  • Kreutzer, W., McKenzie, B.; Programming for AI (Methods, Tools and Applications), Addison-Wesley 1991 LISP, PROLOG and SMALLTALK are introduced and compared. Their use is illustrated by a collection of actual cases.

    Google Scholar 

  • Kriwaczek,F.; An introduction to Constraint Logic Programming, in this volume

    Google Scholar 

  • Lažanský, J.; Practical Applications of Planning Tasks, in this volume.

    Google Scholar 

  • Lazarev, G.I.; Why Prolog? Justifying Logic Programming for Practical Applications, Prentice Hall, Englewood Cliffs, New Jersey 1989 A short introduction to programming in Prolog with emphasis on declarative programming in software engineering.

    Google Scholar 

  • Lloyd, J.W.; Foundations of Logic Programming, Springer-Verlag Berlin, Heidelberg (second edition) 1987 A concise and extensive survey of logical foundations of Logic Programming and Prolog. It is a standard reference source.

    Google Scholar 

  • Lloyd,J.W.; Logic as a Foundation for Deductive Database Systems, Information Processing 89, Ritter, G.X. (editor), North Holland, pp. 323–324, 1989

    Google Scholar 

  • Maier, D., Warren, D.S.; Computing with Logic, Benjamin Publishing Co. 1988 A well organized survey of Logic Programming with the emphasis on efficient implementation of languages of Logic Programming.

    Google Scholar 

  • Malpas, J.; Prolog: A Relational Language and its applications, Prentice Hall, Englewood Cliffs, New Jersey 1987 A rather concise introduction to Prolog

    Google Scholar 

  • Matsumoto, Y., Sugimura, R. A Parsing System Based on Logic Programming, in: IJCAI'87, pp. 671–674, 1987

    Google Scholar 

  • McClay, W. J.; A Query Server for Diverse Sources of Data and Knowledge. In: [Moss (1992)]

    Google Scholar 

  • Mc Cord, M.C., Modular Logic Grammars, Proc. 23rdAnn. Meeting of the Association of Comp. Ling. Chicago, pp. 104–117,1985

    Google Scholar 

  • McCabe, F.G.; Logic and Objects, Prentice Hall International, Englewood Cliffs, New Jersey 1992

    Google Scholar 

  • Menzies, T. et al.; An Expert System for Raising Pigs. In: [Moss (1992)]

    Google Scholar 

  • Mizoguchi, F.(ed.); Prolog and its Applications. A Japanese Perspective. Chapman and Hall Computing (1991) Special attention is devoted to natural language processing and editing in Prolog. Cooperation with relational databases is considered.

    Google Scholar 

  • Moore, R.C.; Semantical consideration on non-monotonic logic, Artificial Intelligence 28(1985), 75–94,1985

    Google Scholar 

  • Moss, Ch., Bowen, K. (eds); The Proceedings of the First International Conference & Exhibition The Practical Application of PROLOG, 1st–3rd April 1992, London, Association for Logic Programming

    Google Scholar 

  • Muggleton, S.; Inductive Logic Programming, New Generation Computing 8(1991), 295–318

    Google Scholar 

  • Neumann, G.; Meta-Programming and Prolog, Addison-Wesley Publishing Company 1988 Tlie first book to describe the Meta-Programming techniques in Prolog. It includes many examples of Meta-interpreters of Prolog for various purposes

    Google Scholar 

  • Newmarch, J.D.; Logic Programming: Prolog and Stream Parallel Languages. Prentice Hall of Australia 1990 Parallelism in logic programming, namely commited choice non-determinic approach.

    Google Scholar 

  • Nilsson, U., Maluszynski, J.; Logic, Programming and Prolog. Wiley 1990 Theory of logic programming and declarative style. Special attention is given to recently considered extensions of LP as concurrent systems, equality handling and constraint solving. The book includes lot of excercises.

    Google Scholar 

  • O'Keefe, R.; The Craft of Prolog, The MIT Press, Cambridge Massachusetts 1990 This is an exposition of the Prolog language for a second reading. It shows how to present both well readable and efficient Prolog programs following the statementElegance is not optional”.

    Google Scholar 

  • Pereira, P.N.C., Shieber, S.M.; Prolog and Natural-Language Analysis, CSLI Lecture Notes 10, Center for the Study of Language and Information, Stanford Menlo Park, Palo Alto 1988 The book contains a compact, competent and well-readable introduction to Prolog. It includes examples and applications to Computational Linguistics.

    Google Scholar 

  • Pfenning, F. (ed.); Types in Logic Programming, The MIT Press, Cambridge, Massachusetts 1992 Collection of original research papers on types in logic programming. It covers all of the major regular tree types, polymorphic types, subtypes and dependent types.

    Google Scholar 

  • Reiter, R.; A logic for default reasoning, Artificial Intelligence 13(1980), 81–132,1980

    Google Scholar 

  • Robinson, A. J.; Logic and Logic Programming. Communications of the ACM, March 1992, vol35, No.3, pp. 40–65

    Google Scholar 

  • Rowe N.C.; Artificial Intelligence Through Prolog, Prentice Hall International, Englewood Cliffs, New Jersey 1988 Integrated presentation of most major topics in Artificial Intelligence (AI) with an emphasis on Logic Programming. The book includes in-depth discussion of Rule-based Systems, Implementation and Abstraction of Searchand Debugging of AI Programs.

    Google Scholar 

  • Sanamrad, M.A., Bretan, I.; IBM SAA LanguageAccess: A large-Scale Commercial Product Implemented in Prolog. In: [Moss (1992)].

    Google Scholar 

  • Shapiro, E.Y.; Algorithmic Program Debugging, The MIT Press, Cambridge, Massachusetts 1983 A pioneering work in the domaine of declarative program debugging. It presents now classical algorithms for debugging declarative programs and for automated correction.

    Google Scholar 

  • Shapiro, E.Y.; Concurrent Prolog, The MIT Press, Cambridge, Massachusetts 1987

    Google Scholar 

  • Štěpánková,O.; An Introduction to Qualitative Reasoning, in this volume

    Google Scholar 

  • Stering, L., Shapiro, E.Y.; The Art of Prolog, The MIT Press, Cambridge, Mass. 1986 It is one of the best texts on Prolog programming. The book describes the programming techniques and their applications. Interesting examples of programs are included with a very limited number of misprints.

    Google Scholar 

  • Stering, L. (ed.); The Practice of Prolog, The MIT Press, Cambridge Massachusetts 1990 The names of chapters: 1. Prototyping data-bases in Prolog,2. A Prolog bases VLSI editor, 3. Assisting register transfer level hardware design, 4. Developing a portable parallelizing pascal compiler in Prolog 5. A Prolog partial evaluation system, 6. Generating natural language explanation from plans, 7. A simple learning program, 8. Data analysis.

    Google Scholar 

  • Tick, E.; Parallel Logic Programming, The MIT Press, Cambridge Massachusetts 1991 The book is unique in presenting symbolic parallel programming hand-in-hand with performance analysis of real empirical measurements. It provides the reader with tools for implementing and critically evaluating larger projects.

    Google Scholar 

  • Thayse, A. (editor); From Standard Logic to Logic Programming, John Wiley & Sons 1988 A well-balanced and extensive survey of Logic and Logic Programming with applications to Artifical Intelligence.

    Google Scholar 

  • Tokunada, T. Iwayama, M., Kawasaki,T.; LangLAB: A Natural Language Analysis System, Proc. Conf. COLING'88, Budapest pp. 655–661 1988

    Google Scholar 

  • Ueda,K.; Guarded Horn Clauses, ICOT Tech. Rep. CS-103 1985

    Google Scholar 

  • van Emden, M.H., Kowalski, R.A.; The Semantics of Predicate Logic as a Programming Language, Journal ACM 23 (1976), pp. 733–742.

    Google Scholar 

  • van Hentenryck, P.; Constraint satisfaction in Logic Programming, The MIT Press, Cambridge Massachusetts 1989

    Google Scholar 

  • Warren, D.S.; Momoing for Logic Programs. Communications of the ACM, March 1992, vol 35, No.3, pp. 93–110

    Google Scholar 

  • Wood, M. et al.; XLSIOR: An Intelligent System for Reinsurance Recoveries Calculation. In: [Moss (1992)]

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Vladimír Mřrík Olga Štěpánková Rorbert Trappl

Rights and permissions

Reprints and permissions

Copyright information

© 1992 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Štěpánková, O., Štěpánek, P. (1992). Prolog: A step towards the future of programming. In: Mřrík, V., Štěpánková, O., Trappl, R. (eds) Advanced Topics in Artificial Intelligence. Lecture Notes in Computer Science, vol 617. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-55681-8_30

Download citation

  • DOI: https://doi.org/10.1007/3-540-55681-8_30

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-55681-7

  • Online ISBN: 978-3-540-47271-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics