Ehud Y. Shapiro

Ehud Y. Shapiro is Senior Scientist, Department of Applied Mathematics, Weizmann Institute of Science.

  • The Art of Prolog, Second Edition

    The Art of Prolog, Second Edition

    Advanced Programming Techniques

    Leon S. Sterling and Ehud Y. Shapiro

    This new edition of The Art of Prolog contains a number of important changes. Most background sections at the end of each chapter have been updated to take account of important recent research results, the references have been greatly expanded, and more advanced exercises have been added which have been used successfully in teaching the course.

    Part II, The Prolog Language, has been modified to be compatible with the new Prolog standard, and the chapter on program development has been significantly altered: the predicates defined have been moved to more appropriate chapters, the section on efficiency has been moved to the considerably expanded chapter on cuts and negation, and a new section has been added on stepwise enhancement—a systematic way of constructing Prolog programs developed by Leon Sterling. All but one of the chapters in Part III, Advanced Prolog Programming Techniques, have been substantially changed, with some major rearrangements. A new chapter on interpreters describes a rule language and interpreter for expert systems, which better illustrates how Prolog should be used to construct expert systems. The chapter on program transformation is completely new and the chapter on logic grammars adds new material for recognizing simple languages, showing how grammars apply to more computer science examples.

    • Hardcover $85.00 £70.00
    • Paperback $85.00 £70.00
  • Concurrent Prolog, 2-vol. set

    Collected Papers

    Ehud Y. Shapiro

    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.

    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.

    • Hardcover $100.00
  • Concurrent Prolog, Volume 1

    Collected Papers

    Ehud Y. Shapiro

    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.

    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.

    • Hardcover $49.50
  • Concurrent Prolog, Volume 2

    Collected Papers

    Ehud Y. Shapiro

    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.

    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.

    • Hardcover $55.00
  • Algorithmic Program Debugging

    Algorithmic Program Debugging

    Ehud Y. Shapiro

    Productively combines elements of programming languages, environments, logic, and inductive inference to produce effective debugging aids. Its use of the PROLOG language provides an efficient implementation of the debugging algorithms.

    • Hardcover $37.50
    • Paperback $35.00 £28.00

