The purpose of this course is to introduce topics in Discrete Mathematics, providing a foundation for further study and application. The topics covered are useful to both the applied mathematician and the computer scientist. They include propositional logic, elements of set theory, combinatorics, relations, functions, partitions, methods of proof, induction and recursion, digraphs, trees, finite state machines, and algebraic systems. Specific applications to computer science are presented.