Explore

Certified Programming with Dependent Types
Adam Chlipala
2013
0 Ungluers have
Faved this Work
Login to Fave
A handbook to the Coq software for writing and checking mathematical proofs, with a practical engineering focus. The technology of mechanized program verification can play a supporting role in many kinds of research projects in computer science, and related tools for formal proof-checking are seeing increasing adoption in mathematics and engineering. This book provides an introduction to the Coq software for writing and checking mathematical proofs. It takes a practical engineering focus throughout, emphasizing techniques that will help users to build, understand, and maintain large Coq developments and minimize the cost of code change over time. Two topics, rarely discussed elsewhere, are covered in detail: effective dependently typed programming (making productive use of a feature at the heart of the Coq system) and construction of domain-specific proof tactics. Almost every subject covered is also relevant to interactive computer theorem proving in general, not just program verification, demonstrated through examples of verified programs applied in many different sorts of formalizations. The book develops a unique automated proof style and applies it throughout; even experienced Coq users may benefit from reading about basic Coq concepts from this novel perspective. The book also offers a library of tactics, or programs that find proofs, designed for use with examples in the book. Readers will acquire the necessary skills to reimplement these tactics in other settings by the end of the book. All of the code appearing in the book is freely available online.
This book is included in DOAB.
Why read this book? Have your say.
You must be logged in to comment.
Rights Information
Are you the author or publisher of this work? If so, you can claim it as yours by registering as an Unglue.it rights holder.Downloads
This work has been downloaded 15 times via unglue.it ebook links.
- 15 - pdf (CC BY-NC-ND) at Unglue.it.
Keywords
- Computer programming / software development
- Computer programming / software engineering
- Computing & information technology
- Mobile & handheld device programming / Apps programming
- thema EDItEUR::U Computing and Information Technology::UM Computer programming / software engineering::UMS Mobile and handheld device programming / Apps programming
Links
DOI: 10.7551/mitpress/9153.001.0001Editions
