Programming with Higher-Order Logic
| By: | Dale Miller; Gopalan Nadathur |
| Publisher: | Cambridge University Press |
| Print ISBN: | 9780521879408 |
| eText ISBN: | 9781139506298 |
| Edition: | 1 |
| Format: | Reflowable |
eBook Features
Instant Access
Purchase and read your book immediately
Read Offline
Access your eTextbook anytime and anywhere
Study Tools
Built-in study tools like highlights and more
Read Aloud
Listen and follow along as Bookshelf reads to you
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.