Certified Programming with Dependent Types


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.
Download free tutorial in PDF (368 pages) created by Adam Chlipala .
Pages : 368
Size :
File type : HTML
Downloads: 148
Created: 2021-05-15
License: Free
Author(s): Adam Chlipala
Certified Programming with Dependent Types

Others Certified Programming Tutorials

Others related eBooks about Certified Programming with Dependent Types

Rational Cybersecurity for Business

Use the guidance in this comprehensive field guide to gain the support of your top executi..., download free Cybersecurity tutorial in PDF (333 pages) created by Dan Blum ....

Probability and Statistics: A Course for Physicists and Engineers

This book offers an introduction to concepts of probability theory, probability distributions relevant in the applied sciences, as well as basics of sampling distributions, estimation and hypothesis testing. As a companion for classes for engineers and scientists, the book also covers applied topi...

Web Application Security for Dummies - Qualys Limited Edition

Web application security may seem like a complex, daunting task. This book is a quick guide to understanding how to make your website secure. It surveys the best steps for establishing a regular program to quickly find vulnerabilities in your site with a web application scanner. ...

iOS Notes for Professionals

Do you want to understand all the facets of iOS programming and build complex iOS apps? Then you have come to the right place. This problem-solution guide will help you to eliminate expensive learning curves and focus on specific issues to make you proficient at tasks and the speed-up time involved....

Node.js Notes for Professionals

Download free course Node.js Notes for Professionals, pdf file on 333 pages by Stack Overflow Community....

Smooth CoffeeScript

Download free course Smooth CoffeeScript, pdf file on 231 pages by E. Hoigaard....

NGINX Unit Cookbook

Download free course NGINX Unit Cookbook, pdf file on 70 pages by Derek DeJonghe....

Tutorial Cryptography for Beginners

This tutorial is intended to novice who wants to be familiar with lattice based cryptography and cryptosystem....

Contextual Process Digitalization

Download free course Contextual Process Digitalization, pdf file on 282 pages by Albert Fleischmann, Stefan Oppl, Werner Schmidt, Christian Stary....

Natural Computing and Beyond

Download free course Natural Computing and Beyond, pdf file on 163 pages by Yasuhiro Suzuki, Toshiyuki Nakagaki....