Send email Copy Email Address

Email

Address

Campus E1 1
66123 Saarbrücken (Germany)

Short Bio

Prof. Bernd Finkbeiner, Ph.D. is a faculty member at the CISPA Helmholtz Center for Information Security and a professor for computer science at Saarland University. He obtained his Ph.D. in 2003 from Stanford University. Since 2003, he leads the Reactive Systems Group, which became part of CISPA in 2020. His research focus is the development of reliable guarantees for the safety and security of computer systems, including specification, program synthesis and repair, and static and dynamic verification. 
 

CV: Last four stations

2020 - now
Faculty member at CISPA
2006 - now
Professor at Saarland University
2003 - 2006
Junior professor at Saarland University
1996 - 2002
Research assistant at Stanford University

Publications by Bernd Finkbeiner

Year 2021

Conference / Medium

ATVA
LNCS19th International Symposium on Automated Technology for Verification and Analysis (ATVA 2021)

Article

iX Magazin für professionelle Informationstechnik

Conference / Medium

CAV
Proceedings, Part I33rd International Conference, CAV 2021

Conference / Medium

NFM
LNCS13th NASA Formal Methods Symposium, NFM 2021

Year 2020

Conference / Medium

ATVA
Lecture Notes in Computer ScienceAutomated Technology for Verification and Analysis - 18th International Symposium, ATVA 2020, Hanoi, Vietnam, October 19-23, 2020, Proceedings

Conference / Medium

ATVA
Automated Technology for Verification and Analysis - 18th International Symposium, ATVA 2020, Hanoi, Vietnam, October 19-23, 2020, Proceedings18th International Symposium on Automated Technology for Verification and Analysis, ATVA 2020

Conference / Medium

ATVA
LNCS, Volume 1230218th International Symposium on Automated Technology for Verification and Analysis, ATVA 2020

Conference / Medium

RV
Runtime VerificationRV 2020

Conference / Medium

ATVA
Lecture Notes in Computer ScienceAutomated Technology for Verification and Analysis

Conference / Medium

ATVA
Automated Technology for Verification and AnalysisAutomated Technology for Verification and Analysis

Teaching by Bernd Finkbeiner

Winter 2021/22

Verification

Core Lecture Course (9 CP)

Lectures: Tuesday 2 to 4 pm and Thursday 10 am to 12 noon in HS001, E1 3.
Tutorials: Friday 10 am to 12 noon and Friday 12 noon to 2 pm in Room 206, E1 1.
Office Hour: Wednesday 10 am to 12 noon in Room 106, E1 1.

There will be an option to attend the lectures, tutorials and Office Hour remotely.

 

Syllabus

How can one ensure that computer programs actually do what they are intended to do? Simply running a program repeatedly with various inputs is inadequate, because one cannot tell which inputs might cause the program to fail. It is possible to tailor a tester to test a given program, but present-day programs are so complex that they cannot be adequately checked through conventional testing, which can leave significant bugs undetected. Program verification uses mathematical and logical methods to prove that a program is correct. This approach was pioneered by, among others, Dijkstra, Floyd, Gries, Hoare, Lamport, Manna, Owicki and Pnueli. Today, we have powerful decision procedures that can, completely automatically, answer basic questions about the data types typically used by programmers. Model Checking is a “push-button” technology that can analyze finite-state abstractions of programs with as many as 1020 states. This course takes an up-to-date look at the theory and practice of program verification.

Recommended Reading

  • Christel Baier, Joost-Pieter Katoen: Principles of Model Checking, 2008.
  • Edmund M. Clarke, Orna Grumberg, Daniel Kroening, Doron Peled, Helmut Veith: Model Checking, 2018.
  • Edmund M. Clarke, Thomas A. Henzinger, Helmut Veith, Roderick Bloem: Handbook of Model Checking, 2018 (available on Springer Link).
  • Aaron R. Bradley and Zohar Manna: The Calculus of Computation, 2007 (available on Springer Link).
2020

Neural-Symbolic Computing

In this seminar, we will explore new research that shows that deep neural networks are, in fact, able to reason on “symbolic systems”, i.e., systems that are built with symbols like programming languages or formal logics.

2019/20

Verification

This course takes an up-to-date look at the theory and practice of program verification.

More information