====== Teaching Materials (Formal Languages and Computation) ====== While the schedule is suggested so that each of its thirteen segments can be explained during a three-hour class, the lectures correspond to the chapters without any particular time schedule. The lectures also contain additional helpful material, including many examples and figures. ===== Suggested Thirteen-Week Course Schedule ===== * **Week One** ⋅ Introduction: Motivation and Terminology * Chapter 1 * **Week Two** ⋅ Formal Languages and Rewriting Systems * Chapter 2 * **Week Three** ⋅ Regular Languages and Their Models: Finite Automata and Regular Expressions * Chapter 3 * **Week Four** ⋅ Regular Languages and Their Models: Applications and Properties * Chapters 4 and 5 * **Week Five** ⋅ Context-Free Languages and Context-Free Grammars * Sections 6.1 and 6.2 * **Week Six** ⋅ Context-Free Languages and Pushdown Automata * Sections 6.3 * **Week Seven** ⋅ Context-Free Grammars and Pushdown Automata: Applications in Syntax Analysis * Chapter 7 * **Week Eight** ⋅ Context-Free Languages: Properties * Chapter 8 * **Week Nine** ⋅ Turing Machines and Their Languages * Chapter 9 * **Week Ten** ⋅ Turing Machines: Computability * Section 10.1 * **Week Eleven** ⋅ Turing Machines: Decidability and Complexity * Section 10.2 * **Week Twelve** ⋅ Turing Machines and Grammars * Chapter 11 * **Week Thirteen** ⋅ Conclusion * Chapter 12 ===== Lectures (PDF) ===== The following PDF files contain lectures concerning the topics covered during the thirteen-week course sketched above. ^Weeks ^Topics ^ |Weeks 1 - 2|{{:lectures:books:weeks_1-2_alphabets_strings_languages.pdf|Alphabets, Strings, and Languages}} (Chapter 2)| |Weeks 3 - 4|{{:lectures:books:weeks_3-4_i_models_for_regular_languages.pdf|Models for Regular Languages}} (Sections 3.1 and 3.3)| | |{{:lectures:books:weeks_3-4_ii_restricted_fa.pdf|Restricted Finite Automata}} (Section 3.2)| | |{{:lectures:books:weeks_3-4_iii_applications_lexical_analysis.pdf|Applications: Lexical Analysis}} (Chapter 4)| | |{{:lectures:books:weeks_3-4_iv_properties_of_regular_language.pdf|Properties of Regular Languages}} (Chapter 5)| |Weeks 5 - 8|{{:lectures:books:weeks_5-8_i_models_for_cfl.pdf|Models for Context-free Languages}} (Sections 6.1, 6.3 and 7.1)| | |{{:lectures:books:weeks_5-8_ii_top-down_parsing.pdf|Top-Down Parsing}} (Section 7.2)| | |{{:lectures:books:weeks_5-8_iii_bottom-up_parsing.pdf|Bottom-Up Parsing}} (Section 7.3)| | |{{:lectures:books:weeks_5-8_iv_properties_of_cfl.pdf|Properties of Context-free Languages}} (Section 6.2 and Chapter 8)| |Weeks 9 - 13|{{:lectures:books:weeks_9-13_i_tm_gg.pdf|Turing Machines and General Grammars}} (Section 9.1 and Chapter 11)| | |{{:lectures:books:weeks_9-13_ii_church-turing_thesis.pdf|Church-Turing Thesis and Turing Machine}} (Section 9.1)| | |{{:lectures:books:weeks_9-13_iii_restricted_tm.pdf|Restricted Turing Machines}} (Section 9.2)| | |{{:lectures:books:weeks_9-13_iv_universal_tm.pdf|Universal Turing Machine}} (Section 9.3)| | |{{:lectures:books:weeks_9-13_v_theory_of_computation.pdf|Theory of Computation}} (Section 10.1)| | |{{:lectures:books:weeks_9-13_vi_recursion_theorem.pdf|Recursion theorem and Kleene's s-m-n theorem}} (Section 10.1)| | |{{:lectures:books:weeks_9-13_vii_fa_decidability.pdf|Decidability and Decidable Problems for Finite Automata}} (Sections 10.2.1 and 10.2.2)| | |{{:lectures:books:weeks_9-13_viii_cfg_decidability.pdf|Decidable Problems for Context--Free Grammars}} (Section 10.2.2)| | |{{:lectures:books:weeks_9-13_ix_undecidable_problems.pdf|Undecidable Problems}} (Section 10.2.3)| | |{{:lectures:books:weeks_9-13_x_complexity.pdf|General Approach to Undecidability and Computational Complexity}} (Sections 10.2.3 and 10.2.4)| ^ ^{{:lectures:books:flc_lectures_pdf.zip|PDF (complete archive)}} ^