Certified Programming with Dependent Types A Pragmatic Introduction to the Coq Proof Assistant

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...

Full description

Saved in:
Bibliographic Details
Main Author: Chlipala, Adam (auth)
Format: Electronic Book Chapter
Language:English
Published: Cambridge The MIT Press 2013
Series:The MIT Press
Subjects:
Online Access:DOAB: download the publication
DOAB: description of the publication
Tags: Add Tag
No Tags, Be the first to tag this record!

MARC

LEADER 00000naaaa2200000uu 4500
001 doab_20_500_12854_78523
005 20220221
003 oapen
006 m o d
007 cr|mn|---annan
008 20220221s2013 xx |||||o ||| 0|eng d
020 |a mitpress/9153.001.0001 
020 |a 9780262317870 
020 |a 9780262026659 
040 |a oapen  |c oapen 
024 7 |a 10.7551/mitpress/9153.001.0001  |c doi 
041 0 |a eng 
042 |a dc 
072 7 |a UMS  |2 bicssc 
100 1 |a Chlipala, Adam  |4 auth 
245 1 0 |a Certified Programming with Dependent Types  |b A Pragmatic Introduction to the Coq Proof Assistant 
260 |a Cambridge  |b The MIT Press  |c 2013 
300 |a 1 electronic resource (440 p.) 
336 |a text  |b txt  |2 rdacontent 
337 |a computer  |b c  |2 rdamedia 
338 |a online resource  |b cr  |2 rdacarrier 
490 1 |a The MIT Press 
506 0 |a Open Access  |2 star  |f Unrestricted online access 
520 |a 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. 
540 |a Creative Commons  |f by-nc-nd/4.0  |2 cc  |4 http://creativecommons.org/licenses/by-nc-nd/4.0 
546 |a English 
650 7 |a Mobile & handheld device programming / Apps programming  |2 bicssc 
653 |a Computer programming / software engineering 
856 4 0 |a www.oapen.org  |u https://doi.org/10.7551/mitpress/9153.001.0001  |7 0  |z DOAB: download the publication 
856 4 0 |a www.oapen.org  |u https://directory.doabooks.org/handle/20.500.12854/78523  |7 0  |z DOAB: description of the publication