Seminar Trends in Computer-Aided Verification

Seminar in Theoretical CS, Winter 2022/23

News

  • 02.06.2022: we are online

Dates & Deadlines

18.10.2022, 15:00Kick-off meeting (room 4201b, 2nd floor, building E1)
21.10.2022Topic preferences due
21.11.2022Detailed outline due
19.12.2022Seminar report due
16.01.2023Presentation slides due
24.01.2023, afternoonPresentations (room 4201b, 2nd floor, building E1)
TBAFinal revision of report

Note that the full versions of your report and your slides should be your final submission and the camera-ready versions should differ only with regard to minor remarks, comments, and corrections by your supervisor. Please feel free, however, to talk to your supervisor about submitting preliminary versions before the due dates.

Introduction

Overview

The term Computer-Aided Verification refers to theory and practice of computer-supported formal analysis methods for both hardware and software systems. Likewise, it is the name of an annual academic conference on that topic. The modeling and verification of such systems is an important issue. In particular, safety-critical systems are ones in which errors can be disastrous: loss of life, major financial losses, etc. Techniques to safeguard against such scenarios are essential for such systems. Testing can identify problems, especially if done in a rigorous fashion, but is generally not sufficient to guarantee a satisfactory level of quality.   Formal methods, on the other hand, offer techniques ranging from the description of requirements in a formal notation to allow for rigorous reasoning about them, to techniques for automatic verification of software. Due to the complexity of these approaches and the systems they are applied to, automated computer support is indispensable.  

The goal of this seminar is to give an overview of the related research activities of the MOVES group. It covers several areas of computer science to which computed-aided verification techniques are central, and which represent the research fields of the respective supervisors. Each area features a number of topics which are described in a scientific journal or conference article. These research articles are the basis on which students have to prepare their report and presentation. The following list gives an overview of the areas that will be covered.

Schedule of Talks

TimeTuesday, January 24
14:00 – 15:00Xiaoting Wang, Ole Deviscour
15:15 – 16:15Vincent Westhoff, Cristian-Ioan Bratu
16:30 – 17:30Elias Wirtz, Presiyan Prodanov

Topics

A. Verification of Neural Networks

  1. Verification using the Simplex Algorithm
  2. Abstraction-Based Verification with Intervals and Zonotopes
  3. Shared Certificates for Neural Network Verification
    • Student: –
    • Supervisor: –
  4. Detecting Novel Inputs
  5. Tricking Novelty Detection Techniques

B. Static Program Analysis for Software Verification

  1. Predicate Abstraction (SLAM Tool)
  2. Sacrificing Soundness (FindBugs Tool)
  3. Coverity Tool
    • Supervisor: –
  4. Separation Logic (Infer Tool)
    • Supervisor: –
  5. Incorrectness Logic (Pulse-X Tool)

Prerequisites

Basic knowledge in the following areas is expected:

  • Formal languages and automata theory
  • Mathematical logic

Previous knowledge in semantics of programming languages and program analysis is helpful but not mandatory.

Registration

Registration to the seminar is handled via the SuPra system.

Grading Scheme

You can access the grading scheme here: https://moves.rwth-aachen.de/wp-content/uploads/seminar_grading_scheme.pdf

Additional Material

Contact

Thomas Noll