Discrete Mathematics

advertisement
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
Download