## COURSE OBJECTIVES

• To lay the foundations for theoretical computer science.
• To understand the basic mathematical concepts generally required for most computer science courses.
• Developing precise and formal reasoning skills in students.
• Exploring different ways of mathematical thinking i.e. Logical thinking, Relational thinking, Recursive thinking, Quantitative thinking and Analytical thinking.

### COURSE LEARNING OUTCOMES (CLO)

CLO: 1. Apply the elements of propositional logic statements and operations using truth table, logical identities, rules of inference for theorem proving[C3-Application]
CLO: 2. Construct inductive hypothesis along with recursive definitions using mathematical and logical notation to define and formally reason about basic mathematical concepts. [C3-Application]
CLO: 3. Understand asymptotic notation, its significance, and be able to use it to analyze asymptotic performance for some basic algorithmic examples with the help counting principles such as permutation and combinations.[C4-Analysis]
CLO: 4. Understand some basic properties of graphs and related discrete structures, and be able to discover their relationship with practical examples [C3-Application]