Tuesday, January 20, 2009

Logic Programming and Automated Reasoning: 5th International Conference, LPAR '94, Kiev, Ukraine, July 16 - 22, 1994. Proceedings (Lecture Notes in Computer ... / Lecture Notes in Artificial Intelligence)

Logic Programming and Automated Reasoning: 5th International Conference, LPAR '94, Kiev, Ukraine, July 16 - 22, 1994. Proceedings (Lecture Notes in Computer ... / Lecture Notes in Artificial Intelligence)
Logic Programming and Automated Reasoning: 5th International Conference, LPAR '94, Kiev, Ukraine, July 16 - 22, 1994. Proceedings (Lecture Notes in Computer ... / Lecture Notes in Artificial Intelligence)
Title: Logic Programming and Automated Reasoning: 5th International Conference, LPAR '94, Kiev, Ukraine, July 16 - 22, 1994. Proceedings (Lecture Notes in Computer ... / Lecture Notes in Artificial Intelligence)
Authors:
Editorial: Springer
Buy this book in

This volume presents the proceedings of the 5th International Conference on Logic Programming and Automated Reasoning, held aboard the ship "Marshal Koshevoi" on the Dnieper near Kiev, Ukraine in July 1994. The LPAR conferences are held annually in the former Soviet Union and aimed at bringing together researchers interested in LP and AR.
This proceedings contains the full versions of the 24 accepted papers evaluated by at least three referees ensuring a program of highest quality. The papers cover all relevant aspects of LP and AR ranging from theory to implementation and application.

Warren's Abstract Machine: A Tutorial Reconstruction (Logic Programming)

Warren's Abstract Machine: A Tutorial Reconstruction (Logic Programming)
Warren's Abstract Machine: A Tutorial Reconstruction (Logic Programming)
Title: Warren's Abstract Machine: A Tutorial Reconstruction (Logic Programming)
Authors: Hassan Ait-Kaci
Editorial: MIT Press (MA)
Buy this book in

This tutorial attempts to demystify one of the most important yet poorly understood aspects of logic programming, the Warren Abstract Machine or WAM. The author's step-by-step construction of the WAM adds features in a gradual manner, clarifying the complex aspects of the design and providing the first detailed study of WAM since it was designed in 1983. Developed by David H.D. Warren, the WAM is an abstract (nonphysical) computer that aids in the compilation and implementation of the Prolog programming language and offers techniques for compiling and optimizing symbolic computing that can be generalized beyond Prolog. Although the benefits of the WAM design have been widely accepted, few have been widely accepted, few have been able to penetrate the WAM. This lucid introduction defines separate abstract machines for each conceptually separate part of the design and refines them, finally stitching them together to make a WAM. An index presents all of the critical concepts used in the WAM. It is assumed that readers have a clear understanding of the operational semantics of Prolog, in particular, of unification and backtracking, but a brief summary of the necessary Prolog notions is provided.

Simply Logical: Intelligent Reasoning by Example (Wiley Series in Probability and Mathematical Statistics)

Simply Logical: Intelligent Reasoning by Example (Wiley Series in Probability and Mathematical Statistics)
Simply Logical: Intelligent Reasoning by Example (Wiley Series in Probability and Mathematical Statistics)
Title: Simply Logical: Intelligent Reasoning by Example (Wiley Series in Probability and Mathematical Statistics)
Authors: Peter A. Flach
Editorial: John Wiley & Sons Ltd
Buy this book in

Designed as an introduction to PROLOG programming for artificial intelligence, this text discusses both basic and advanced AI techniques, as implemented in PROLOG. Writing for the undergraduate, the author simplifies the basic concepts of logic programming, seen as a useful framework for explaining AI techniques. Exercises are integrated with explanatory text and difficult concepts are made clear by the use of simple, real-world examples. As a further teaching aid, each technique discussed is accompanied by a program implementing it, and the importance of learning the skill of program development is emphasized.

Practical Aspects of Declarative Languages: 5th International Symposium, PADL 2003, New Orleans, LA, USA, January 13-14, 2003, Proceedings (Lecture Notes in Computer Science)

Practical Aspects of Declarative Languages: 5th International Symposium, PADL 2003, New Orleans, LA, USA, January 13-14, 2003, Proceedings (Lecture Notes in Computer Science)
Practical Aspects of Declarative Languages: 5th International Symposium, PADL 2003, New Orleans, LA, USA, January 13-14, 2003, Proceedings (Lecture Notes in Computer Science)
Title: Practical Aspects of Declarative Languages: 5th International Symposium, PADL 2003, New Orleans, LA, USA, January 13-14, 2003, Proceedings (Lecture Notes in Computer Science)
Authors:
Editorial: Springer
Buy this book in

