MTH302: Integers, polynomials and matrices.