The theme of this course is “Automata and Formal Languages.” This course deals with fundamental concepts on automata and formal languages and their applications through discussion, group work, lectures and working on exercise problems. Specifically, this course gives definitions, examples and analysis methods of “automata,” “Turing machines,” “formal grammars,” “formal languages,” and “classes of languages.” These are fundamental concepts of automata and formal languages and their applications, which the students are expected to understand upon the completion of this course.
This course aims to cultivate the students’ abilities to: select an appropriate automaton or a formal language for describing and analyzing a focal object; describe an object by an automaton or a formal language; analyze an automaton or a formal language and draw some insights from the results of the analysis; and convey analysis results to others concisely.
Upon completion of this course, students should be able to:
1) State the definitions of automata and formal languages using examples of objects described by automata or formal languages;
2) Apply analysis methods to examples of objects described by automata and formal languages, and explain the analysis results to others;
3) Select an appropriate automaton or an appropriate formal language and describe a focal object;
4) Apply analysis methods to an object described by an automaton or a formal language, and explain the analysis results to others
automata, Turing machines, formal grammars, formal languages, classes of languages
|Intercultural skills||Communication skills||Specialist skills||Critical thinking skills||Practical and/or problem-solving skills|
One class deals with one framework.
The students examine examples of objects which can be described in a framework, first individually, second in pairs, then in groups of four, and finally with the class as a whole. Then a lecture on the framework is presented, and the students work on exercise problems. At the end of the class, each student writes and submits a “summary report” on what he/she learned through individual observation, other students’ ideas, the lecture, and exercise problems.
|Course schedule||Required learning|
|Class 1||Automata, languages and formal grammars||State the definitions of automata, languages and formal grammars|
|Class 2||Finite automata||State the definitions of finite automata|
|Class 3||Pushdown automata||State the definitions of pushdown automata|
|Class 4||Turing machines||State the definitions of Turing machines|
|Class 5||Formal grammars||State the definitions of formal grammars|
|Class 6||Formal languages||State the definitions of formal languages|
|Class 7||Relationships between automata and formal languages||State the relationships between automata and formal languages|
|Class 8||Classes of languages||State the definitions of classes of languages|
Masaaki YONEDA (supervisor), Masaki YONEDA (author), Sadaki HIROSE (author), Nobuyasu OSATO (author), Satoshi OKAWA (author), “Basics of Automata and Language Theory”, Kindai-Kagaku-Sha, 2003 (ISBN 978-4-7649-0297-8) (in Japanese)
Course materials are posted on OCW-i and/or provided during the classes.
Assessment will be based on “summary reports” written during each class (50% in total) and the final examination (50%).
Students must have successfully completed “Trans-disciplinary Exercise in Social and Human Sciences S1A (Basics of Logic and Set Theory)” and “Trans-disciplinary Exercise in Social and Human Sciences S1B (Basics of Metric, Convergence and Continuity)” or have equivalent knowledge.
Takehiro Inohara, inostaff[at]shs.ens.titech.ac.jp
Instructor’s office: Rm. 813, 8 Fl., West Bldg. 9. Contact by e-mail in advance to schedule an appointment.
This course consists of the content of science.