2017 Logical Foundations of Computing

Font size  SML

Register update notification mail Add to favorite lecture list
Academic unit or major
Graduate major in Mathematical and Computing Science
Kashima Ryo  Nishizaki Shin-Ya 
Class Format
Media-enhanced courses
Day/Period(Room No.)
Tue1-2(W833)  Fri1-2(W833)  
Course number
Academic year
Offered quarter
Syllabus updated
Lecture notes updated
Language used
Access Index

Course description and aims

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.

Student learning outcomes

Students will acquire an insight into the logical foundations of computation.


Curry-Howard correspondence, lambda calculus, classical logic, intuitionistic logic, natural deduction, sequent calculus

Competencies that will be developed

Specialist skills Intercultural skills Communication skills Critical thinking skills Practical and/or problem-solving skills

Class flow

The course consists of lectures.
Homework assignments are given several times.

Course schedule/Required learning

  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.



Reference books, course materials, etc.

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.).

Assessment criteria and methods

final exams (60%), exercise problems (40%).

Related courses

  • MCS.T502 : Functional Programming
  • MCS.T411 : Computational Complexity Theory
  • CSC.T425 : Concurrent System Theory

Prerequisites (i.e., required knowledge, skills, courses, etc.)

No prerequisites.

Page Top