Introduction General Information and Formal Notices Lectures Assignments Resources

Lecturers

Dr. Ansgar Fehnker (LiC)
Email: ansgar
Phone: 8306 0490
Office: Room E520, L5

Dr. Ralf Huuck
Email: rhuuck
Phone: 8306 0493
Office: Room E523, L5

When and Where

Tue 12:00 - 14:00.
  (K-E12-215)
Wed 12:00 - 13:00.
  (K-E12-215)
Check course details for further information.

Forum

For news and updates check also the support forum.

What is Algorithmic Verification about?

It is virtually impossible to guarantee correctness of a system, and in turn the absence of bugs by standard software engineering practice such as code review, systematic testing and good software design alone. The complexity of systems is typically too high to be manageable by informal reasoning or reasoning that is not tool supported. The formal methods community has developed various rigorous, mathematically sound techniques and tools that allow the automatic analysis of systems and software. The application of these fully automatic techniques is typically called algorithmic verification.

The course will describe several automatic verification techniques, the algorithms they are based on, and the tools that support them. We will discuss examples to which the techniques have been applied, and provide experience with the use of several tools.

The aim of the game

The goal is to educate students on the concepts of algorithmic verification and give them hands-on experience in verification tools.

Technical

To educate students on

  • the foundations of automata theory and temporal logics,
  • LTL and CTL model checking techniques and model checking tools,
  • the application of static analysis techniques to program verification, and
  • advanced verification techniques for timed and probabilistic systems.

Educational

Expose students to a scientific theory of algorithmic verification techniques, the underlying concepts for state-of-the-art tools, and sound frameworks for program analysis.

Course philosophy and teaching strategies

The learning focus in this course is primarily on lectures and assignments, plus a mid term project which you can use to demonstrate your skills acquired until then. While marks are assigned to the assignments, their primary purpose is to give you concrete tasks with deadlines to help you structure your learning.

Course website


CRICOS Provider Number: 00098G