Proseminar Assignment Summer 2020

The central registration for all computer science proseminars will open on April 7th.

This system is used to distribute students among the available proseminars. To register for any of the other proseminars that are offered by the computer science department, you have to register here until April 17th 23:59 CET. You can select which proseminar you would like to take, and will then be automatically assigned to one of them on April 24th.

Please note the following:

  • We aim to provide a fair mapping that respects your wishes, but at the same time also respects the preferences of your fellow students.
  • Experience has shown that particular proseminars are more popular than others, yet these proseminars cannot fit all students. We thus encourage students to select their preferences for all available proseminars, which eases the process to assign students that do not fit the overly popular proseminars to another, less crowded one. Each student must therefore select at least three proseminars (with priority from "High" to "Low").
  • If you urgently need to be assigned to a proseminar in the upcoming semester, choose at least five proseminars (with priority from "High" to "Low"). We will then guarantee that you will be assigned to a proseminar (yet not necessarily one of your choice).
  • If you are really dedicated to one particular proseminar, and you do not want any other proseminar, please select the "No proseminar" as second and third positive option. However, this may ultimately lead to the situation that you are not assigned to any proseminar. Also, choosing "No seminar" as second/third option does not increase your chances of getting your first choice.

The assignment will be automatically performed by a constraint solver on April 24th. You will be added to the respective proseminars automatically and be notified about this shortly thereafter. Please note that the assignment cannot be optimal for all students if you drop the assigned proseminar, i.e., make only serious choices to avoid penalty to others.


AI Proseminar Artificial intelligence in relation to considerations from the perspective of history of science, philosophy (of nature) and ethics by Christian Müller

In comparison to the discussion "around AI and ethics", which is currently being conducted by stakeholders from industry and society in various committees, this seminar is distinguished by the fact that it aims to get closer to the bottom. We will approach things from a philosophical perspective and, as the title already suggests, we will incorporate aspects of the history of science, philosophy of nature and (this is self-evident) ethics. We will apply these principles in a more pragmatic part to the discussion "on AI and ethics".

But let's stick to the basics. Here we will begin by taking a look at the philosophy of evolution. Coming from there we will derive two views on the nature of humanity: First, a materialistic-reductionist view, which, in a very condensed form, states that consciousness is a more or less causal epiphenomenon that, at a certain point in time, emerged on our highly complex neocortex; and second, a view that sees the consciousness as the preceding, fundamental principle.

We will look at arguments for both views. For more, see

Places: 10

Algorithms and Complexity by Antoine Joux

This proseminar is meant to provide students an overview over foundational results in the area of algorithms and complexity. As a proseminar's primary purpose is to learn presentation skills, the seminar will feature two presentations from each student.


Because of the Covid-19 situation, this proseminar will be organized via a visioconference system.

After each presentation, the fellow students and lecturers will provide feedback on how to improve the presentation. This general feedback must then be taken into account for the second block of the course, where again each student will present.

For the first presentation, the student will present one of the proposed topics (based on one or two of the suggested references).

To not bore the audience, the second presentation will be on a related topic and based on a different reference document (book or research article).
This second reference will be chosen by the students (not from the initial list of references) and the relevance of the choice will be part of the grading of the second presentation.

The first presentations will count towards 30% of the overall grade, the choice of the second reference will count for 30% and the second presentation itself will count for the remaining 40% of the overall grade. Attendance in the proseminar meetings is mandatory. Because of the block structure, any absence needs a doctor's note as justification.

Requirements: Knowledge of programming, algorithms and basic Algebra.

Places: 10

Automated Testing and Debugging by Andreas Zeller + Jenny Rau

In this proseminar, we explore and evaluate automated techniques for testing and debugging software. We look at a number of classic approaches for generating software tests automatically, for finding errors and locating faults, and for having these two interact with each other. You will be

* reading the associated papers,

* presenting the associated work,

* possibly even with a demonstration of the technique.

For every technique, we will be providing you with the papers (and a reference or textbook implementation, if available). For the presentation, we use standard presentation software; for demonstrations, Python and Jupyter Notebooks have shown to be practical. During the seminar, you will refine your presentation and demonstration skills with us up to the final (and decisive) presentation.

For more details, see

Requirements: Programming skills will be required for demonstrations. Knowledge of Python and experience with Jupyter Notebooks is helpful, but can be acquired during the proseminar.

Places: 8

Cyber-Physical Systems Security by Hamid Reza Ghaeini

There exist a multitude of cyber-physical system devices and applications deployed to serve critical roles, thus making security a crucial non-functional attribute of such systems. This proseminar is meant to provide students with an overview of recent advances in cyber-physical systems security.

We begin the proseminar in the kick-off day by assigning the papers to the students and providing some backgrounds about the proseminar. There will be two rounds of the presentations. In the first round, the students will present a classic paper in the field of cyber-physical systems security. At the end of each presentation, the audience will provide some insights to improve the presentation.

The students will present a state-of-the-art paper in the second round, in which the primary evaluation of the student’s performance will take place. We will encourage the students to prepare the slides in advance and discuss the slides with the advisor. It is helpful to arrange a dry-run of presentation to maintain the high quality of presentation.

Considering the current COVID-19 pandemic, the exact schedule of the course is not fixed yet. However, we will take the kick-off on the first Tuesday.

Course CMS:

Requirements: Prior knowledge in information security.

Places: 15

Das Buch der Beweise by Markus Blaeser

