Algorithms
Many important topics in computer science, such as the correctness of software, the efficiency of algorithms and the modeling of complicated systems, depend on sound theoretical underpinnings. In the Theory group, we study these fundamental building blocks and develop verification methods to prove system correctness, new (quantum) algorithms and fundamental models of concurrency and infinite-state systems.
We develop combinatorial algorithms, for example for use in different types of games, with a special emphasis on algorithms that can be applied in biology, such as massive string matching. We also work on scalable algorithms for analyzing networked systems in the real world. Examples include computational approaches for computing distance measures such as the diameter, as well as efficiently counting characteristic graph patterns.