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 lambda calculus, natural deduction, sequent calculus, classical logic, intuitionistic logic, and various logics in computer science.
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.
Homework assignments are given several times.
|Course schedule||Required learning|
|Class 1||Introduction: intuitionistic and classical logics.||Instructed in the class.|
|Class 2||Natural deduction (1): sysntax.||Instructed in the class.|
|Class 3||Natural deduction (2): normalization of proofs.||Instructed in the class.|
|Class 4||Sequent calculus (1): syntax.||Instructed in the class.|
|Class 5||Sequent calculus (2): cut-elimination.||Instructed in the class.|
|Class 6||Hilbert-style system.||Instructed in the class.|
|Class 7||Kripke model.||Instructed in the class.|
|Class 8||Lambda calculus (1): syntax, Curry-Howard correspondence.||Instructed in the class.|
|Class 9||Lambda calculus (2): Church–Rosser theorem.||Instructed in the class.|
|Class 10||Lambda calculus (3): type inference.||Instructed in the class.|
|Class 11||Lambda calculus (4): strong normalization theorem.||Instructed in the class.|
|Class 12||Combinatory Logic.||Instructed in the class.|
|Class 13||Various systems (1): linear logic, modal logics.||Instructed in the class.|
|Class 14||Various systems (2): higher order logic, polymorphism.||Instructed in the class.|
|Class 15||Conclusion and supplementary explanations.||Instructed in the class.|
J.-Y.Girard et.al.: Proofs and Types (Cambridge Univ.P.). D. van Dalen: Logic and Structure (Springer).
Hindley J.R. & Seldin J.P. : Introduction to Combinators and lambda-calculus (Cambridge Univ. P.).
final exams (60%), exercise problems (40%).
Students who had completed MCS.T404 "Logical Foundations of Computing" cannot take this course.