8 Prerequisites

The formal requirements are listed in the course plan, which may be found at the following link. They include the following.

  1. A basic knowledge of programming and data structures.
  2. A knowledge of programming in C in the Unix/Linux environment.
  3. A knowledge of discrete mathematics and the formal foundations of computer science.
  4. A knowledge of single-variable differential and integral calculus.

Although not listed, it is also expected that the student has some basic knowledge of matrices and linear algebra (product of matrices, inverse of a matrix). It is unlikely that anyone who has progressed to this level would not have at least a nodding acquaintance with these topics, but if so, the instructor can recommend some background reading.