Discrete Mathematics

Professors Orestis Telelis
Course category Core
Course ID DS-004
Credits 5
Lecture hours 4 hours
Lab hours -
Digital resources View on Aristarchus (Open e-Class)

Learning Outcomes

The course’s material includes mathematical definitions, results and reasoning methodologies, that pertain to basic discrete objects and models underlying the foundations and applications of computer science. Moreover, the relevant connections of discrete mathematics to several more specific branches of computer science are presented.

Upon successful completion of the course, the students will be in position to:

  • know and understand basic analysis methods of discrete mathematics (indicatively: induction, combinatorial enumeration, solving recurrences, graph theory).
  • choose the appropriate mathematical concepts and representations for each problem at hand (algorithm design, programming, network analysis, study of a cryptographic protocol, database design).
  • choose the appropriate analysis method for evaluating the performance and soundness of the mathematical model that he/she implements for the problem at hand.

Course Contents

  • Sets, Functions, Sequences.
  • Mathematical Induction.
  • Elements of Number Theory.
  • Combinatorial Enumeration.
  • Recurrence Relations.
  • Generating Functions.
  • Order of Functions.
  • Complexity of Algorithms.
  • Mathematical Relations.
  • Elements of Graph Theory.

Recommended Readings

  • K. Rosen. Discrete Mathematics and its Applications. McGraw-Hill Education, 2012.
  • S. Epp. Discrete Mathematics with Applcations. Brooks Cole, 2011.
  • R. L. Graham, D. E. Knuth, O. Patashnik. Concrete Mathematics. Addison Wesley, 1994.