Quick Facts

Course B401 / A595—Fundamentals of Computing Theory
Credits 3
Location I2 122 (The new Informatics building on 10th street)
Times Mon & Wed, 11:15 AM-12:30 PM
Instructor Arun Chauhan
AI Christine Task
Office Hours Arun Chauhan: By e-mail (for now)
  Christine Task: Fri 10am-12pm (LH310) and by e-mail
Textbook John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman
  Introduction to Automata Theory, Languages, and Computation, 3/E. Addison-Wesley, 2006.
  (Authors' site)

About the course

Suppose your pointy-haired boss gave you a project to write a program that would optimize the deployment of his sales force by minimizing their daily circuit through all of their 100 customers. Your evaluation would be based on how quickly could your program come up with the best possible route. Should you take up the challenge? Or, consider a situation where you need to develop a tool that needs to take commands from a user, understand those commands, and then take appropriate actions. What kind of language and programming tools should you use to write such a tool? Are there problems that you cannot solve by writing programs? Is there a systematic way to answer questions about the limits of what computers can and cannot do? What are “regular expressions” and how are those related to text editors? These are the kind of questions that this course will help you answer.