Software verification methods
Code 373AA
Credits 6
Learning outcomes
Objectives
Model checking concerns the use of algorithmic methods for the assurance of software and hardware systems. As our daily lives depend increasingly on digital systems, the reliability of these systems becomes a concern of overwhelming importance, and their reliability can no longer be sufficiently controlled by the traditional approaches of testing and simulation.
Syllabus
Verification algorithms: linear and branching temporal logics, omega automata, equivalences.
State explosion: symbolic data structures, automatic abstraction, compositional reasoning.
Case studies
Course structure
6 CFUs. Exam consists in an oral test and possibly of a small project.
Model checking concerns the use of algorithmic methods for the assurance of software and hardware systems. As our daily lives depend increasingly on digital systems, the reliability of these systems becomes a concern of overwhelming importance, and their reliability can no longer be sufficiently controlled by the traditional approaches of testing and simulation.
Syllabus
Verification algorithms: linear and branching temporal logics, omega automata, equivalences.
State explosion: symbolic data structures, automatic abstraction, compositional reasoning.
Case studies
Course structure
6 CFUs. Exam consists in an oral test and possibly of a small project.