Introduction to Formal Languages and Automata Theory

Lecture, four hours; discussion, two hours; outside study, six hours. Enforced requisite: course 180. Designed for junior/senior Computer Science majors. Grammars, automata, and languages. Finite-state languages and finite-state automata. Context-free languages and pushdown story automata. Unrestricted rewriting systems, recursively enumerable and recursive languages, and Turing machines. Closure properties, pumping lemmas, and decision algorithms. Introduction to computability. Letter grading.

Review Summary

Clarity
8.3 / 10
Organization
10.0 / 10
Time
15-20 hrs/week
Overall
10.0 / 10

Reviews

    Quarter Taken: Spring 2022 In-Person
    Grade: B

    I enjoyed this class with Prof. Sherstov. He really cared about the students' learning. He was always upbeat and encouraging to the class. The topics in this class are difficult, but you can really understand how complex computation devices such as computers are related to more simple automata.

    It was kind of annoying how there was a test every other week, though. He also does not curve.

    Quarter Taken: Spring 2022 In-Person
    Grade: N/A

    Hard class. Exams are very tough, but the professor has excellent lectures.

    Quarter Taken: Spring 2022 In-Person
    Grade: A

    Professor Sherstov is great, but this class is tough. Concepts like RegEx and Disambiguating a grammar require pure creativity, which can't be taught. The TAs grade harsher based on exam difficulty, which is like a curve. There are four exams, making it a lot of practice every other week. The grading scale is strict. Positive reviews don't mean the class is easy. Choose wisely.

    Quarter Taken: Spring 2023 In-Person
    Grade: A

    Professor is great and is very easy to pay attention and follow along. Textbook not needed but it helps a lot in understanding concepts and examples the professor speed through. Homeworks are graded on completion and feedback is given to them if you try. Tests are a lot harder, and there is no curve (instead there are extra points that you can get to help get 100%)

    Quarter Taken: Spring 2023 In-Person
    Grade: A

    Great class. You can get by just watching the lectures, but the textbook can certainly help if Sherstov fails to explain something in class well. There's some topics where the textbook is just better at explaining. But he genuinely wants everyone to succeed and does what he can to help you learn the material.

Course

Instructor
Alexander Sherstov
Previously taught
23S 22S 20W 19F 18F 17F 16F 15F 15S 14S 13S

Grading Information

  • No group projects

  • Attendance not required

  • 2 midterms

  • Finals week final

  • 40% recommend the textbook

Previous Grades

Grade distributions not available.