This book constitutes the refereed proceedings of the 5th International Symposium on Practical Aspects of Declarative Languages, PADL 2003, held in New Orleans, LA, USA, in January 2003.

The 23 revised full papers presented together with 3 invited contributions were carefully reviewed and selected from 57 submissions. All current aspects of declarative programming are addressed.

The Implementation of Prolog (Princeton Series in Computer Science)

The Implementation of Prolog (Princeton Series in Computer Science)
The Implementation of Prolog (Princeton Series in Computer Science)
Title: The Implementation of Prolog (Princeton Series in Computer Science)
Authors: Patrice Boizumault , Ara M. Djamboulian , Jamal Fattouh
Editorial: Princeton Univ Pr
Buy this book in

This study introduces the specific problems posed by the implementation of the PROLOG programming language, studies and compares different solutions - notably from the schools of Marseilles and Edinburgh - and concludes with three major examples of implementation.

Prolog and Natural-Language Analysis (Center for the Study of Language and Information - Lecture Notes)

Prolog and Natural-Language Analysis (Center for the Study of Language and Information - Lecture Notes)
Prolog and Natural-Language Analysis (Center for the Study of Language and Information - Lecture Notes)
Title: Prolog and Natural-Language Analysis (Center for the Study of Language and Information - Lecture Notes)
Authors: Fernando C. N. Pereira , Stuart M. Shieber
Editorial: Center for the Study of Language and Inf
Buy this book in

Logic programming, an important new method of compute programming resulting from recent research in artifucial intelligence and computer science, has proved to be especially appropriate for solving problems in natrual-language processing. "Prolog and Natural Language Analysis" provides a concise and practical introduction to logic programming and the logic-programming language Prolog both as vehicles for understanding elementary computational linguistics and as tools for implementing the basic components of natural-language-processing systems. Throughout, the specific concepts and techniques are given rigorous theoretical justification and are demonstrated with working programs that show how Prolog can be used to solve actual problems in syntax, parsing, and semantic intepretation.These examples culminate in a simple working natural-language question-answering system written in Prolog. Extensive bibliographic notes point the reader to related research and further reading.Fernando C.N. Pereira is a senior computer scientist at SRI International's Artificial Intelligence Center and a consulting professor at Stanford University. His research on Prolog and natural-language processing underlies much recent work in logic grammars.Stuart Shieber is a researcher at the Center for the Study of Language and Information and a computer scientist at SRI International's Artificial Intelligence Center. His research on unification-based grammar formalisms bridges logic programming and linguistic theory.

Knowledge Systems through PROLOG: An Introduction

Knowledge Systems through PROLOG: An Introduction
Knowledge Systems through PROLOG: An Introduction
Title: Knowledge Systems through PROLOG: An Introduction
Authors: Steven H. Kim
Editorial: Oxford University Press, USA
Buy this book in

With increasing frequency, PROLOG is the language of choice for many applications in artificial intelligence. This popularity of PROLOG, coupled with the importance of artificial intelligence applications, underscores the need for an integrative text and reference in this area. The motivation behind this book is to present for the first time a cohesive text for artificial intelligence and software development using PROLOG as the language. The essentials of the concepts, artificial intelligence, logic programming and software engineering are presented here in one coherent book. One of the distinguishing features of the book will be its unified treatment of computation and software designs, and as such, will appeal to users of computation, mainly engineers and physical scientists, as well as computer scientists. These courses are offered frequently in the artificial intelligence area of computer science, in the knowledge and software engineering area for students in engineering and the physical sciences.

PROLOG Wizard: A Wiley Programmer's Reference

PROLOG Wizard: A Wiley Programmer's Reference
PROLOG Wizard: A Wiley Programmer's Reference
Title: PROLOG Wizard: A Wiley Programmer's Reference
Authors: Dennis L. Foster
Editorial: John Wiley & Sons
Buy this book in

