Semester.ly

Johns Hopkins University | EN.600.271

Automata & Computation Theory

3.0

credits

Average Course Rating

(3.92)

This course is an introduction to the theory of computing. topics include design of finite state automata, pushdown automata, linear bounded automata, Turing machines and phrase structure grammars; correspondence between automata and grammars; computable functions, decidable and undecidable problems, P and NP problems, NP-completeness, and randomization. Students may not receive credit for EN.600.271 and EN.600.471 for the same degree.

Spring 2013

(4.07)

Spring 2014

(3.67)

Spring 2015

(4.03)

Spring 2013

Professor: S Kosaraju

(4.07)

The best aspects of this course included the logic and course material, the interesting subject matter, and the instructor’s enthusiasm and approachability. One student felt that the proofs and reductions were tedious. Some students found the lectures difficult to follow because of their solely theoretical nature. Suggestions included utilizing software that al ows students to teach automaton, and clarifying the homework and old exam solutions – many students found them il egible. Prospective students should know this is a theoretical computer science course and that there is no actual programming.

Spring 2014

Professor: Stephen Chekaway

(3.67)

Many students enrol ed in this course found the subject matter to be interesting and the textbook very helpful. Quizzes reinforced knowledge of material, and problem sets and exercises were good practice. The professor never made problems too chal enging for the level of his students and he thoroughly explained the theory of computation. Students hoped for more TA involvement and for the quizzes to be more straightforward and fair. Suggestions for improvement include: the removal of LaTeX and quizzes, and more feedback from the instructor. Prospective students should be aware that programming is not involved in this course.

Spring 2015

Professor: Stephen Checkoway

(4.03)

The best aspects of the course included the helpful and personable professor, as well as the interesting and useful material that the course covered. Many students noted that the coursework was very challenging, and that the material was theory and proof-based. Some students felt that the professor moved too quickly through topics. Suggestions for improvement included having class notes to study before lectures, providing more prompt and detailed feedback on homework assignments, and giving more practice problems in preparation for exams. Prospective students wil benefit from a background in discrete math, and should be prepared to invest a lot of time into assignments.