CS 15-317: Constructive Logic
(Fall 2015)

Schedule of Classes

At a glance ...

Bird-eye view

This part of the course provides the basic vocabulary to talk and reason about logic.
Proofs as programs
In this part, we briefly make a connection between natural deduction proofs and functional programming.
Proof search
This part of the course sets the foundations of efficient search for derivations, both for theorem proving and for using logic as a programming device.
Forward chaining
This part of the course explores a different approach to using logic to do computation, an approach that is particularly amenable to parallel and concurrent computation.
Backward chaining
This part of the course explores one way of using logic for computation, both by exploring its theoretical foundations, using an actual language that follows this paradigm, and implementing such a language.
Advanced topics
The end of the course will be dedicated to whatever topic ticks our imagination.

2015 Iliano Cervesato