Discrete Mathematics [2ΚΠ02 - Second Semester]
Introduction. Logic. Propositional equivalences. Predicates and quantifiers. Introduction to set theory. Set operations. Finite and infinite sets. Relations and functions. Equivalence relations and partial ordering. Counting. Pigeonhole Principle. Permutations and combinations. Languages and grammar. Finite-state machines. Language recognition. Introduction to graph theory. Planar, weighted and directed graphs. Euler paths and cycles, Hamilton paths and cycles, the travelling salesman problem. Introduction to Trees. Spanning and binary trees. Other tree and graph algorithms. Introduction to computational complexity. Properties of integer numbers, prime numbers, mathematical induction and recursion. Applications to real world problems.