This course covers the fundamental techniques and algorithms of counting. Topics include combinations, permutations, lists and strings, distributions, Stirling numbers, partitions, rearrangements and derangements, the principle of inclusion and exclusion, generating functions, and recursion. The course may include further topics such as the Polya-Redfield method, partially ordered sets, enumeration problems from graph theory, Ramsey'92s Theorem, block designs, codes, difference sets, finite geometries, Latin squares and Hadamard matrices.
Prerequisites
MAT 258