This comprehensive programmer's reference guide is designed for quick access and easy interpretation. A high-level resource, it provides concise, detailed information for designing, organizing, troubleshooting and debugging. Emphasis is on Turbo Prolog, but the scope is broad enough to include other major Prolog releases, ie, DEC Prolog and MicroProlog. The book covers the construction of facts, objects and rules within Prolog syntax and Turbo Prolog construction. Going on to discuss organization of program listings and techniques for controlling execution, it explains the predefined predicates and their use, along with file creation and access, graphics and sound. Also included is a set of appendixes including an ASCII code reference chart, a quick guide to built-in predicates and goals, a Prolog-to-Turbo Prolog conversion chart, graphics and sound values in tabular form and a Turbo Prolog language summary.

Mastering Prolog

Mastering Prolog
Mastering Prolog
Title: Mastering Prolog
Authors: R Lucas
Editorial: CRC
Buy this book in

Comprehensive introduction to a programming language that is particularly relevant for artificial intelligence and knowledge-based systems. Combines an introductory course in Prolog, with a full PC implementation of the language on the accompanying disk. Paper. 3 1/2 inch disk included.

PROFESSNL PROGRAMM GUIDE PROLOG PB (Professional programmers guides)

PROFESSNL PROGRAMM GUIDE PROLOG PB (Professional programmers guides)
PROFESSNL PROGRAMM GUIDE PROLOG PB (Professional programmers guides)
Title: PROFESSNL PROGRAMM GUIDE PROLOG PB (Professional programmers guides)
Authors: Hamilton A
Editorial: Univ Coll Londo
Buy this book in

This book is both a straightforward tutorial introduction to PROLOG and a reference for the basic PROLOG facilities. It is about how to use PROLOG and includes numerous examples and practical exercises for learning the language. Books in this series are specificaly designed for the serious programmer, or those aspiring to be such, and can be used either as a course text or as an aide memoire for programmers in the field.

Prolog, tout de suite! (Cahiers) (French Edition)

Prolog, tout de suite! (Cahiers) (French Edition)
Prolog, tout de suite! (Cahiers) (French Edition)
Title: Prolog, tout de suite! (Cahiers) (French Edition)
Authors: Patrick Blackburn , Johan Bos , Kristina Striegnitz
Editorial: College Publications
Buy this book in

Prolog est un langage de programmation tout à fait original. «Prolog» est l'abréviation de «Programmation logique», et le lien qu'il entretient avec la logique est ce qui lui donne sa spécificité. Au coeur de Prolog, réside une idée surprenante : ne pas dire à l'ordinateur ce qu'il doit faire, mais lui décrire des situations, et lui faire faire des calculs en lui posant des questions. Prolog déduira alors logiquement de nouveaux faits concernant les situations, et donnera en réponse ses déductions. Pourquoi apprendre Prolog ? Tout d'abord, l'aspect «dis-moi quel est ton problème au lieu de me dire comment le résoudre» de son approche en fait un langage de très haut niveau, adapté aux applications riches en connaissances comme l'intelligence artificielle, la linguistique informatique, ou le web sémantique. En étudiant Prolog, on arrive à une meilleure compréhension de la façon dont des tâches sophistiquées peuvent être effectuées informatiquement. De plus, Prolog demande un état d'esprit différent : il nous apprend à penser déclarativement au lieu de procéduralement. Acquérir cette façon de réfléchir et apprendre à apprécier les liens entre la logique et la programmation font de l'apprentissage de Prolog à la fois un challenge et une récompense. Prolog tout de suite ! est une traduction de Learn Prolog Now!). Gratuitement accessible en ligne depuis 2001 (www.learnprolognow.org), le texte anglais est devenu l'une des introductions à la programmation en Prolog les plus populaires, grâce à sa clarté et son approche résolument concrète. Il est très largement utilisé comme manuel dans les universités du monde entier, et encore plus largement comme support d'auto-formation. College publications est fier de proposer la traduction française de ce classique du web. Préparée avec soin, et grâce aux remarques des lecteurs de la version anglaise, cette traduction ne présente que les implantations de Prolog compatibles avec la norme ISO. Elle présente aussi le système de modules de Prolog, et fournit toutes les réponses aux exercices. Que vous appreniez Prolog pour élargir votre compréhension de la logique et de l'informatique, ou pour vous ouvrir les portes de la riche littérature sur Prolog et le Traitement Automatique des Langues, vous trouverez certainement ici tout ce que vous souhaitiez pour apprendre Prolog... tout de suite !

Logic Programming: First Russian Conference on Logic Programming, Irkutsk, Russia, September 14-18, 1990. Second Russian Conference on Logic Programming, ... / Lecture Notes in Artificial Intelligence)

