Directed Studies: Decision Procedures for Software Verification

Schedule:

  • Course (Prof. Dr. Stefan Leue)
    Monday  13:30 - 15:00   Room: PZ 901      Start: 21 October 2019
  • Tutorial (Martin Kölbl)
    Tuesday 13:30 - 15:00    Room: PZ 901      Start: 5 November 2019

Contents

Software is logic at work, and hence formal mathematical logic is the calculus of software engineering. In the verification of properties of software systems special decidable fragments of first order logic have received special interest and lots of tools have been developed under the label "Satisfiability Modulo Theories" (SMT). Companies like Google and Microsoft, for instance, use this technology to analyze their software eco systems for security vulnerabilities.

In this directed studies course we will provide a brief introduction into propositional and first order logic. We will then discuss more SMT specific logics and decision procedures, including DPLL(T) for SAT solving, the Nelson-Oppen combination procedure, uninterpreted functions, linear real and integer arithmetic, and quantifier elimination. In addition, we will consider logics and procedures relevant to software verification problems, including the treatment of arrays and pointers, and provide application examples.

Teaching methods

Directed Studies Course - weekly reading assignments that will be presented by participants and discussed during the lectures.

Prerequisites

Undergraduate standing in Algorithms, Programming, Discrete Structures (in particular formal logic), Theory of Computing.

Learning objectives

Participants will learn the foundations of SMT technologies. This will enable them to assess SMT technology in its usefulness for solving various problems in academia and industrial practice, and to use this technology in own related projects.

Course literature

Daniel Kroening and Ofer Strichman, Decision Procedures: An Algorithmic Point of View, second edition, Springer 2016. http://www.decision-procedures.org

Further literature may be announced during the course.

Target group

BA-Students 4. Semester
MA-Students

Remark

Final examination - oral. A grade bonus can be earned during the tutorials.

Expected course achievement

At least one weekly assignment summary presentation.

Offering Suitable for Participants from Other Programs and Subject Areas

All

Credits

ECTS-points: 6

Weekly teaching hours

SWS: 2 + 2