9780521879408

Programming with Higher-Order Logic

by
  • ISBN13:

    9780521879408

  • ISBN10:

    052187940X

  • Format: Hardcover
  • Copyright: 2012-06-11
  • Publisher: Cambridge University Press
  • Purchase Benefits
  • Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $56.99 Save up to $1.71
  • Buy New
    $55.28
    Add to Cart Free Shipping

    SPECIAL ORDER: 1-2 WEEKS

Supplemental Materials

What is included with this book?

  • The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.
  • The eBook copy of this book is not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Summary

Formal systems that describe computations over syntactic structures occur frequently in computer science. Logic programming provides a natural framework for encoding and animating such systems. However, these systems often embody variable binding, a notion that must be treated carefully at a computational level. This book aims to show that a programming language based on a simply typed version of higher-order logic provides an elegant, declarative means for providing such a treatment. Three broad topics are covered in pursuit of this goal. First, a proof-theoretic framework that supports a general view of logic programming is identified. Second, an actual language called Prolog is developed by applying this view to higher-order logic. Finally, a methodology for programming with specifications is exposed by showing how several computations over formal objects such as logical formulas, functional programs, and -terms and -calculus expressions can be encoded in Prolog.

Table of Contents

First-order terms and representations of data
First-order horn clauses
First-order hereditary Harrop formulas
Typed lambda terms and formulas
Using quantification at higher-order types
Mechanisms for structuring large programs
Computations over -terms
Unification of -terms
Implementing proof systems
Computations over functional programs
Encoding a process calculus language
Appendix. The Teyjus system
Table of Contents provided by Publisher. All Rights Reserved.

Rewards Program

Write a Review