This course gives an introduction to basic ideas and techniques in discrete mathematics, focusing on its use in engineering and computer science. Topics covers including: Logic Propositions and Proof Techniques, Mathematical Induction, Elementary Set Theory, Functions and Relations, Recursions, Basic Number Theory and Graph Theory, Counting and Discrete Probability.