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: 167
Created: 2021-05-15
License: Free
Author(s): Adam Chlipala
Certified Programming with Dependent Types

Warning: Trying to access array offset on false in /home/tutovnfz/public_html/article.php on line 233

Others Certified Programming Tutorials

Others related eBooks about Certified Programming with Dependent Types

Hacking tips and tricks

Hacking tips and tricks is a free pdf tutorial intended to beginners to know the basics of computer attacks and protect themselves from hackers and cybercriminals....

Think Stats: Probability and Statistics for Programmers

If you know how to program, you have the skills to turn data into knowledge using the tools of probability and statistics. This concise introduction shows you how to perform statistical analysis computationally, rather than mathematically, with programs written in Python. ...

The little book about OS development

Download free course The little book about OS development, pdf file on 78 pages by Erik Helin, Adam Renberg....

Rethinking Productivity in Software Engineering

Get the most out of this foundational reference and improve the productivity of your softw..., download free Software Engineering tutorial in PDF (310 pages) created by Caitlin Sadowski ....

Understanding Machine Learning: From Theory to Algorithms

Download Understanding Machine Learning tutorial, a complete eBook created by Shai Shalev-Shwartz and Shai Ben-David....

Introduction to Computers and Programming

Welcome to the world of computer programming! In this book, you will learn the essential concepts of programming using Python language....

Go Succinctly

Download free course Go Succinctly, pdf file on 104 pages by Mark Lewin....

Category Theory for Programmers

Category Theory is one of the most abstract branches of mathematics. It is usually taught ..., download free Category Theory tutorial in PDF (498 pages) created by Bartosz Milewski ....

Platform Embedded Security Technology Revealed

Platform Embedded Security Technology Revealed is an in-depth introduction to Intel's plat..., download free Security Technology tutorial in PDF (272 pages) created by Xiaoyu Ruan ....

Efficient Learning Machines

Machine learning techniques provide cost-effective alternatives to traditional methods for..., download free Learning Machines tutorial in PDF (268 pages) created by Mariette Awad ....