Algebraic theory of languages and automata Theory of computing mathematics