These lecture notes contain all material relevant for the examinations and the course. For further reading, the author refers to the textbooks Automata Theory and its Applications by Bakhadyr Khoussainov and Anil Nerode [46] and Introduction to Automata Theory, Languages, and Computation by Hopcroft, Motwani and Ullman [35]. The author would like to thank Volker Diekert, Henning Fernau, Vladimi...