Part 1 (through Induction) (pdf)
Solutions (pdf)
Part 2 Finite and Regular Languages
Finite Languages through DFAs (pdf)
Solutions (pdf)
NFAs through Equivalence of Regular and Recognizable Languages (pdf)
Solutions (pdf)
Pumping Lemma through Decision Problems) (pdf)
Solutions (pdf)
Part 3 Context-Free Languages
Phrase-Structure Grammars to Parsing (pdf)
Solutions (pdf)