Introduction to Discrete Mathematics