teaching

classes

exercise instructor (Übungsleiter)

  • IN0003 Functional Programming and Verification (Winter ‘21/’22, Summer ‘22, Summer ‘23, Summer ‘24)

    • Course with ~1000 students; Managing ~20 undergrad TAs and ~4 head TAs, - Designing homework and exam
    • Organizing extra activities
    • Our head TAs presented part of the course framework at the OCaml Workshop@ICFP: link
  • IN2227 Compiler Construction (Summer ‘20, Summer ‘21)

instructor

  • Practical Course: Static Analysis - Automated Bug Hunting and Beyond (Summer ‘21, Summer ‘22, Winter ‘22/’23, Summer ‘23, Winter ‘23/’24)
  • Practical Course: Program Optimization with LLVM (Winter ‘19/’20, Summer ‘20)
  • Practical Course: Profiling & Tuning Large Functional Programs (Winter ‘22/’23)
  • Bachelor-Seminar: Static Analysis - Tools and Techniques (Winter ‘23/’24)
  • Master-Seminar: Static Analysis - Mastering Concurrency (Winter ‘23/’24)

Before starting as a PhD student, I worked part-time as an undergrad TA, winning awards for best student TA (Preis für die beste Lehre der Fakultät für Informatik) in 2015, 2016, and 2017.

advised theses

Over the years, I have had the joy of advising many students doing their Bachelor’s or Master’s thesis. This list contains only theses where I also was the formal advisor. I have informally co-advised Rebecca Ghidini and Johanna Franziska Schinabeck, resulting in publications at SOAP and NSAD, respectively. The formal advisor for Rebecca and Johanna was Julian Erhard.

I am currently informally co-advising the M.Sc. thesis of Fabian Stemmler (with Julian Erhard and Sarah Tilscher), and the Guided Research of Felix Krayer (with Ali Koçal, Julian Erhard, and Sarah Tilscher).

I currently do not have the capacity to supervise any additional students. If you are interested in doing a student thesis related to static analysis and Goblint, feel free to reach out to my colleagues Sarah Tilscher and Julian Erhard. For more information on possible student topics see here.

advised bachelor’s theses

  1. B.Sc.
    Witnessing Violations of Safety Properties for Concurrent Programs
    Sofiia Danylchenko
    Oct 2023
  2. B.Sc.
    String Abstract Domains for the Static Analyzer Goblint
    Nathan Schmidt
    Aug 2023
  3. B.Sc.
    Combatting the Precision Loss of Partial Contexts in Abstract Interpretation
    Felix Krayer
    Feb 2023
  4. B.Sc.
    Automatic Configuration of Goblint - Tuning for Efficient, Yet Precise Enough Analyses of Programs
    Manuel Pietsch
    Sep 2022
    Resulting in joint publication at SVCOMP ’23
  5. B.Sc.
    Increasing the Precision of the Static Analyzer Goblint by Loop Unrolling
    Mireia Cano Pujol
    Feb 2022
  6. B.Sc.
    Towards an Integration of Sarif into Goblint
    Alexander Eichler
    Oct 2021
  7. B.Sc.
    A Continuous Integration and Testing Platform for the Static Analyzer Goblint
    Andreas Ferrano
    Apr 2021
  8. B.Sc.
    Webtool to Create and Check Canonical LR Automata
    Leo Fahrbach
    Feb 2021
    Co-supervised with Dr. Michael Petter
  9. B.Sc.
    Extending a Syntactic Search in C Source Code with Analysis Results from the Static Analyzer Goblint
    Elias Brandstetter
    Sep 2020
  10. B.Sc.
    Extending a VS-Code Plugin for a LLVM-based Program Analyzer with a Mapping back to High Level Code
    Benedikt Kehrein
    Sep 2020
  11. B.Sc.
    Comparison of Analyses in CIL and Goblint
    Kerem Cakirer
    Sep 2020
  12. B.Sc.
    Syntactical Search in C Source Code
    Olga Faddeenkov
    Jul 2020
  13. B.Sc.
    User Interface for Program Analyzer Goblint using an OCaml-JavaScript Transpiler
    Alex Micheli
    May 2020

advised master’s theses & guided research

  1. M.Sc.
    Certifying Memory Safety of Concurrent Programs by Abstract Interpretation
    Stanimir Bozhilov
    Oct 2023
    Resulting in two joint publications at SVCOMP’24
  2. M.Sc.
    Local Traces: Partial Order Reduction for Free
    Olga Faddeenkov
    May 2023
  3. Guided Research
    Interactive Abstract Interpretation
    Kerem Cakirer
    May 2022
  4. M.Sc.
    Implementing and Comparing Linear Relational Domains in the Static Analyzer Goblint
    Martin Wehking
    May 2022
  5. M.Sc.
    Improved Abstract Domains for Structs in the Static Analyzer Goblint
    Jakob Erzar
    Oct 2021
  6. M.Sc.
    Liveness Analysis of Multi-Threaded C with Posix Threads
    Denis Grebennicov
    May 2021
  7. M.Sc.
    Implementation and Comparison of Precision of Various Abstract Domains in the Program Analyzer Goblint
    Dymtro Yakymets
    Nov 2020