News

First Lecture

Written on 07.04.25 (last change on 07.04.25) by Arthur Correnson

Hi all!

The semester's first lecture will take place tomorrow (08/04/2025) at 10:15 in E1.3 HS 003.
We are looking forward to meeting you there!

See you tomorrow!

PS: If you have questions about the lecture, you can write an email to arthur.correnson@cispa.de


 

Coinductive Proofs
 

The goal of this advanced lecture is to give an introduction to the notion of coinductive proofs, an elegant proof technique that finds many applications in Computer Science,
in particular in security and program verification.


Proofs by induction appear everywhere in theoretical computer science; you certainly encountered them on many occasions, starting with the lecture Programming 1.
Another essential proof method, less well-known but equally useful, is coinduction. 
If you're familiar with the notion of simulation proofs (as in the lectures Concurrency and Verification), you have already dealt with a particular instance of proofs by coinduction, maybe without knowing it.

This lecture aims to present a general framework to understand the theory behind both induction and coinduction.
We will see that while induction is a suitable technique for reasoning about finite objects (e.g., data structures), coinduction gives a systematic way to reason about potentially infinite ones (e.g., program executions). This unlocks a lot of potential, in particular, to write proofs about systems and programs that may run indefinitely (e.g., web servers, microprocessors).
We will discuss applications of proofs by coinduction to security and program verification and present several advanced proof techniques that are particularly useful in this context.

Lectures will be on Tuesday 10:15 to 11:45 in E1.3 HS003
Tutorials will be on Friday 10:15 to 11:45 in E1.3 SR014

Privacy Policy | Legal Notice
If you encounter technical problems, please contact the administrators.