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: 192
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

Modern Robotics with OpenCV

How to use a Robot with Computer Vision in order to perform complex tasks, interacting with the surrounding environment, using a distributed system with several software communicating each others and exchanging data across the network....

Pharo by Example

Pharo is a modern open-source development environment for the classic Smalltalk-80 programming language. This book, intended for both students and developers, will guide you gently through the language and tools by means of a series of examples and exercises. ...

Entity-Oriented Search

Download free course Entity-Oriented Search, pdf file on 351 pages by Krisztian Balog....

The Little Book of Semaphores

The Little Book of Semaphores is a free textbook that introduces the principles of synchro..., download free Semaphores tutorial in PDF (291 pages) created by ....

Tutorial Eclipse IDE

Download free Eclipse tutorial course in PDF, training file in 9 chapters and 32 pages. Free unaffiliated ebook created from Stack OverFlow contributor....

Getting Started with InnerSource

Download free course Getting Started with InnerSource, pdf file on 22 pages by Andy Oram....

Download free Scala tutorial

Download free Scala tutorial course in PDF, training file in 62 chapters and 218 pages. Free unaffiliated ebook created from Stack OverFlow contributor....

Tensorflow 2 Tutorial

TensorFlow is a free and open-source software library for machine learning. It can be used..., download free Tensorflow tutorial in PDF (66 pages) created by Ren Zhang ....

How To Code in Node.js

Download free course How To Code in Node.js, pdf file on 418 pages by David Landup, Marcus Sanatan....

Introduction to Probability

The book is a beautiful introduction to probability theory at the beginning level. The book contains a lot of examples and an easy development of theory without any sacrifice of rigor, keeping the abstraction to a minimal level. It is indeed a valuable addition to the study of probability theory....