Logic, sets, proofs, combinatorics, graphs, and discrete probability — the language most of computer science and algorithms are built on.