Introductory Seminar:

Numbering Code U-HUM22 18474 SE50
U-HUM22 18474 SE10
Year/Term 2022 ・ First semester
Number of Credits 2 Course Type seminar
Target Year From 1st to 4th year students Target Student
Language English Day/Period Mon.5
Instructor name THIES, Holger (Graduate School of Human and Environmental Studies Program-Specific Senior Lecturer)
Outline and Purpose of the Course This course is an introduction to basic logical principles and formal methods in computer science.
Students will learn fundamental concepts and techniques of mathematical logic and their applications to
computer science and other areas.
The emphasis is on the computational aspects of logic and the topics will be introduced through hands-on use
of the Coq proof assistant, a tool for machine-checked mathematical proofs.
The software assists students in constructing formal proofs and automatically checks their correctness.
Course Goals Students will become familiar with logical reasoning and formal proofs.
They will also get some practical experience in the use of a proof assistant.
The course will help students develop skills that are important in any field of research, such as critical
thinking and the ability to construct rigorous arguments.
Schedule and Contents Below are some possible topics that we will cover during the course. We will spend one or two weeks on
each topic. The topics we cover may change depending on the interests and abilities of the students.
1) Propositional logic
2) First-order Predicate logic
3) Computer assisted theorem proving
4) Basics of functional programming
5) Natural deduction
6) Type Theory
7) Constructive Logic
8) The relationship between proofs and programs
Total: 15 sessions (14 class sessions and 1 feedback session)
Evaluation Methods and Policy Students are expected to actively participate in discussion, read material, and solve exercises in class.
Evaluation will approximately be based on the following: written and oral assignments (50%), final report
(50%)
Course Requirements No prior knowledge is required, however some familiarity with rigorous mathematical proofs and interest in computer programming will be helpful.
The course will include some practical exercises. It is recommended that students have access to a computer
where they can install software.
Study outside of Class (preparation and review) Students should review the course material after each class and solve the homework assignments.
References, etc. Logic in Computer Science, Michael Huth and Mark Ryan, (Cambridge University Press, 2004), ISBN:978-0521543101
A Beginner's Guide to Mathematical Logic, Raymond Smullyan, (Dover Publications, 2014), ISBN:978-0486492377
Software Foundations, Volume 1: Logical Foundations, Benjamin C. Pierce et al., available online: https://softwarefoundations.cis.upenn.edu/
nteractive Theorem Proving and Program Development, Yves Bertot and Pierre Casteran, (Springer, 2004), ISBN:978-3662079645
PAGE TOP