“The theory of computation” studies the nature of computation and various properties of computation. It is the core theoretical foundation of Computer Science, Intelligent Science, and Artificial Intelligence. This course teaches automata and formal languages, models of computation, computability theory, and computational complexity theory; let students know what is computation, what can be computed in principle, what cannot be computed in principle, what are easy to compute, and what are difficult to compute.