システム検証論

Numbering Code Year/Term 2022 ・ Second semester
Number of Credits 2 Course Type Lecture
Target Year Target Student
Language English Day/Period Wed.4
Instructor name SUENAGA KOUHEI (Graduate School of Informatics Associate Professor)
IGARASHI ATSUSHI (Graduate School of Informatics Professor)
WAGA MASAKI (Graduate School of Informatics Assistant Professor)
Outline and Purpose of the Course This course deals with the methods for system verification, which are techniques to verify that a system is designed and implemented correctly. We will cover the theory and the tools for model checking, interactive theorem prover, abstract interpretation, and monitoring.
Course Goals You will be able to understand and explain the concepts on system verification covered in the class.
Schedule and Contents The following topics are covered.

- Introduction (1 lecture) (Suenaga)
- Abstract interpretation (4 lectures) (Suenaga): Abstraction, Abstract domain, Galois connection, Widening
- Deductive verification (4 lectures) (Igarashi): Refinement type systems and Separaton Logic
- Model checking and monitoring (6 lectures) (Suenaga, Waga): Temporal logic (CTL*, CTL, LTL), Algorithms for model checking, SAT-Based model checking, Model checking with abstractions, Timed and hybrid systems, Monitoring
Evaluation Methods and Policy Methods: Report(s) on the topics described in classes.
Criteria: Students are required to demonstrate how well she/he has mastered the concepts on system verification in the report(s).
Course Requirements Lecturers assume that students are already familiar with the following topics.
+ Propositional logic and first-order predicate logic
+ Regular language and automaton
+ Complexity of an algorithm
+ Basic mathematical concepts such as sets, relations, functions
Study outside of Class (preparation and review) Students may be required to complete weekly assignments before attending a class.
Textbooks Textbooks/References Model Checking, second edition (Cyber Physical Systems Series), Edmund M. Clarke Jr., Orna Grumberg, Daniel Kroening, Doron Peled, Helmut Veith, (The MIT Press, 2018)
Introduction to Static Analysis: An Abstract Interpretation Perspective, Xavier Rival, Kwangkeun Yi, (The MIT Press, 2020)
References, etc. Types and Programming Languages, Benjamin C. Pierce, (The MIT Press, 2002)
PAGE TOP