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

C Programming for Arduino

Advanced Linux Programming

OOP - Learn Object Oriented Thinking and Programming

Mathematica® Programming: an Advanced Introduction

Fundamentals of C++ Programming

Others related eBooks about Certified Programming with Dependent Types

Raspberry Pi Beginner's Guide

Download free course Raspberry Pi Beginner's Guide, pdf file on 248 pages by Gareth Halfacree....

Programming Fundamentals

This programming fundamentals tutorial in PDF format covers the key concepts and principles that are essential for anyone looking to become a proficient coder. The tutorial begins with an introduction to programming, explaining the basic concepts and terminologies that underlie all programming langu...

Ruby Regexp

Scripting and automation tasks often need to extract particular portions of text from inpu..., download free Ruby tutorial in PDF (72 pages) created by ....

Spring MVC by example

Download free pdf training course in pdf about Spring MVC under 315 pages intended to beginners....

Csharp Programming Tutorial

Download this C# PDF Tutorial for free, it's consisting of 5 chapters covering all the most important C# concepts. This tutorial is intended for beginner programmers, and we recommend you to go through all the chapters, to get the most out of it as possible....

Modeling and Simulation in Python

Download free course Modeling and Simulation in Python, pdf file on 247 pages by Allen Downey....

Automated Machine Learning

Download free course Automated Machine Learning, pdf file on 223 pages by by Frank Hutter, Lars Kotthoff, Joaquin Vanschoren....

Full Speed Python

This book aims to teach the Python programming language using a practical approach. Its me..., download free Python tutorial in PDF (40 pages) created by Joao Ventura ....

Introduction to Programming with Fortran

Download free course Introduction to Programming with Fortran, pdf file on 963 pages by Ian Chivers, Jane Sleightholme....

Processing WSDL in Python

With this tutorial you will learn how to process WSDL in Python language (web services and Python) , free PDF cocument under 11 pages by Mike Olson and Uche Ogbuji ....