MATH 278. Geometry and Algebra of Computational Complexity

In this course, mathematical aspects of computational complexity theory will be broadly covered. We shall start with basics of complexity theory (Turing machines, various notions of complexity and NP completeness), discuss other computation models and intractability results, and explore algebro-geometric & representation theoretic approach to P vs NP.  The topics are intricately related but can be learned separately. The goal is to introduce the audience and give them basic knowledge on broad range of topics related to computational complexity (instead of giving an in-depth treatment of one): Understanding a wide spectrum of subjects leads to a deeper understanding and appreciation of the core issues. I also hope that the audience would find something exciting and decide to explore/investigate on their own.
See also: Courses, Fall 2018, Math