This course showcases how different areas of mathematics can be useful in computer science. We will study several mathematical tools such as Algebra (Groups, Rings, Fields), Matrix theory, (Discrete) Probability, Fourier analysis, and see how they are used in developing modern algorithms and proving impossibility results in various areas in computer science.
This covers some of basic tools that would be useful for students who are interested in doing research in the theory side of computer science.
You are expected to be familiar with topics covered in Discrete Math (CSC 226), Data structures and Algorithms (CSC 316). In particular, it is important to refresh your memory on the following concepts before coming to class:
The free book "Mathematics for Computer Science" by Lehman, Leighton, and Meyer is an excellent resource for learning these concepts. It also comes with a set of online lectures.
To be decided