Logic Programming: First Russian Conference on Logic Programming, Irkutsk, Russia, September 14-18, 1990. Second Russian Conference on Logic Programming, ... / Lecture Notes in Artificial Intelligence)
Logic Programming: First Russian Conference on Logic Programming, Irkutsk, Russia, September 14-18, 1990. Second Russian Conference on Logic Programming, ... / Lecture Notes in Artificial Intelligence)
Title: Logic Programming: First Russian Conference on Logic Programming, Irkutsk, Russia, September 14-18, 1990. Second Russian Conference on Logic Programming, ... / Lecture Notes in Artificial Intelligence)
Authors:
Editorial: Springer
Buy this book in

This volume contains the proceedings of two Russian conferences on logic programming, held in 1990 in Irkutsk and in 1991 in St. Petersburg. The aim of the conferences was to bring together researchers from the Russian and the international logic programming communities. Topics covered in the volume include: logic programming, automated theorem proving, non-monotonic reasoning, applications of mathematical logic to computer science, deductivedatabases, implementation of declarative concepts, and programming in non-classical logics. This is the first volume to represent activity in the field of logic programming in the countries of the former Soviet Union.

Executable Modal and Temporal Logics: Ijcai '93 Workshop, Chambery, France, August 28, 1993 : Proceedings (Lecture Notes in Computer Science)

Executable Modal and Temporal Logics: Ijcai '93 Workshop, Chambery, France, August 28, 1993 : Proceedings (Lecture Notes in Computer Science)
Executable Modal and Temporal Logics: Ijcai '93 Workshop, Chambery, France, August 28, 1993 : Proceedings (Lecture Notes in Computer Science)
Title: Executable Modal and Temporal Logics: Ijcai '93 Workshop, Chambery, France, August 28, 1993 : Proceedings (Lecture Notes in Computer Science)
Authors: Michael Fisher
Editorial: Springer
Buy this book in

This volume presents the thoroughly revised proceedings of the IJCAI '93 Workshop on Executable Modal and Temporal Logics held in Chambery, France in August 1993. The direct execution of logical statements, through languages such as PROLOG, has proved remarkably successful within CS and AI. In recent years a variety of nonclassical logics have been introduced and several executable forms of these logics have been applied to programming. This volume addresses a range of approaches to executable modal and temporal logics, not only from a logical point of view, but also from programming language and application standpoints; in addition, an introductory survey and an annotated bibliography are presented.

Modelling Spatial Knowledge on a Linguistic Basis: Theory - Prototype - Integration (Lecture Notes in Computer Science / Lecture Notes in Artificial Intelligence)

Modelling Spatial Knowledge on a Linguistic Basis: Theory - Prototype - Integration (Lecture Notes in Computer Science / Lecture Notes in Artificial Intelligence)
Modelling Spatial Knowledge on a Linguistic Basis: Theory - Prototype - Integration (Lecture Notes in Computer Science / Lecture Notes in Artificial Intelligence)
Title: Modelling Spatial Knowledge on a Linguistic Basis: Theory - Prototype - Integration (Lecture Notes in Computer Science / Lecture Notes in Artificial Intelligence)
Authors: Ewald Lang , Kai-Uwe Carstensen , Geoffrey Simmons
Editorial: Springer
Buy this book in

On the basis of a semantic analysis of dimension terms, this book develops a theory about knowledge of spatial objects, which is significant for cognitive linguistics and artificial intelligence. This new approach to knowledge structure evolves in a three-step process: - adoption of the linguistic theory with its elements, principles and representational levels, - implementation of the latter in a Prolog prototype, and - integration of the prototype into a large natural language understanding system. The study documents interdisciplinary research at work: the model of spatial knowledge is the fruit of the cooperative efforts of linguists, computational linguists, and knowledge engineers, undertaken in that logical and chronological order. The book offers a two-level approach to semantic interpretation and proves that it works by means of a precise computer implementation, which in turn is applied to support a task-independent knowledge representation system. Each of these stages is described in detail, and the links are made explicit, thus retracing the evolution from theory to practice.

An Automatic Partial Evaluator for Full Prolog (Dissertation series / Swedish Institute of Computer Science, SICS 04)

An Automatic Partial Evaluator for Full Prolog (Dissertation series / Swedish Institute of Computer Science, SICS 04)
An Automatic Partial Evaluator for Full Prolog (Dissertation series / Swedish Institute of Computer Science, SICS 04)
Title: An Automatic Partial Evaluator for Full Prolog (Dissertation series / Swedish Institute of Computer Science, SICS 04)
Authors: Dan Sahlin
Editorial: Swedish Institute of Computer Science
Buy this book in

