15-317 / 15-657 Constructive Logic

Fall 2018
Instructor: Karl Crary
Teaching Assistants: Ankush Das, Jeanne Luning Prak, Jon Sterling
Mon & Wed, 12 pm - 1:20 pm
GHC 4303
9 units

This undergraduate course provides an introduction to constructive logics, such as intuitionistic and linear logic, with an emphasis on their application in computer science. This includes basic means for defining logics (for example, natural deduction and sequent calculus), establishing properties of logics (for example, cut elimination), and for investigating their computational interpretations (for example, via proof reduction or proof search).

Prerequisites: 15-317 is an introductory undergraduate course with a minimum grade of C in 15-150 as prerequisite. For the cross-listed graduate version, 15-657, some experience with functional program is recommended.


Class Material

Schedule Lecture notes and additional readings
Assignments Homeworks assignments and due dates
Software Links to software and other resources

Course Information

Lectures Mon & Wed 12 pm - 1:20 pm, GHC 4303
Recitations Section A, Tue, 9:30 am - 10:20 am, DH 1117, Ankush Das
  Section B, Tue, 10:30 am - 11:20 am, WeH 4709, Jeanne Luning Prak
  Section C, Tue, 11:30 am - 12:20 pm, DH 2105, Jon Sterling
Office Hours Karl Crary, Mon, 3:30 pm - 4:30 pm, GHC 9217
  Ankush Das, Fri, 1 pm - 2 pm, GHC 9225
  Jon Sterling, Wed, 10 am - 11 am, GHC 9225
  Jeanne Luning Prak, Tue, 5 pm - 6 pm, GHC Citadel Teaching Commons Carrel 4
Course Communication Piazza page
Notes There is no textbook, but lecture notes will be posted
Credit 9 units
Homework Homework is assigned weekly and handed in via Autolab
You have 5 late days to use throughout the semester,
with at most 3 late days on any given assignment.
Midterm I Thu, Sep 26, in class.
Closed book, closed notes, one cheat sheet allowed.
Midterm II Thu, Nov 7, in class.
Closed book, closed notes, one cheat sheet allowed.
Final TBA
Closed book, closed notes, one cheat sheet allowed.
Home http://www.cs.cmu.edu/~crary/317-f18/index.html

Learning objectives: After taking this course, students will be able to

  • define logical connectives and test these definitions for harmony
  • develop sound and complete theorem provers based on deductive presentations of logics
  • derive operational interpretations of logics via proof reduction and use them to write correct programs
  • derive operational interpretations of logics via proof search and use them to write correct programs

Topics: Some of these topics are tentative, depending on the pace of the course and participant interests.

  • Natural deduction
  • Harmony
  • Proofs as programs
  • Quantification
  • Induction and primitive recursion
  • Sequent calculus
  • Cut elimination
  • Inversion
  • Theorem proving
  • Backward logic programming; Prolog
  • Forward logic programming; Datalog
  • Polarization and focusing
  • Linear logic
  • Classical logic

Prior Versions of This Course

Accommodations for Students with Disabilities

If you have a disability and have an accommodations letter from the Disability Resources office, I encourage you to discuss your accommodations and needs with me as early in the semester as possible. I will work with you to ensure that accommodations are provided as appropriate. If you suspect that you may have a disability and would benefit from accommodations but are not yet registered with the Office of Disability Resources, I encourage you to contact them at access@andrew.cmu.edu.

Support for Students' Health and Well-Being

All of us benefit from support during times of struggle. There are many helpful resources available on campus and an important part of the college experience is learning how to ask for help. Asking for support sooner rather than later is almost always helpful. If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. Counseling and Psychological Services (CaPS) is here to help: call 412-268-2922 and visit their website at http://www.cmu.edu/counseling/. Consider reaching out to a friend, faculty or family member you trust for help getting connected to the support that can help.

[ Home | Schedule | Assignments | Resources ]

ankushd@cs
Ankush Das