The objective of the course is to provide the student with an understanding of the logical underpinnings of mathematics, to explain how the language of mathematical arguments is used and to develop an understanding of how results are established. This course introduces the student to the notion of discrete mathematics and to serve as a prerequisite for other advanced courses in computer science.