Der berühmte Mathematiker Paul Erdös hatte die Idee, dass es ein Buch geben könnte, in dem zu jedem mathematischen Satz der perfekte Beweis zu finden sei („You don’t have to believe in God, but you should believe in The Book“). Martin Aigner und Günther Ziegler haben sich an einer Approximation zu diesem Buch versucht: Das Buch der Beweise (Proofs from the book), erschienen im Springer Verlag. In diesem Proseminar werden wir gemeinsam einen Teil dieser Beweise erarbeiten.


Requirements: Mathematik für Informatiker 1-3 oder vergleichbar

Places: 20

Funktionale Programmierung by Prof. Gert Smolka, Fabian Kunze, and Andrej Dudenhefner

In diesem Proseminar wollen wir uns mit "Perlen" der funktionalen Programmierung befassen:
- elegante Algorithmen und effiziente Datenstrukturen in funktionalen Programmiersprachen
- Domain-spezifische Programmbibliotheken (z.B. für Parsing)
- Herleitung von (effizienten) Programmen aus "offensichtlich korrekten", aber ineffizienten Beschreibungen
Die Vortragsthemen des Proseminars basieren größtenteils auf Forschungsartikeln, die als "Functional Pearls" in der Zeitschrift Journal of Functional Programming oder einer der großen Konferenzen im Bereich Programmiersprachen erschienen sind.

Einige dieser Arbeiten benutzen die Programmiersprache Haskell. Daher werden wir uns in den ersten Treffen etwas näher mit den Besonderheiten von Haskell im Vergleich zu Standard ML beschäftigen:
- bedarfsgesteuerte Auswertung und "unendliche" Datenstrukturen
- Haskell Typsystem, insbesondere Typklassen und monadische Typen

Das Kickoff-Meeting wird voraussichtlich am Montag der ersten Vorlesungswoche stattfinden. Genauere Informationen folgen, sobald die Lage absehbar ist.

Genauere Informationen finden Sie unter .

Requirements: Das Seminar richtet sich an Studenten ab dem 2. Semester, die die Vorlesung Programmierung 1 erfolgreich besucht haben.

Places: 12

INfluential PApers in Web Security (INPAWS) by Giancarlo Pellegrino, Francis Somè, Ben Stock

This proseminar is meant to provide students an overview over influential papers in the area of Web security. As a proseminar’s primary purpose is to learn presentation skills, the seminar will feature two presentations from each student.

Therefore, in the first half of the semester, we will have presentations of two topics each week (for 6 weeks). After each presentation, fellow students and lecturers will provide feedback on how to improve the presentation. This general feedback must then be taken into account for the second half of the semester, where again each student will present. To not bore the audience, though, this paper will be different from the previously presented one.

The *first presentations* will count towards 30% of the overall grade, the *second presentation* will count towards 70% of the overall grade. Attendance in the proseminar meetings is mandatory. At most one session can be skipped, after that you need to bring a doctor’s note to excuse your absence.

To ensure the quality of presentations is high, you have to set a meeting with the topic advisor one week before the first presentation to discuss the slides. For the second presentation, this meeting is optional, but if desired by the student must be a week before the meeting.

The date for the meeting is fixed to Tuesday, 14-16. After the kick-off on May 5, we will skip the meeting on May 12, so as to ensure sufficient time to prepare for the first set of presentations. From May 19 to July 21, we will then meet every week.

Requirements: Prior knowledge in Web Security is helpful, but not mandated.

Note that the talks *must* be given in English.

Places: 10

Proseminar on Trustworthy Machine Learning (ProTML) by Mario Fritz

Machine learning has made great advances over the past year and many techniques have found their ways into applications. This leads to an increasing demand of techniques that not only perform well - but are also "trustworthy".

Trustworthiness includes:
- Interpretability of the prediction
- Robustness against changes to the input, which occur naturally or with malicious intend
- Privacy preserving machine learning (e.g. when deadling with sensitive data such as in health applications)
- Fairness

The proseminar will take place thursdays at 2pm.

Requirements: Course on one of the following topics: machine learning, statistical learning, data science, AI.

Places: 10

Seminal Papers in Cryptography by Jacqueline Brendel & Cas Cremers

In this proseminar we study a selection of seminal research works in cryptography—starting with the invention of public-key cryptography in the 1970s and making our way towards the present. We discuss the novelty of these research results when they were first published as well as how they have shaped our understanding of modern cryptography.

Each week one student presents their assigned paper, followed by a group discussion (it is highly encouraged that all students have read the paper).

Logistics: The seminar will be held remotely via Zoom. Note that the talks and the ensuing discussion *must* be in English.

The kick-off meeting (where we fix the weekly time slot and assign the topics) will be during the first week of lectures. Details follow as soon as possible.

The seminar is organised by Jacqueline Brendel and Cas Cremers.

Requirements: A basic understanding of cryptographic primitives such as encryption, signatures, and hash functions is required.

Places: 12

Software Engineering 2.0: AI for SE by Sven Apel, Thomas Bock, Sebastian Boehm, Christian Kaltenecker, Florian Sattler

Artificial intelligence has gained momentum in software engineering.
In the past, AI has already shown to increase effectiveness and efficiency when appplying AI on various software engineering tasks.
The current state of AI could herald the start of a new era of "programming 2.0" where code is mainly written, tested, and maintained by AI systems.
Even better, AI affects the way software engineers plan, develop, acquire, deploy, test, and verify software.
Still, machine learning comes with its very own difficulties and pitfalls, so care has to be taken when applying several AI approaches solely "out of the box" on software engineering tasks.

In this course, we address and discuss past, recent, and future advancements through AI in the area of software engineering.

Kick-off and topic assignment will take place on May 7 at 12:15 in E1 1 Room 206.
Please note that the schedule can still change due to the current situation with the SARS-CoV-2 virus.

Requirements: Basic knowledge on software engineering and programming.

Places: 7