This course teaches a calculus that enables precise quantitative predictions of large combinatorial structures. In addition, this course covers generating functions and real asymptotics and then introduces the symbolic method in the context of applications in the analysis of algorithms and basic structures such as permutations, trees, strings, words, and mappings.
Math through calculus and basic familiarity with programming in a modern language such as Java. Knowledge of basic algorithms and data structures from Algorithms, Part I is helpful but not required. The video From Analysis of Algorithms to Analytic Combinatorics: A Journey with Philippe Flajolet, is an optional (since it contains some advanced material that is beyond the scope of this course) overview that gives some historical perspective and introduces this course and Analytic Combinatorics.
No certificates, statements of accomplishment, or other credentials will be awarded in connection with this course.