DISCRETE MATHEMATICS
Brief Course Description
This course introduces the foundations of discrete mathematics as they apply to computer science. It focuses on providing a solid theoretical foundation for further work. Topics covered include functions, relations, sets, simple proof techniques, Boolean algebra, propositional logic, digital logic, elementary number theory, and the fundamentals of counting.
Course Objectives
The course aims to provide students with:
i) Knowledge about operations associated with sets, functions, and relations with examples
ii) Understanding of the basic counting principles, including uses of diagonalization and the pigeonhole principle
iii) Understanding of which proof is best for a given problem and the basic structure of each proof technique giving examples
iv) The ability to compute permutations and combinations of a set, and interpret the meaning in context of particular applications
v) The knowledge require to Analyze a problem to create relevant recurrence equations or to identify important counting questions
vi) An appreciation of the effect of AND, OR, NOT and EOR operations on binary data.
Learning Outcomes
Upon successful completion of the course, students shall be able to:
i) Explain the basic concepts of discrete structures and appreciate their importance as they apply to computing
ii) Manipulate formulae involving sets, integers, reals and functions of such quantities
iii) Solve simple problems involving sets, functions, graphs and trees
iv) Construct sound logical arguments, including use of induction
v) Appreciate the way that discrete mathematics can assist problem solving