Automata, languages, and machines - Eilenberg, Samuel (Pure and applied mathematics, 1974)