Thesis (Ph. D.)--Royal Institute of Technology (Stockholm), 1991.

Concurrent Prolog - Vol. 1: Collected Papers (Logic Programming)

Concurrent Prolog - Vol. 1: Collected Papers (Logic Programming)
Concurrent Prolog - Vol. 1: Collected Papers (Logic Programming)
Title: Concurrent Prolog - Vol. 1: Collected Papers (Logic Programming)
Authors:
Editorial: The MIT Press
Buy this book in

Concurrent Prolog brings together for the first time descriptions of the major concurrent logic programming languages proposed so far for future parallel computer systems. In particular, it describes the concurrent logic programming language Flat Concurrent Prolog, a comprehensive and radical approach to parallel computing that is based on a simple foundation.

After surveying recent research in concurrent logic programming languages, these two volumes address all of the relevant aspects of constructing such a parallel computer system. They investigate how systems programming and the implementation of parallel algorithms can be carried out with this language; how advanced program development techniques can be applied; how to embed other high-level languages in it; and how to implement this language efficiently on sequential and parallel computers. The results of these investigations suggest that Flat Concurrent Prolog can serve as a general-purpose high-level machine language for parallel computers.

Ehud Y. Shapiro is Senior Scientist, Department of Applied Mathematics, Weizmann Institute of Science. Concurrent Prolog is included in his Logic Programming series. Much of the research describe in the book was stimulated by the Fifth Generation project and cross-fertilization between the authors and ICOT.

The Art of Prolog: Programming Examples - Macintosh (Logic Programming)

The Art of Prolog: Programming Examples - Macintosh (Logic Programming)
The Art of Prolog: Programming Examples - Macintosh (Logic Programming)
Title: The Art of Prolog: Programming Examples - Macintosh (Logic Programming)
Authors: Leon Sterling , Ehud Y. Shapiro
Editorial: The MIT Press
Buy this book in

Programming examples include exercises in the text; does not include programming language.

The Prolog Workbook: A Tutorial Approach with SW1 Prolog

The Prolog Workbook: A Tutorial Approach with SW1 Prolog
The Prolog Workbook: A Tutorial Approach with SW1 Prolog
Title: The Prolog Workbook: A Tutorial Approach with SW1 Prolog
Authors: Peter Coxhead , Attila Csenki
Editorial: Springer
Buy this book in

In the past it was appropriate for students to be provided in the lectures with a firm theoretical foundation and then be given the opportunity to practice the material in their lab classes and tutorials. However, current experience suggests that the teaching of computer languages is now best pursued by carefully interweaving theory with practical examples and hands-on student activities. The book is intended to support such an approach; indeed, the core material for the book has grown out of lecture handouts. In addition to this material, an extra section will be added on Prolog for Natural Language Processing. At 29 UK universities that teach artificial intelligence, 86% of them taught Prolog either at undergraduate or master’s level as part of the course. The language is inference-oriented rather than object-oriented.

Logic with Prolog (Oxford Applied Mathematics and Computing Science Series)

Logic with Prolog (Oxford Applied Mathematics and Computing Science Series)
Logic with Prolog (Oxford Applied Mathematics and Computing Science Series)
Title: Logic with Prolog (Oxford Applied Mathematics and Computing Science Series)
Authors: Peter Gibbins
Editorial: Oxford University Press, USA
Buy this book in

This book is an introduction to the essential ideas of formal logic and to the new field of logic programming, which is beginning to have an impact on the traditional area of conventional software engineering. Logical concepts and how they may be implemented in the logic programming language Prolog are emphasized. The authors discuss parsers, pretty-printers, programming language interpreters, interactive proof-checkers, theorem-provers of various kinds, and implements versions of Prolog. The early part of the book deals with Prolog as a programming language, and how it can be used. The core of the book deals with the propositional and predicate calculi, which are treated conventionally, via natural deduction systems. The theory behind automatic theorem-proving is sketched. The last two chapters examine the logic of a specified small programming imperative language and the restricted logic of real Prolog. Philosophical questions are also considered.

Techniques of Prolog Programming with Implementation of Logical Negation and Quantified Goals

