Mathematical logic: propositional calculus, predicate calculus. Permutations, Combinations and Discrete Probability. Set theory: sets, relations, partial ordered sets, functions. Graph theory: graphs, paths, trees. Recurrence Relations and Recursive Algorithms. Algebraic structures: binary operations, semi groups, groups, permutation groups, rings and fields, lattices.