Quick Facts

Course B401 / A595—Fundamentals of Computing Theory
Credits 3
Location JH A105
Times Mon & Wed, 11:15 AM-12:30 PM
Instructor Arun Chauhan
AI Chun-Yu Shei
Office Hours Arun Chauhan: Mondays, 3:00-5:00 PM, Lindley 330E
  Chun-Yu Shei: Tuesdays, 1:00-3:00 PM, Lindley 330
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.