Techniques of Prolog Programming with Implementation of Logical Negation and Quantified Goals
Techniques of Prolog Programming with Implementation of Logical Negation and Quantified Goals
Title: Techniques of Prolog Programming with Implementation of Logical Negation and Quantified Goals
Authors: T. Van Le
Editorial: Wiley
Buy this book in

Approaches the subject by applying the format used in successful language courses. Offers a comprehensive exhibition of Prolog programming techniques in four stages--declarative, procedural, advanced and meta-programming. Presents simple and efficient implementation of logical negation and quantified goals which are necessary in expert systems. The dynamics of these new features are shown in the construction of a multilingual expert system shell that supports negative and quantified queries as well as subtypes. The easy-to-follow tutorial style and numerous fully-solved exercises facilitate understanding. Comes with 3.5 inch disk containing all programs in the book.

The Practice of Prolog (Logic Programming)

The Practice of Prolog (Logic Programming)
The Practice of Prolog (Logic Programming)
Title: The Practice of Prolog (Logic Programming)
Authors:
Editorial: The MIT Press
Buy this book in

Addressed to readers at different levels of programming expertise, The Practice of Prolog offers a departure from current books that focus on small programming examples requiring additional instruction in order to extend them to full programming projects. It shows how to design and organize moderate to large Prolog programs, providing a collection of eight programming projects, each with a particular application, and illustrating how a Prolog program was written to solve the application. These range from a simple learning program to designing a database for molecular biology to natural language generation from plans and stream data analysis.

Leon Sterling is Associate Professor in the Department of Computer Engineering and Science at Case Western Reserve University. He is the coauthor, along with Ehud Shapiro, of The Art of Prolog.

Contents: A Simple Learning Program, Richard O'Keefe. Designing a Prolog Database for Molecular Biology, Ewing Lusk, Robert Olson, Ross Overbeek, Steve Tuecke. Parallelizing a Pascal Compiler, Eran Gabber. PREDITOR: A Prolog-Based VLSI Editor, Peter B. Reintjes. Assisting Register Transfer Level Hardware Design, Paul Drongowski. Design and Implementation of a Partial Evaluation System, Arun Lakhotia, Leon Sterling. Natural Language Generation from Plans, Chris Mellish. Stream Data Analysis in Prolog, Stott Parker.

Prolog Programming for Students: With Expert Systems and Artificial Intelligence Topics

Prolog Programming for Students: With Expert Systems and Artificial Intelligence Topics
Prolog Programming for Students: With Expert Systems and Artificial Intelligence Topics
Title: Prolog Programming for Students: With Expert Systems and Artificial Intelligence Topics
Authors: David Callear
Editorial: Cengage Learning Business Press
Buy this book in

This book covers all that is needed by students on a one-year introductory Prolog course at first or second year degree level. It introduces Prolog to students as simply and painlessly as possible. Where Artificial Intelligence (AI) topics are introduced, they are easier ones and are treated simply. This book is Prolog for Students, with examples from AI, not a book on AI using Prolog. The text assumes access to a suitable, good, Prolog interpreter, such as LPA Prolog. It also assumes that students with an aptitude for research will follow it up with more advanced study, perhaps a third or fourth year option, and further reading suggestions are included. The book is organised with the basics of the subject introduced first, and covered gradually, so they can be fully understood before moving on to harder topics. The topics that students find more difficult, such as recursion and lists, are not covered until about half way through the book. There are many in-text questions, student self-testing questions and programming practice exercises throughout the book. If used to accompany a taught course, the material of one chapter can be covered in each week.

The Craft of Prolog (Logic Programming)

The Craft of Prolog (Logic Programming)
The Craft of Prolog (Logic Programming)
Title: The Craft of Prolog (Logic Programming)
Authors: Richard O'Keefe
Editorial: The MIT Press
Buy this book in

Hacking your program is no substitute for understanding your problem. Prolog is different, but not that different. Elegance is not optional. These are the themes that unify Richard O'Keefe's very personal statement on how Prolog programs should be written. The emphasis in The Craft of Prolog is on using Prolog effectively. It presents a loose collection of topics that build on and elaborate concepts learned in a first course. These may be read in any order following the first chapter, "Basic Topics in Prolog," which provides a basis for the rest of the material in the book.

Contents: Basic Topics in Prolog. Searching. Where Does the Space Go? Methods of Programming. Data Structure Design. Sequences. Writing Interpreters. Some Notes on Grammar Rules. Prolog Macros. Writing Tokenisers in Prolog. All Solutions.