view staging/index.html @ 558:cbe6d5ad3e13

Cornell course
author Adam Chlipala <>
date Mon, 18 Sep 2017 10:16:51 -0400
parents de972cc4a16b
children 3c1b839e93c6
line wrap: on
line source
<link rel="alternate" type="application/rss+xml" title="Updates RSS Feed" href="updates.rss">
<link rel="stylesheet" type="text/css" href="/style.css">
<title>Certified Programming with Dependent Types</title>
<h1>Certified Programming with Dependent Types</h1>
<h2><a href="">Adam Chlipala</a></h2>

<div class="summary" style="overflow: hidden">
<img src="cover.jpg" width="300" height="390" align="left" style="margin-right: 30px" alt="book cover">

<p>This is the web site for a textbook about practical engineering with <a href="">the Coq proof assistant</a>.  The focus is on building programs with proofs of correctness, using dependent types and scripted proof automation.</p>

<p>I'm following an unusual philosophy in this book, so it may be of interest even to long-time Coq users.  At the same time, I hope that it provides an easier introduction for newcomers, since short and automated proofs are the starting point, rather than an advanced topic.</p>

<p>Interested in using this book in a course you're teaching?  Please <a href="">drop me a line</a>!</p>

<p>A traditional hardcopy version is available from <a href="">MIT Press</a>, who have graciously agreed to allow distribution of free versions online indefinitely, minus the benefits of the Press' copy editing!</p>

<h2>Buy a Copy in Print</h2>
<a href="">From</a><img src="" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /><br/>
<a href="">The MIT Press page for the book</a><br/>
<b>ISBN:</b> 9780262026659

<div class="project">
<h2>Distribution Formats (free version)</h2>
<li> <a href="cpdt.pdf">Latest draft as a PDF</a></li>
<li> <a href="html/toc.html">Online version of latest draft, as hyperlinked HTML</a> [note that the author focuses on the PDF version and doesn't make an effort to keep the HTML version particularly pleasant to use]</li>
<li> <a href="cpdt.tgz">Tarball of Coq source to latest draft</a></li>
<li> <a href="cpdtlib.tgz">Tarball of a few generally useful library modules from the book</a> (which are released under an open-source license, while the book generally isn't)</li>
<li> <a href="repo">Public, read-only Mercurial repository</a></li>
<li> <a href="updates.rss">RSS feed of updates</a></li>

<div class="project">
<h2><a href="ex/">Online Collection of Exercises for the Book</a></h2>

<div class="project">
<h2>Use in classes</h2>

<h3>Classes where CPDT is/was a primary text</h3>
<li>EECS 755 at U. Kansas <a href="">(Fall 2017)</a></li>
<li>CS691PL at U. Mass. Amherst <a href="">(Spring 2014)</a></li>
<li>CSE 506 at U. Washington <a href="">(Winter 2014)</a></li>
<li>EECS 395 at Northwestern <a href="">(Fall 2013)</a></li>
<li>CIS 670 at Penn <a href="">(Fall 2012)</a></li>
<li>6.892 at MIT <a href="">(Fall 2011)</a></li>
<li>CS252 at Harvard <a href="">(Fall 2008)</a></li>

<h3>Classes where CPDT is/was a supplementary text</h3>
<li>CS 6115 at Cornell <a href="">(Fall 2017)</a></li>
<li>CMSC631 at U. Maryland <a href="">(Fall 2017)</a></li>
<li>CS250 at Harvard <a href="">(Fall 2014)</a></li>
<li>CS 565 at Purdue <a href="">(Spring 2014)</a></li>
<li>Formal Methods at UST China <a href="">(Spring 2014)</a></li>
<li>185.A60 at TU Vienna <a href="">(Spring 2014)</a></li>
<li>CMPS203 at UC Santa Cruz <a href="">(Winter 2014)</a></li>
<li>CS 430 at Yale <a href="">(Fall 2013)</a></li>
<li>CS410 at Portland State <a href="">(Spring 2013)</a></li>
<li>IFT 6172 at U. Montreal <a href="">(Spring 2013)</a></li>
<li>TIES341 at U. Jyv&auml;skyl&auml; <a href="">(Spring 2013)</a></li>
<li>CMPT 340 at U. Saskatchewan (Spring 2012)</li>
<li>CS252r at Harvard <a href="">(Fall 2011)</a></li>
<li>G54DTP at Nottingham <a href="">(Spring 2011)</a></li>
<li>Formal Methods at U. Zagreb <a href="">(Spring 2011)</a></li>
<li>CMPT 863 at U. Saskatchewan (Spring 2010)</li>

<h3>Reading groups</h3>
<li>CS 7190 at Cornell <a href="">(Summer 2013)</a></li>
<li>At Radboud University Nijmegen <a href="">(2010)</a></li>
<li>At U. Wisconsin <a href="">(2008-2009)</a></li>

<div class="project">
<h2>Old versions</h2>

<p>Previous versions included a final Part on programming language semantics in particular.  I have decided to separate that part out.  I plan to put it up as a supplementary resource eventually; for now it is simply removed.  (It remains present in the <a href="repo">Mercurial</a> history.)</p>

<script src="//"></script>