Certified Programming with Dependent Types



Download free course Certified Programming with Dependent Types, pdf file on 368 pages by Adam Chlipala.
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.


Table of contents

  • Introduction
  • Some Quick Examples
  • Introducing Inductive Types
  • Inductive Predicates
  • Infinite Data and Proofs
  • Subset Types and Variations
  • General Recursion
  • More Dependent Types
  • Dependent Data Structures
  • Reasoning About Equality Proofs
  • Generic Programming
  • Universes and Axioms
  • Proof Search by Logic Programming
  • Proof Search in Ltac
  • Proof by Reflection
  • Proving in the Large
  • A Taste of Reasoning About Programming Language Syntax
Pages : 368
Size : 4.3 MB
File type : PDF
Downloads: 94
Created: 2022-02-01
License: CC BY-NC-ND
Author(s): by 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 Programming Tutorials

Principles of Programming Languages

Introduction to C and GUI Programming

Fundamentals of Python Programming

Basic Programming Concepts

Effective AWK Programming, 5th Edition

Others related eBooks about Certified Programming with Dependent Types

Solving PDEs in Python

Download free course Solving PDEs in Python, pdf file on 152 pages by Hans Petter Langtangen, Anders Logg....

A Python Book: Beginning Python, Advanced Python, and Python Exercises

Download ebook Python tutorial, Python exercices, free PDF course by Dave Kuhlman....

Professor Frisby's Mostly Adequate Guide to Functional Programming

This is a book on the functional paradigm in general. We'll use the world's most popular f..., download free Functional Programming tutorial in PDF (146 pages) created by Brian Lonsdorf ....

Modern Java EE Design Patterns

Download free course Modern Java EE Design Patterns, pdf file on 67 pages by Markus Eisele....

Hands-on Python Tutorial

Python is a widely used general-purpose, high-level programming language. Its design philosophy emphasizes code readability, and its syntax allows programmers to express concepts in fewer lines of code than would be possible in languages such as C. The language provides constructs intended to enable...

Android Application Development for the Intel Platform

The number of Android devices running on Intel processors has increased since Intel and Go..., download free Android tutorial in PDF (520 pages) created by ....

Java Succinctly Part 2

Download free course Java Succinctly Part 2, pdf file on 134 pages by Christopher Rose....

How to Make Mistakes in Python

Download free course How to Make Mistakes in Python, pdf file on 82 pages by Mike Pirnat....

5 Unsung Tools of DevOps

Download free course 5 Unsung Tools of DevOps, pdf file on 21 pages by O'Reilly Media....

25 Secrets for Faster ASP.NET Applications

Download free course 25 Secrets for Faster ASP.NET Applications, pdf file on 38 pages by Red Gate....