This course deals with the formal modeling of concurrent systems such as parallel or multi-threaded programs, distributed hardware and software systems, mobile systems, and the like.

This course presents the major methods for defining the meaning of languages (operational semantics, denotational semantics, axiomatic semantics) and programs and discusses their relationship.

This course explores advanced object oriented techniques using the Java language. The accent is on encapsulation, exemplified with algorithms and data structures, and on a frame of software tools used in real-world applications.

In dieser Lehrveranstaltung behandeln wir (als Fortsetzung der LVA "Programmierung 1") objektorientierte Programmierung in C++.

In this seminar, we explore current research and systems for specifying and verifying computer programs (specification languages, program verifiers, model checkers, ...).