Algorithms & Complexity

Combinatorics, Computing, and Randomness

We study fundamental algorithmic problems that arise in various fields of mathematics and computer science. Historically we have focused on problems in graph theory, algebra, data structures, and approximation and online algorithms. Discrete Mathematics deals with finite objects, which usually do not have an algebraic structure. Examples are graphs, sequences or set systems. Since such objects play a central role in computer science, there is a rich exchange between the two fields.