Seminar in Theoretical CS, Winter Semester 2020/21
News
- 15.02.2021: Participants’ reports and slides are online.
- 10.06.2020: We are online.
Introduction and Assignment of Topics
Dates & Deadlines
30.10.2020 | Topic preferences due |
30.11.2020 | Detailed outline due |
11.01.2021 | Full report due |
01.02.2021 | Presentation slides due |
08./09.02.2021 | Seminar talks |
Note that the full versions of your report and your slides should be your final submission and the camera-ready versions should differ only with regard to minor remarks, comments, and corrections by your supervisor. Please feel free, however, to talk to your supervisor about submitting preliminary versions before the due dates.
Overview
This seminar covers a variety of topics in the field of probabilistic programs. Roughly speaking, probabilistic programs are like ordinary programs, with an extra feature: the ability to make some sort of probabilistic choice. Here we show how one can exploit this feature to model, for instance, a duel between two cowboys. Describing randomized algorithms has been the classical application of these programs. Applications in biology, machine learning, quantum computing, security, and so on, have led to a rapidly growing interest in probabilistic programs in the last decade. For almost all programming languages, such as C, C#, Prolog, Haskell, Scala, LISP, a probabilistic variant does exist; and even a variant of Microsoft’s Excel has been developed – see the corresponding Wikipedia entry.
The topics considered in this seminar are mostly based on a draft of the forthcoming book Foundations of Probabilistic Programming (edited by Gilles Barthe, Joost-Pieter Katoen, and Alexandra Silva and freely accessible). It contains 15 surveying chapters by different (teams of) authors, divided into five parts:
- Semantics,
- Verification.,
- Logic,
- Security, and
- Programming languages.
Additionally, we include some papers on static analysis of probabilistic programs as this research area is not covered by the book.
Prerequisites
Basic knowledge in the following areas is expected:
- Probability theory
- Automata theory
- Mathematical logic
Schedule of Talks
Time | Monday, February 8 | Tuesday, February 9 |
09:00-10:30 | Leon Barth, Jonathan du Mesnil, Thomas Vogt | Hannah Mertens, Jonas Deutsch, Jan Wieczorek |
11:00-12:30 | Jonathan Lehmkuhl, Sonja Skiba, Lena Verscht | Inokentiy Babushkin, Caroline Jabs, Minh Nghi Phan |
Topics
(Move the cursor over the entry to see the corresponding abstract.)
Chapters of Foundations of Probabilistic Programming:
- [Semantics] Fredrik Dahlqvist, Dexter Kozen, Alexandra Silva: Semantics of Probabilistic Programming: A Gentle Introduction (44 pages)
- Student: Leon Barth
- Supervisor: Joshua Moerman
- [Semantics] Sam Staton: Probabilistic Programs as Measures (35 pages)
- Student: –
- Supervisor: –
- [Semantics] Daniel Huang, Greg Morrisett, Bas Spitters: An Application of Computable Distributions to the Semantics of Probabilistic Programs (50 pages)
- Student: –
- Supervisor: –
- [Semantics] Ugo Dal Lago: On Probabilistic Lambda-Calculi (27 pages)
- Student: Thomas Vogt
- Supervisor: Kevin Batz
- [Verification] Gilles Barthe, Justin Hsu: Probabilistic Couplings from Program Logics (43 pages)
- Student: Jonathan du Mesnil
- Supervisor: Joshua Moerman
- [Verification] Benjamin Lucien Kaminski, Joost-Pieter Katoen, Christoph Matheja: Expected Runtime Analysis by Program Verication (39 pages)
- Student: Jonathan Lehmkuhl
- Supervisor: Joost-Pieter Katoen
- [Verification] Krishnendu Chatterjee, Hongfei Fu, Petr Novotný: Termination Analysis of Probabilistic Programs with Martingales (41 pages)
- Student: Sonja Skiba
- Supervisor: Tobias Winkler
- [Verification] Sriram Sankaranarayanan: Quantitative Analysis of Programs with Probabilities and Concentration of Measure Inequalities (40 pages)
- Student: –
- Supervisor: –
- [Logic] Bart Jacobs, Fabio Zanasi: The Logical Essentials of Bayesian Reasoning (40 pages)
- Student: Lena Verscht
- Supervisor: Bahare Salmani
- [Logic] Giorgio Bacci, Radu Mardare, Prakash Panangaden, Gordon Plotkin: Quantitative Equational Reasoning (30 pages)
- Student: Hannah Mertens
- Supervisor: Lutz Klinkenberg
- [Security] Jose Manuel Calderon Trilla, Michael Hicks, Stephen Magill, Piotr Mardziel, Ian Sweet: Probabilistic Abstract Interpretation: Sound Inference and Application to Privacy (31 pages)
- Student: Caroline Jabs
- Supervisor: Mingshuai Chen
- [Security] Jeremy Gibbons, Annabelle McIver, Carroll Morgan, Tom Schrijvers: Quantitative Information Flow with Monads in Haskell (65 pages)
- Student: Inokentiy Babushkin
- Supervisor: Thomas Noll
- [Programming languages] Lampropoulos Leonidas, Benjamin C. Pierce, Li-yao Xia, Diane Gallois-Wong, Catalin Hritcu, John Hughes: Luck: A Probabilistic Language for Testing (44 pages)
- Student: Jonas Deutsch
- Supervisor: Shahid Khan
- [Programming languages] Michael Carbin, Sasa Misailovic: Programming Unreliable Hardware (39 pages)
- Student: Jan Wieczorek
- Supervisor: Shahid Khan
- [Programming languages] Andrew D. Gordon, Claudio Russo, Marcin Szymczak, Johannes Borgström, Nicolas Rolland, Thore Graepel, Daniel Tarlow: Tabular: Probabilistic Inference from the Spreadsheet (47 pages)
- Student: –
- Supervisor: –
Static analysis:
- Clemens Dubslaff, Andrey Morozov, Christel Baier, Klaus Janschek: Reduction Methods on Probabilistic Control-flow Programs for Reliability Analysis, arXiv:2004.06637, 2020
- Student: –
- Supervisor: –
- Chung-Kil Hur, Aditya V. Nori, Sriram K. Rajamani, Selva Samuel: Slicing Probabilistic Programs. ACM SIGPLAN Notices, 2014
- Student: Minh Nghi Phan
- Supervisor: Mingshuai Chen
- Di Wang, Jan Hoffmann, Thomas Reps: PMAF: An Algebraic Framework for Static Analysis of Probabilistic Programs, PLDI 2018
- Student: –
- Supervisor: –
- Van Chan Ngo, Quentin Carbonneaux, Jan Hoffmann: Bounded Expectations: Resource Analysis for Probabilistic Programs, PLDI 2018, 496-512
- Student: –
- Supervisor: –
Additional Material
- Report template
- Presentation template
- How to Write a Seminar Paper
- Ethische Richtlinien für das Verfassen wissenschaftlicher Arbeiten
- How to Give Presentations
- Introduction to LaTeX
Registration
Registration to the seminar is possible via the central registration procedure of the CS Department.