This course covers the intersection of programming language theory and mathematical logic.
The key notion is "Curry-Howard correspondence", which shows the direct relationship between computer programs and mathematical proofs.
Topics include natural deduction, sequent calculus, classical and intuitionistic logics, and lambda calculus.
Students will acquire an insight into the logical foundations of computation.
Curry-Howard correspondence, lambda calculus, classical logic, intuitionistic logic, natural deduction, sequent calculus
|Intercultural skills||Communication skills||✔ Specialist skills||Critical thinking skills||Practical and/or problem-solving skills|
The course consists of lectures.
Students will have exercise assignments about three times.
|Course schedule||Required learning|
|Class 1||Introduction to logic. Logical formulas.||Instructed in the class.|
|Class 2||Truth values of formulas.||Instructed in the class.|
|Class 3||Natural deduction.||Instructed in the class.|
|Class 4||Sequent calculus.||Instructed in the class.|
|Class 5||Completeness of classical logic.||Instructed in the class.|
|Class 6||Completeness of intuitionistic logic.||Instructed in the class.|
|Class 7||Properties of intuitionistic logic.||Instructed in the class.|
|Class 8||Introduction to lambda calculus.||Instructed in the class.|
|Class 9||Power of lambda calculus.||Instructed in the class.|
|Class 10||Church-Rosser property.||Instructed in the class.|
|Class 11||Introduction to the combinatory logic.||Instructed in the class.|
|Class 12||Properties of the combinatory logic.||Instructed in the class.|
|Class 13||Curry-Howard correspondence.||Instructed in the class.|
|Class 14||Properties of type systems.||Instructed in the class.|
Dirk van Dalen: Logic and Structure, Fourth Edition (Corrected 2nd printing 2008).
Henk Barendregt, Erik Barendsen: Introduction to Lambda Calculus (Revised edition December 1998, March 2000).
(Both are downloadable from the internet.)
Instructed in the class.
Based on exercise assignments.
Students who had completed MCS.T404 "Logical Foundations of Computing" cannot take this course.