Contributor

  • Logic Programming

    Logic Programming

    Proceedings of the 1999 International Conference on Logic Programming

    Danny De Schreye

    Includes tutorials, lectures, and refereed papers on all aspects of logic programming, including theoretical foundations, constraints, concurrency and parallelism, deductive databases, language design and implementation, nonmonotonic reasoning, and logic programming and the Internet.

    The International Conference on Logic Programming, sponsored by the Association for Logic Programming, includes tutorials, lectures, and refereed papers on all aspects of logic programming, including theoretical foundations, constraints, concurrency and parallelism, deductive databases, language design and implementation, nonmonotonic reasoning, and logic programming and the Internet.

    • Paperback $95.00 £78.00
  • Logic Programming

    Logic Programming

    Proceedings of the 1998 Joint International Conference and Symposium on Logic Programming

    Joxan Jaffar

    Includes tutorials, lectures, and refereed papers on all aspects of logic programming,

    The Joint International Conference and Symposium on Logic Programming, sponsored by the Association for Logic Programming, includes tutorials, lectures, and refereed papers on all aspects of logic programming, including theoretical foundations, constraints, concurrency and parallelism, deductive databases, language design and implementation, nonmonotonic reasoning, and logic programming and the Internet.

    • Paperback $95.00 £78.00
  • Logic Programming

    Logic Programming

    The 1997 International Symposium

    Jan Maluszyński

    The themes of the 1997 conference are new theoretical and practical accomplishments in logic programming, new research directions where ideas originating from logic programming can play a fundamental role, and relations between logic programming and other fields of computer science.

    The annual International Logic Programming Symposium, traditionally held in North America, is one of the main international conferences sponsored by the Association of Logic Programming. The themes of the 1997 conference are new theoretical and practical accomplishments in logic programming, new research directions where ideas originating from logic programming can play a fundamental role, and relations between logic programming and other fields of computer science. Topics include theoretical foundations, constraints, concurrency and parallelism, deductive databases, language design and implementation, nonmonotonic reasoning, and logic programming and the Internet.

    • Paperback $105.00 £86.00
  • Logic Programming

    Logic Programming

    The 14th International Conference

    Lee Naish

    Covers the latest research in areas such as theoretical foundations, constraints, concurrency and parallelism, deductive databases,language design and implementation, non-monotonic reasoning, and logicprogramming and the Internet.

    8-12 July 1997, Leuven, Belgium The International Conference on Logic Programming is the main annual conference sponsored by the Association for Logic Programming. It covers the latest research in areas such as theoretical foundations, constraints, concurrency and parallelism, deductive databases, language design and implementation, non-monotonic reasoning, and logic programming and the Internet.

    • Paperback $20.75 £16.99
  • Logic Programming

    Logic Programming

    Proceedings of the 1996 Joint International Conference and Symposium on Logic Programming

    Michael Maher

    Includes tutorials, invited lectures, and refereed papers on all aspects of logic programming including: Constraints, Concurrency and Parallelism, Deductive Databases, Implementations, Meta and Higher-order Programming, Theory, and Semantic Analysis.

    September 2-6, 1996, Bonn, Germany Every four years, the two major international scientific conferences on logic programming merge in one joint event. JICSLP'96 is the thirteenth in the two series of annual conferences sponsored by The Association for Logic Programming. It includes tutorials, invited lectures, and refereed papers on all aspects of logic programming including: Constraints, Concurrency and Parallelism, Deductive Databases, Implementations, Meta and Higher-order Programming, Theory, and Semantic Analysis. The contributors are international, with strong contingents from the United States, United Kingdom, France, and Japan. Logic Programming series, Research Reports and Notes

    • Paperback $95.00 £78.00
  • Inductive Logic Programming

    Inductive Logic Programming

    From Machine Learning to Software Engineering

    Francesco Bergadano and Daniele Gunetti

    Although Inductive Logic Programming (ILP) is generally thought of as a research area at the intersection of machine learning and computational logic, Bergadano and Gunetti propose that most of the research in ILP has in fact come from machine learning, particularly in the evolution of inductive reasoning from pattern recognition, through initial approaches to symbolic machine learning, to recent techniques for learning relational concepts. In this book they provide an extended, up-to-date survey of ILP, emphasizing methods and systems suitable for software engineering applications, including inductive program development, testing, and maintenance. Inductive Logic Programming includes a definition of the basic ILP problem and its variations (incremental, with queries, for multiple predicates and predicate invention capabilities), a description of bottom-up operators and techniques (such as least general generalization, inverse resolution, and inverse implication), an analysis of top-down methods (mainly MIS and FOIL-like systems), and a survey of methods and languages for specifying inductive bias. Logic Programming series

    • Hardcover $52.00 £42.00
  • Logic Programming

    Logic Programming

    The 1995 International Symposium

    John W. Lloyd

    The theme for the 1995 conference is "Declarative Systems," particularly the integration of the logic programming, functional programming, and object-oriented programming paradigms.

    December 4-7, 1995, Portland, Oregon

    The International Logic Programming Symposium is one of two major international conferences sponsored by the Association of Logic Programming. It is held annually in North America. The theme for the 1995 conference is "Declarative Systems," particularly the integration of the logic programming, functional programming, and object-oriented programming paradigms. Logic Programming series, Research Reports and Notes

    • Paperback $105.00 £86.00
  • Meta-Logics and Logic Programming

    Meta-Logics and Logic Programming

    Krzysztof R. Apt and Franco Turini

    Investigating meta-programming within the logic programming paradigm, Meta-Logics and Logic Programming presents original research on an important extension of logic programming that makes it more amenable for knowledge representation and programming in general. The 12 contributions, many written especially for this book, explore the foundations, language design issues, and applications of meta-programming in logic programming. Meta-programming—the process of writing computer programs that can manipulate representations of other programs—has been key both in the foundations of computer science and in its practical developments. Examples of meta-programs include compilers, interpreters, program analyzers, and partial evaluators. The choice of logic programming as a basis for meta-programming offers several practical and theoretical advantages: among them, the possibility of tackling critical foundational problems of meta-programming within a strong theoretical framework, and the surprising ease of programming. The usual framework of logic programming (and more generally first-order logic), however, has to be modified and extended to formally deal with meta-programs, extensions the editors call "meta-logics." Along with an exploration of meta-programming in logic programming, the definitions, formal properties, and use of these extensions constitute one of the book's main themes. The first part of the book, Foundations, focuses on the representation problem—how object programs are represented within meta-programs. The second part, Language Support for Meta-Logics, is concerned with language extensions that make meta-programming easier and more elegant. The third part, Meta-Logics for Knowledge Management, deals with the use of meta-logic for advanced knowledge representation purposes.

    • Hardcover $52.95
    • Paperback $45.00 £38.00
  • Logic Programming

    Logic Programming

    The 12th International Conference

    Leon S. Sterling

    Topics covered: Theoretical Foundations. Higher-Order Logics. Non-Monotonic Reasoning. Programming Methodology. Programming Environments. Extensions to Logic Programming. Constraint Satisfaction. Meta-Programming. Language Design and Constructs. Implementation of Logic Programming Languages. Compilation Techniques. Architectures. Parallelism. Reasoning about Programs. Deductive Databases. Applications.

    13-16 June 1995, Tokyo, Japan ICLP, which is sponsored by the Association for Logic Programming, is one of two major annual international conferences reporting recent research results in logic programming. Logic programming originates from the discovery that a subset of predicate logic could be given a procedural interpretation which was first embodied in the programming language, Prolog. The unique features of logic programming make it appealing for numerous applications in artificial intelligence, computer-aided design and verification, databases, and operations research, and for exploring parallel and concurrent computing. The last two decades have witnessed substantial developments in this field from its foundation to implementation, applications, and the exploration of new language designs.

    Topics covered: Theoretical Foundations. Higher-Order Logics. Non-Monotonic Reasoning. Programming Methodology. Programming Environments. Extensions to Logic Programming. Constraint Satisfaction. Meta-Programming. Language Design and Constructs. Implementation of Logic Programming Languages. Compilation Techniques. Architectures. Parallelism. Reasoning about Programs. Deductive Databases. Applications. Logic Programming series, Research Reports and Notes

    • Paperback $95.00 £78.00
  • Logic Programming

    Logic Programming

    The 1994 International Symposium

    Maurice Bruynooghe

    November 13-17, 1994, Ithaca, New York The 1994 International Logic Programming Symposium is one of two major international conferences sponsored by the Association of Logic Programming. It is held annually in North America. Theses tutorials, invited lectures, and refereed papers cover all aspects of logic programming including constraints, concurrency and parallelism, deductive databases, implementations and architectures, metaprogramming and higher-order programming, proof theory, and semantic analysis. Logic Programming series, Research Reports and Notes

    • Paperback $75.00
  • The Gödel Programming Language

    The Gödel Programming Language

    Patricia Hill and John W. Lloyd

    This book gives a tutorial overview of Gödel, presents example programs, provides a formal definition of the syntax and semantics of the language, and covers background material on logic.

    Gödel is a new, general-purpose, declarative programming language that is based on the paradigm of logic programming and can be regarded as a successor to Prolog. This book gives a tutorial overview of Gödel, presents example programs, provides a formal definition of the syntax and semantics of the language, and covers background material on logic. The Gödel language supports types and modules. It has a rich collection of system modules and provides constraint solving in several domains. It also offers metalogical facilities that provide significant support for metaprograms that do analysis, transformation, compilation, verification, debugging, and the like. The declarative nature of Gödel makes it well suited for use as a teaching language, narrows the gap that currently exists between theory and practice in logic programming, makes possible advanced software engineering tools such as declarative debuggers and compiler generators, reduces the effort involved in providing a parallel implementation of the language, and offers substantial scope for parallelization in such implementations. Logic Programming series

    • Hardcover $70.00 £58.00
    • Paperback $65.00 £55.00
  • A Grammatical View of Logic Programming

    A Grammatical View of Logic Programming

    Pierre Deransart and Jan Maluszyński

    This book describes a complementary approach that views logic programs as grammars and shows how this new presentation of the foundations of logic programming, based on the notion of proof trees, can enrich the field.

    Within the field of logic programming there have been numerous attempts to transform grammars into logic programs. This book describes a complementary approach that views logic programs as grammars and shows how this new presentation of the foundations of logic programming, based on the notion of proof trees, can enrich the field. The authors' approach facilitates discussion of grammatical aspects of, and introduces new kinds of semantics for, definite programs. They survey relevant grammatical formalisms and provide a comprehensive introduction to the well-known attribute grammars and van Wijngaarden grammars. A formal comparison of definite programs to these grammars allows the authors to identify interesting grammatical concepts. The book also includes a presentation of verification methods for definite programs derived from verification methods for attribute grammars, and an analysis of the occur-check problem as an example of how the grammatical view of logic programming can be applied.

    Contents Preliminaries • Foundations • Grammatical Extensions of Logic Programs • Attribute Grammars • Attribute Grammars and Logic Programming • Proof Methods • Study of Declarative Properties • The Occur-check Problem

    • Hardcover $75.00
    • Paperback $40.00 £32.00
  • Logic Programming

    Logic Programming

    Proceedings of the 1993 International Symposium October 26–29, 1993, Vancouver, British Columbia

    Dale Miller

    Logic programming continues to develop by broadening its foundations, exploring new language designs, and establishing more connections with other areas of computer science.

    The past years have seen a large number of effective implementations of logic programs for a variety of computer architectures in numerous application areas. Logic programming continues to develop by broadening its foundations, exploring new language designs, and establishing more connections with other areas of computer science.

    Topics include: Algorithmic Analysis. Constraints. Environmental Support. Natural Language. Programming Methodologies. Artificial Intelligence. Concurrency and Parallelism. Logical Extensions. Meta and Higher-Order Programming. Semantic Analysis. Compilation Techniques. Deductive Databases. Implementations and Architectures. Proof Theory. Programming Language Design.

    • Paperback $82.50
  • Constraint Logic Programming

    Constraint Logic Programming

    Selected Research

    Frédéric Benhamou and Alain Colmerauer

    This collection presents the best of current work on all aspects of constraint logic programming languages, from theory through language implementation.

    Constraint logic programming, the notion of computing with partial information, is becoming recognized as a way of dramatically improving on the current generation of programming languages. This collection presents the best of current work on all aspects of constraint logic programming languages, from theory through language implementation. Beginning in the mid-1980s constraint logic programming became a powerful and essential theoretical concept whose first practical application was the development of efficient programming languages based on Prolog. Benhamou and Colmerauer have taken care to illustrate the strong links between current research and existing CLP languages. The first part of the book focuses on significant theoretical studies that propose general models for constraint programming, and the two following parts develop current ideas on themes derived from these languages (numerical constraints, Booleans, and other finite domains). The concluding part on CLP language design gathers work on original constraints and on top-level implementation.

    • Hardcover $90.00 £75.00
    • Paperback $45.00 £38.00
  • Logic Programming

    Logic Programming

    Proceedings of the Tenth International Conference on Logic Programming June 21-24, 1993, Budapest, Hungary

    David S. Warren

    The Tenth International Conference on Logic Programming, sponsored by the Association for Logic Programming, is a major forum for presentations of research, applications, and implementations in this important area of computer science. Logic programming is one of the most promising steps toward declarative programming and forms the theoretical basis of the programming language Prolog and it svarious extensions. Logic programming is also fundamental to work in artificial intelligence, where it has been used for nonmonotonic and commonsense reasoning, expert systems implementation, deductive databases, and applications such as computer-aided manufacturing.

    Topics Theory and Foundations • Programming Methodologies and Tools • Meta and Higher-order Programming • Parallelism • Concurrency • Deductive Databases • Implementations and Architectures • Applications • Artificial Intelligence • Constraints • Partial Deduction • Bottom-Up Evaluation • Compilation Techniques

    • Paperback $20.75 £16.99
  • Concurrent Constraint Programming

    Concurrent Constraint Programming

    Vijay A. Saraswat

    Concurrent Constraint Programming introduces a new and rich class of programming languages based on the notion of computing with partial information, or constraints, that synthesize and extend work on concurrent logic programming and that offer a promising approach for treating thorny issues in the semantics of concurrent, nondeterministic programming languages.

    Saraswat develops an elegant and semantically tractable framework for computing with constraints, emphasizing their importance for communication and control in concurrent, programming languages. He describes the basic paradigm, illustrates its structure, discusses various augmentations, gives a simple implementation of a concrete language, and specifies its connections with other formalisms. In this framework, concurrently executing agents communicate by placing and checking constraints on shared variables in a common store. The major form of concurrency control in the system is through the operations of Atomic Tell—an agent may instantaneously place constraints only if they are consistent with constraints that have already been placed—and Blocking Ask—an agent must block when it checks a constraint that is not yet known to hold. Other operations at a finer granularity of atomicity are also presented.

    Saraswat introduces and develops the concurrent constraint family of programming languages based on these ideas, shows how various constraint systems can naturally realize data structures common in computer science, and presents a formal operational semantics for many languages in the concurrent constraint family. In addition, he provides a concrete realization of the paradigm on a sequential machine by presenting a compiler for the concurrent constraint language Herbrand and demonstrates a number of constraint-based concurrent programming techniques that lead to novel presentations of algorithms for many concurrent programming problems.

    • Hardcover $17.75 £14.99
    • Paperback $40.00 £32.00
  • Logic Programming Languages

    Logic Programming Languages

    Constraints, Functions, and Objects

    Krzysztof R. Apt, J. W. de Bakker, and J. M. Rutten

    This collection of current research on logic programming languages presents results from a three-year, ESPRIT-funded effort to explore the integration of the foundational issues of functional, logic, and object-oriented programming. It offers valuable insights into the fast-developing extensions of logic programming with functions, constraints, concurrency, and objects. Chapters are grouped according to the unifying themes of functional programming, constraint, logic programming, and object-oriented programming.

    • Hardcover $36.95 £30.00
    • Paperback $30.00 £25.00
  • Logic Programming

    The Joint [9th] International Conference & Symposium

    Krzysztof R. Apt

    The Joint International Conference on Logic Programming, sponsored by the Association for Logic Programming, is a major forum for presentations of research, applications, and implementations in this important area of computer science. Logic programming is one of the most promising steps toward declarative programming and forms the theoretical basis of the programming language Prolog and its various extensions. Logic programming is also fundamental to work in artificial intelligence, where it has been used for nonmonotonic and commonsense reasoning, expert systems implementation, deductive databases, and applications such as computer-aided manufacturing.

    Topics Theory Foundations • Programming Languages • Implementation • Programming Methodologies and Tools • Applications • Deductive Databases • Artificial Intelligence • Parallelism

    • Paperback $75.00
  • Types in Logic Programming

    Types in Logic Programming

    Frank Pfenning

    This collection of original research papers assesses and summarizes the impact of types on logic programming.

    Type theory is a well-established branch of theoretical computer science that has played an important role in the development of imperative and functional programming languages. This collection of original research papers assesses and summarizes the impact of types on logic programming. It covers all of the major themes in this burgeoning field, including simple types, regular tree types, polymorphic types, subtypes, and dependent types. Language design issues as well as semantics, pragmatics, and applications of types are discussed.The benefits that type considerations have to offer logic programming are being increasingly realized: through type checking many errors can be caught before a program is run, resulting in more reliable programs; types form an expressive basis for module systems, since they prescribe a machine-verifiable interface for the code encapsulated within a module; and types may be used to improve performance of code generated by a compiler. The research in this collection describes these benefits as well as important differences in the impact of types in functional and logic programming.

    • Hardcover $62.00 £50.00
    • Paperback $30.00 £25.00
  • Foundations of Disjunctive Logic Programming

    Jorge Lobo, Jack Minker, and Arcot Rajasekar

    This monograph provides an intensive course for graduate students in computer science, as well as others interested in extensions of logic programming, on the theoretical foundations of disjunctive logic programming. Disjunctive logic programming permits the description of indefinite or incomplete information through a disjunction of atoms in the head of a clause. The authors describe model theoretic semantics, proof theoretic semantics, and fix point semantics for disjunctive and normal disjunctive programs (a normal disjunctive program permits negated atoms in the body of a clause) and present theories of negation. They conclude with selected applications to knowledge databases.

    Contents Introduction and Background • Definitions and Terminology • Declarative Semantics • Proof Theory • Negation • Weak Negation • Normal Logic Programs • Procedural Semantics: Normal Programs • Disjunctive Databases • Applications

    • Hardcover $13.75 £10.99
  • Logic Programming

    Proceedings of the 1991 International Symposium

    Vijay A. Saraswat and Kazunori Ueda

    October 28-31, 1991, San Diego, California

    October 28-31, 1991, San Diego, California

    Previously called The North American Conference, the 1991 International Symposium complements the International Conference on Logic Programming held annually in June. Both are sponsored by the Association for Logic Programming.

    Topics covered: Foundations. Languages and Programming. Implementation. Reasoning about Programs. Applications. Logic Databases.

    • Paperback $85.00
  • Warren's Abstract Machine

    Warren's Abstract Machine

    A Tutorial Reconstruction

    Hassan Aït-Kaci

    This tutorial demystifies 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 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.

    Contents Introduction • Unification—Pure and Simple • Flat Resolution • Prolog • Optimizing the Design • Conclusion • Appendixes

    • Hardcover $30.00
    • Paperback $25.00 £20.00
  • Parallel Logic Programming

    Evan Tick

    Parallel Logic Programming brings to light practical applications of a previously esoteric/theoretical area of parallel logic programming and is unique in presenting programming hand-in-hand with performance analysis of real empirical measurements.

    Highly parallel machines have been available for many years but, because advances in hardware have always outpaced progress in software development, designers and users of these machines have yet to realize their full potential. Until recently there have been few, if any, high-class parallel programming languages that could be implemented on the wide variety of parallel processing systems in use. This book helps to redress the balance by teaching programming techniques as well as performance analysis of parallel programming languages and architectures using logic programming; specifically, it focuses on the Prolog-like languages OR-parallel Prolog and AND-parallel FGHC. Parallel Logic Programming brings to light practical applications of a previously esoteric/theoretical area of parallel logic programming and is unique in presenting programming hand-in-hand with performance analysis of real empirical measurements. Its quantitative approach to symbolic parallel programming provides students and professionals with tools for implementing and critically evaluating larger projects. The book includes useful chapter summaries, programming projects, and a glossary.

    • Hardcover $55.00
  • Logic Programming

    Proceedings of the Eighth International Conference

    Koichi Furukawa

    June 25-28, 1991 Paris, France

    June 25-28, 1991 Paris, France

    Topics covered: Theory and Foundations. Applications. Implementation, Machines, and Architectures. Parallel Execution. Programming Methodology and Tools. Logical Languages for Parallelism. Relations with Software Engineering. Relations with Deductive Databases. Relations with Artificial Intelligence. Extensions, Constraints.

    • Paperback $85.00
  • Eco-Logic

    Logic-Based Approaches to Ecological Modeling

    Alan Bundy, Mandy Haggith, Robert Muetzelfeldt, David Robertson, and Michael Uschold

    In Eco-Logic, the authors describe an alternative approach, one that views simulation models as logical statements.

    When applied to problems in poorly structured domains such as government decision making, conventional methods for simulating - for example, a controversial problem like acid rain - prove to be flawed. In Eco-Logic, the authors describe an alternative approach, one that views simulation models as logical statements. Using the techniques of logic programming, they provide a standard notation for the construction of ecological simulation programs that can be readily understood by those who lack modeling, mathematical, or programming skills.

    The authors demonstrate this approach in the domain of ecological modeling by building a series of computer programs to assist ecologists to build simulation models. They show how the description of an ecological situation can be represented and then incrementally refined into a simulation model. This enables ecologists to describe problems initially in ecological terms, rather than in mathematical or programming terms. It also enables the final model to be formally related to the original ecological description. This permits a computer program to give ecologically meaningful explanations of the results of the model, and facilitates rapid remodeling if the underlying assumptions of the model are modified.

    • Hardcover $45.00
  • Logic Programming

    Proceedings of the North American Conference 1990

    Saumya Debray and Manuel Hermenegildo

    OCTOBER 29 - NOVEMBER 1, 1990, AUSTIN, TEXAS

    OCTOBER 29 - NOVEMBER 1, 1990, AUSTIN, TEXASTheory and Foundations. Metaprogramming. Constraints. Implementations, Architecture. Deductive Databases. Language Issues. Relation to Other Paradigms. Parallelism, Concurrency. Compilation Techniques. Applications.

    • Paperback $60.00
  • The Practice of Prolog

    The Practice of Prolog

    Leon S. Sterling

    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.

    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

    • Hardcover $65.00 £55.00
    • Paperback $35.00 £28.00
  • The Craft of Prolog

    The Craft of Prolog

    Richard O'Keefe

    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.

    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.

    Richard A. O'Keefe is Lecturer in the Department of Computer Science at the Royal Melbourne Institute of Technology. He is also a consultant to Quintus Computer Systems, Inc.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.

    • Hardcover $75.00 £62.00
    • Paperback $50.00 £40.00
  • Logic Programming

    Proceedings of the The 7th International Conference

    David H.D. Warren and Peter Szeredi

    JUNE 18-22, 1990, JERUSALEM, ISRAEL

    JUNE 18-22, 1990, JERUSALEM, ISRAELApplications. Implementation. Machines. Programming Methodology and Tools. Theory and Foundations. Deductive Databases. Languages. Parallel Execution. Relations with Artificial Intelligence.

    • Paperback $95.00
  • Logic Programming, 2-vol. set

    The 1989 North American Conference

    Ewing Lusk and Ross A. Overbeek

    The contributors take up applications of logic programming, logic programming and databases, theory of logic and functional programming, parallel executing of logic programs, implementation of logic programming systems, and inference machines.Logic Programming: Proceedings of the, North American Conference 1989 is included in the series Logic Programming Research Reports and Notes, edited by Ehud Shapiro.

    Two-volume set.

    • Hardcover $85.00
  • Meta-Programming in Logic Programming

    Meta-Programming in Logic Programming

    Harvey Abramson and M H. Rogers

    A comprehensive survey of the theory and applications of meta-programming, covering problems of representation and of soundness and correctness of interpreters, analysis and evaluation of meta-logic programs, and applications to sophisticated knowledge-based systems.

    Meta-programs, which treat other computer programs as data, include compilers, editors, simulators, debuggers, and program transformers. Because of the wide ranging applications, meta-programming has become a subject of considerable practical and theoretical interest. This book provides the first comprehensive view of topics in the theory and application of meta-programming, covering problems of representation and of soundness and correctness of interpreters, analysis and evaluation of meta-logic programs, and applications to sophisticated knowledge-based systems.

    Meta-Programming in Logic Programming is in the series Logic Programming Research Reports and Notes, edited by Ehud Shapiro.

    • Paperback $65.00 £55.00
  • Logic Programming

    The 6th International Conference

    Giorgio Levi and Maurizio Martelli

    39 contributions cover a broad range of topics, including applications, architectures, complexity, concurrent languages, constraint languages, deductive databases, higher-order languages and extensions, language issues, program development tools and methodology, relations to other computational models, relations with artificial intelligence, sequential and parallel implementations, and theory and foundations

    These 39 contributions cover a broad range of topics, including applications, architectures, complexity, concurrent languages, constraint languages, deductive databases, higher-order languages and extensions, language issues, program development tools and methodology, relations to other computational models, relations with artificial intelligence, sequential and parallel implementations, and theory and foundations. Logic Programming: Proceedings of the Sixth International Conference is included in the series Logic Programming Research Reports and Notes, edited by Ehud Shapiro.

    • Paperback $60.00
  • Logic-Based Knowledge Representation

    Peter M. Jackson, Johannes Reichgelt, and Frank van Harmelen

    This book explores the building of expert systems using logic for knowledge representation and meta-level inference for control. It presents research done by members of the expert systems group of the Department of Artificial Intelligence in Edinburgh, often in collaboration with others, based on two hypotheses: that logic is a suitable knowledge representation language, and that an explicit representation of the control regime of the theorem prover has many advantages.The editors introduce these hypotheses and present the arguments in their favor They then describe Socrates' a tool for the construction of expert systems that is based on these assumptions. They devote the remaining chapters to the solution of problems that arise from the restrictions imposed by Socrates's representation language and from the system's inefficiency.The chapters dealing with the representation problem present a reified approach to temporal logic that makes it possible to use nonstandard logics without extending the system, and describe a general proof method for arbitrary modal logics. Those dealing with the efficiency problem discuss the technique of partial evaluation and its limitations, as well as another possible solution known as assertion-time inference.

    • Hardcover $50.00
  • Constraint Satisfaction in Logic Programming

    Pascal Van Hentenryck

    This book tackles classic problems from operations research and circuit design using a logic programming language embedding consistency techniques, a paradigm emerging from artificial intelligence research. Van Hentenryck proposes a new approach to solving discrete combinatorial problems using these techniques. Logic programming serves as a convenient language for stating combinatorial problems, but its "generate and test" paradigm leads to inefficient programs. Van Hentenryck's approach preserves one of the most useful features of logic programming - the duality of its semantics - yet allows a short development time for the programs while preserving most of the efficiency of special purpose programs written in a procedural language. Embedding consistency techniques in logic programming allows for ease and flexibility of programming and short development time because constraint propagation and tree-search programming are abstracted away from the user. It also enables logic programs to be executed efficiently as consistency techniques permit an active use of constraints to remove combinations of values that cannot appear in a solution Van Hentenryck presents a comprehensive overview of this new approach from its theoretical foundations to its design and implementation, including applications to real life combinatorial problems.The ideas introduced in Constraint Satisfaction in Logic Programming have been used successfully to solve more than a dozen practical problems in operations research and circuit design, including disjunctive scheduling, warehouse location, cutting stock car sequencing, and microcode labeling problems.

    Pascal Van Hentenryck is a member of the research staff at the European Computer Industry Research Centre. Constraint Satisfaction in Logic Programming is based on research for the Centre's CHIP project. As an outgrowth of this project, a new language (CHIP) that will include consistency techniques has been developed for commercial use. The book is included in the Logic Programming series edited by Ehud Shapiro.

    • Hardcover $40.00
  • Logic Programming, Volume 1

    The 5th International Conference & Symposium

    Robert A. Kowalski and Kenneth Bowen

    These two volumes collect papers presented at the first joint meeting of the two principal logic programming conferences, held in August of 1988.

    Two-volume set. These two volumes collect papers presented at the first joint meeting of the two principal logic programming conferences, held in August of 1988. The more than fifty contributions cover all aspects of the field, including applications (particularly those that exploit the unique character of logic programming), the role of logic programming in artificial intelligence, deductive databases, relations to other computational paradigms, language issues, methodology, implementations on sequential and parallel architectures, and theory. Logic Programming is included in the Logic Programming series Research Reports and Notes, edited by Ehud Shapiro.

    • Hardcover $85.00
    • Paperback $40.00
  • Logic Programming

    The 4th International Conference

    Jean Louis Lassez

    The 45 contributions in this book consider all aspects of logic programming.

    The 45 contributions in this book consider all aspects of logic programming, including theory and foundations; architectures and implementations; programming languages and methodology; databases; knowledge representation, reasoning, and expert systems; and relations to other computation models, programming languages, and programming methodologies. There are chapters on novel applications and on applications that address the unique character of logic programming. Invited speakers are Keith Clark (Imperial College, London), Herve Gallaire (ECRC, Munich), Fernando Pereira, (SRI International), K. R. Rao (University of Melbourne), J. Alan Robinson (Syracuse University), and Masahiko Sato (Tohoku University).

    Logic Programming: Proceedings of the Fourth International Conference is included in the series Logic Programming (Research Reports and Notes), edited by Ehud Shapiro. Two-volume set

    • Paperback $60.00 £50.00