Azerbaijan University School of Economics Math 2420 Discrete Mathematics Fall 2010 1. GENERAL INFORMATION Instructor: Akif Vali Alizadeh Office: floor 5, room 55-56 Phone: (+994 12) 434 76 89+104 e-mail: akif.elizade@au.edu.az , akifoder@yahoo.com Office hours: Wednesday 10.00 – 12.00 and on appointment. Class meeting times: Tuesday 13.55 – 15.30 and Thursday 12.00 – 13.35 Textbook: Discrete mathematics, 7th ed., by Richard Johnsonbaugh - Prentice Hall International, 2009. ISBN 0-13-135430-2 Course description: Introduction to discrete structures which are applicable to computer science. Topics include number bases, logic, sets, Boolean algebra, and elementary concepts of graph theory. Prerequisites: None. Objectives: In this course the student is introduced to mathematical thinking in general. This is done via discrete mathematics after an introduction to logic. Basic and fundamental tools of mathematics are explained and applied. The emphasis is put on understanding the concepts and being able to solve problems using them rather than knowing names and definitions by heart. Expected outcomes: As a result of completing the course Discrete Mathematics, MATH 2420, students will be able to: 1. Identify logical form, form compound statements using the connectives and, or and not, determine truth tables of more general compound statements, determine whether two statement forms are logically equivalent or nonequivalent, apply De Morgan’s laws to form negations of and and or, determine whether a statement is a tautology or a contradiction, and use logical equivalences to simplify statement forms. 2. Determine truth tables for compound statements containing conditional and biconditional connectives, represent if-then as or, and then use this representation to negate an if-then statement, determine the negation, contrapositive, converse and inverse of a conditional statement, rewrite a conditional statement as an “only if” statement, and as sufficient and necessary conditions. 1 3. Give the input/output table for the following gates: OR, AND and NOT, find a Boolean expression (input/output table, respectively) of a circuit, find a circuit corresponding to a Boolean circuit (input/output table, respectively) by finding the disjunctive-normal or sum-ofproducts form, determine whether two logical circuits are equivalent, and simplify a combinatorial circuit. 4. Determine the domain and the truth set of a predicate variable, identify universal and existential statements, be able to write these statements in formal and informal language, and identify universal conditional statements, negate universal and existential statements, as well as statements containing both universal and existential statements. 5. Define an even (odd) integer, prove an existential statement using an example, use a direct proof to prove universal statements such as “The sum of an even integer and an odd integer is odd”, “If the difference of any two integers is odd, then so is their sum”, etc., disprove a universal statement by an example, follow the directions for writing proofs of universal statements, and identify common mistakes in proving statements. 6. Find the explicit formula for a sequence, and be able to do calculations involving factorial, summation and product notations. 7. Be able to prove statements using mathematical induction. 8. Determine whether one set is a subset of another, whether two sets are equal, whether an element is in a set or not, be able to determine the union, intersection, difference and complement of sets, illustrate sets using Venn diagrams, determine the Cartesian product of two or more sets, prove set identities, use set identities to derive new set properties from old set properties, use Venn diagrams to prove set identities, determine whether sets form a partition of a given set, and determine the power set of a set. 9. Determine whether a relationship is a function or not, determine the domain, co-domain, range of a function, and the inverse image of x, prove or disprove whether a function is one-toone or not, determine whether a function is onto or not, determine the inverse of a one-to-one correspondence, determine the composition of two functions, and show that if two functions are one-to-one (onto) so too is their composition. 10. Determine the arrow diagram of a relation, whether a relation is a function or not, determine the inverse of a relation, whether a relation is reflexive, symmetric or transitive, determine the transitive closure of a relation, show that the binary relation induced by a partition is an equivalence relation, and show that the set of equivalence classes of an equivalence relation on A forms a partition of A. 11. Identify loops, parallel edges, etc. in a graph, draw the complete graph on n vertices, and the complete bipartite graph on (m,n) vertices, determine whether a graph is bipartite or not, list all the subgraphs of a given graph, determine the degree of a vertex in a graph, prove that the sum of the degrees of the vertices is equal to twice the number of edges, show that in any graph there is an even number of vertices of odd degree, apply these results, and determine the complement of a simple graph. 12. Determine whether a graph is a tree or not, show that any tree with more than one vertex has two leaves, show that any tree with n vertices has n-1 edges, show that if G is an connected graph with n vertices and n-1 edges, then G is a tree, determine in a rooted tree, the root, level of a given vertex, height of the tree, children, parent, siblings, ancestors and descendants of a vertex, determine whether a given tree is a binary or full binary tree, and prove results regarding binary trees. 2 2. TESTING AND GRADING Procedures: Class meets twice a week. Taking good notes during the class is of significant importance. Homework will be assigned in each class. After the class, read the book, read your notes and do as many of the homework problems as you can prior to the next class. Try to get the remaining problems explained in the next class. You are responsible for all material covered in class, whether or not you attended this class. Academic Dishonesty: Plagiarism and cheating are serious offenses and may be punished by failure on the exam. Repeated cheating will result in a grade F for the course. Homework: Working on the homework assignments is an essential part of the course. It is critical for your success on the exams. Quizzes: You are expected to study regularly and to make exercises at home. Pop quizzes to be expected. Active class attendance: Strongly recommended! Worth 10% of the final grade. Exams: The exams are closed book and closed notes. No calculators are allowed. You cannot pass this course without taking the final exam. Determination of the final grade: Active class attendance: 10% Quizzes, exercises and home works 30% Midterm exam: 20% Final exam: 40% The final grading scale will be as follows: A+, A, A-, B+, B, B-, C+, C, C-, D+, D, D-, F. Scores ACTS scores A+ = 97 – 100 A = 93 – 96 A = 90 – 100 A- = 90 – 92 B+ = 87 – 89 B = 83 – 86 B- = 80 – 82 C+ = 77 – 79 C = 73 – 76 C- = 70 – 72 D+ = 67 – 69 D = 63 – 66 D- = 60 – 62 F = 0 – 59 B = 80 – 89 C = 70 – 79 D = 60 - 69 E = 50 – 59 Fx = 40 – 49 F = 0 – 39 3 3. COURSE CONTENT AND PROGRESS Week 1: Chapter 1. Sets and logic 1.1. Sets 1.2. Propositions 1.3. Conditional propositions and logical equivalence Week 2: Chapter 1. Sets and logic 1.4. Arguments and rules of inference 1.5. Quantifiers 1.6. Nested Quantifiers Week 3: Chapter 3. Functions, Sequences and Relations 3.1. Functions 3.2. Sequences and strings Week 4: Chapter 3. Functions, Sequences and Relations 3.3. Relations 3.4. Equivalence Relations 3.5. Matrices of Relations Week 5 Chapter 4. Algorithms 4.1. Introduction 4.2. Examples of algorithms 4.3. Analysis of algorithms 4.4. Recursive algorithms Week 6: Chapter 5. Introduction to number Theory 5.1. Divisors 5.2. Representations of integers and integer algorithms Week 7: Chapter 5. Introduction to number Theory 5.3. The Euclidean algorithm Week 8: Midterm exam Week 9: Chapter 6. Counting methods and the Pigeonhole principle 6.1. Basic principles 6.2. Permutations and combinations 6.3. Generalized permutations and combinations 6.4. Algorithms for generalized permutations and combinations 4 Week 10: Chapter 6. Counting methods and the Pigeonhole principle 6.7. Binomial coefficients and combinatorial identities 6.8. The Pigeonhole principle Week 11: Chapter 7. Recurrence Relations 7.1. Introductions 7.2. Solving recurrence relations 7.3. Applications to the analysis of algorithms Week12: Chapter 8. Graph Theory 8.1. Introduction 8.2. Path and cycles 8.3. Hamiltonian cycles and the traveling salesperson problem 8.4. A shortest-path algorithm 8.5. Representations of graphs Week 13: Chapter 9. Trees 9.1. Introduction 9.2. Terminology and characterizations of trees 9.3. Spanning trees 9.4. Minimal spanning trees 9.5. Binary trees 9.6. Tree traversal 9.7. Decision trees and minimum time for sorting Week 14: Chapter 10. Network Models 10.1. Introduction 10.2. A maximal flow algorithm 10.3. The max flow, min cut theorem 10.4. Matching Week 15: Chapter 11. Boolean Algebras and Combinatorial Circuits 11.1. Combinatorial Circuits 11.2. Properties Combinatorial Circuits 11.3. Boolean algebras 11.4. Boolean functions and synthesis of circuits Final exam 5