Since 2019, I am a PhD candidate in Helmut Seidl's group and a participant in the DFG Research Training Group ConVeY (Continous Verification of Cyber-Physical Systems).
I am interested in Static Analysis and currently work within the field of Sound Static Analysis by Abstract Interpretation. There, we have, e.g., proposed techniques for efficient abstract interpretation of multi-threaded programs, worked on increasing usability by making static analysis incremental, and designed novel analyses for sometimes overlooked features of the C programming language. I contribute to and currently co-maintain (with Simmo Saan from UTartu) the static analysis framework Goblint for multi-threaded C programs, which serves as the testbed for many of our ideas.
I received a B.Sc. from TUM in 2016, and a M.Sc. from TUM in 2019. During my Master's, I spent one term on exchange at the University of Waterloo and interned at NTNU as a software engineer for one term.
- M. Schwarz, H. Seidl: Octagons Revisited: Elegant Proofs and Simplified Algorithms. SAS 2023 (to appear)
- M. Schwarz, S. Saan, H. Seidl, J. Erhard, V. Vojdani: Clustered Relational Thread-Modular Abstract Interpretation with Local Traces. ESOP 2023: 28-58 (paper, artifact, extended preprint with proofs)
- M. Schwarz, J. Erhard, V. Vojdani, S. Saan, H. Seidl: When Long Jumps Fall Short: Control-Flow Tracking and Misuse Detection for Non-local Jumps in C. SOAP@PLDI 2023: 20-26 (paper, artifact)
- S. Tilscher, Y. Stade, M. Schwarz, R. Vogler, H. Seidl: The Top-Down Solver—An Exercise in A2I. Challenges of Software Verification. Intelligent Systems Reference Library 238: 157-179 (paper)
- S. Saan, M. Schwarz, J. Erhard, M. Pietsch, H. Seidl, S. Tilscher, V. Vojdani: Goblint: Autotuning Thread-Modular Abstract Interpretation - (Competition Contribution). TACAS (2) 2023: 547-552 (paper)
- J. Erhard, S. Saan, S. Tilscher, M. Schwarz, K. Holter, V. Vojdani, H. Seidl: Interactive Abstract Interpretation: Reanalyzing Whole Programs for Cheap. (under review, preprint, artifact)
- M. Schwarz, S. Saan, H. Seidl, K. Apinis, J. Erhard, V. Vojdani: Improving Thread-Modular Abstract Interpretation. SAS 2021: 359-383 (paper, artifact, extended preprint with proofs)
- S. Saan, M. Schwarz, K. Apinis, J. Erhard, H. Seidl, R. Vogler, V. Vojdani: Goblint: Thread-Modular Abstract Interpretation Using Side-Effecting Constraints - (Competition Contribution). TACAS (2) 2021: 438-442 (paper)
- Artifact Evaluation Committee - TACAS'22
- Outreach: TEDxTUM (student-organized popular science conference) Licensee 2019-2022
- IN0003 Functional Programming and Verification (Winter '21/'22, Summer '22, Summer '23)
("Übungsleitung" together with J. Erhard: 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)
- 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.
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.
|Bachelor's Theses||Master's Theses|
| || |