Combinatorics (graph theory, combinatorial games, combinatorics of words, ...)
algorithms (theory and implementation)
analysis of Boolean functions