PL Seminar: Coq via Software Foundations

Overview

In this course, we will study Coq via Software Foundations.


MeetingWF 8:30-10am, Tech LG68

Mailing listsubscribe / info

Coq InstallationIf you have questions about this, post on the mailing list.

Install Coq 8.3.

Install Proof General.

Use control-c control-return when the book says to submit something to Coq; control-c control-u and control-c control-n move forwards and backwards through a proof script, step by step.


Syllabus
DateExercises
(before class)
Leader
9/21Preface & BasicsRobby
9/23Up to Basics: mult_1_plusJosh
9/26Finish BasicsAndy
9/28Basics: Binary numbersRobby
9/28Basics: Binary cotdRobby
10/3Lists: alternate, bag_functions, bag_theorem, bag_count_sum (and 1 star exercises you find along the way)Geoff
10/5Poly: up to (not including) map_rev, which we'll do in classBurke
10/7Poly: up to (not including) combine_split, which we'll do in classJames
10/10Poly: split_combine (in class)Casey
10/12Gen: gen_dep_practice as practice; index_after_last_informal in classRobby
10/14Prop: up to (not including) ev_ev_even, which we'll do in classJosh
10/17Prop: up to (not including) palindromes, which we'll do in classRobby
10/19Continued with palindromesRobby
10/21Continued with palindromesAndy
10/26Logic.v: up to all_forallb, filter_challenge_2 in classGeoff
10/28Imp.v: do optimize_0plus_b, optimize_0plus in classBurke
11/2Imp.v: work on stack_compiler in class togetherRobby
11/4Imp.v: continue with stack_compiler in classRobby
11/9Imp.v: continue with stack_compiler in classRobby
11/11Imp.v: continue with stack_compiler in classRobby
11/16Equiv.v: optimize_0plus & CSeq_congruence in class, up to there to prepareJames
11/18Equiv.v: optimize_0plus & CSeq_congruence in class, up to there to prepareJames
11/23Rel.v & Smallstep.v: up to (not including) the declaration "Module Temp4." in Smallstep.vRobby
11/28Types.v: read up to (not including) the heading ``Progress''Robby
12/2Hoare.v: read up to (not including) swap_exerciseRobby

Robby Findler