Martin Helfrich

I am a doctoral candidate advised by Prof. Javier Esparza in the Chair for Foundations of Software Reliability and Theoretical Computer Science at the Technical University of Munich. I study the verification, synthesis and complexity of parameterized systems. In particular, I am interested in systems where the complexity arises from the interaction of many simple agents. Thus, my current work revolves around population protocols and chemical reaction networks.

I am part of the research training group ConVeY as well as the ERC-supported project PaVeS.


During my time at university I worked on the following tools:



Peregrine is a tool for the analysis and parameterized verification of population protocols. With its graphical user interface, it allows the user to specify population protocols that then can be simulated both manually and automatically. Peregrine can also find executions of faulty protocols and it can automatically verify if a given protocol computes a specified formula for all of the infinitely many initial configurations.

Automata Tutor

Automata Tutor v3

Automata Tutor is an online tool that uses techniques from program synthesis and decision procedures to improve the quality and effectiveness of teaching in courses on theory of computation, one of the fundamental topics in computer science education.