1. |
|
Introduction |
1. Main goal of this online course on Discrete Mathematics is to lay foundation for Computer Science courses such as data structures, algorithms, relational database theory, automata theory and formal language, compiler design, graph theory, number theory. |
|
|
|
Do you speak Math |
1. Make Sense of problems, and try to solve them
2. Mathematical Reasoning – Abstractly and Quantitatively
3. Mathematical Modeling of Real world problems
4. Construct a viable argument
5. Make use of induction or structure if possible
6. Recursive thinking
7. Logics and proofs |
|
|
|
Logic of Compound statement_1 |
1. Applications of Boolean logic
2. Boolean propositions
3. Boolean variables
4. Introduction to Logical Operators
5. Logical operators: Not
6. Logical operators: And
7. Logical operators: Or
8. Logical operators: Exclusive Or
9. Inclusive Or versus Exclusive Or
10. Logical operators: Nand and Nor |
|
2. |
|
Logic of Compound statement_2 |
1. Logical operators: Conditional 4
2. Logical operators: Bi-conditional 1
3. Logical operators: Bi-conditional 2
4. Boolean operators summary
5. Precedence of operators
6. Translating English Sentences
7. Translation Example 1
8. Translation Example 2
9. Boolean Searches
10. Bit Operations 1 |
|
|
|
Logic of Compound statement_3 |
1. Tautology and Contradiction
2. Logical Equivalence
3. Logical Equivalences of And
4. Logical Equivalences of Or
5. Corollary of the Associative Law
6. Logical Equivalences of Not
7. DeMorgan’s Law
8. Yet more equivalences
9. How to prove two propositions are equivalent?
10. Using Truth Tables |
|
|
|
Logic of Compound statement_4 |
1. Modus Ponens example
2. Modus Ponens
3. Modus Tollens
4. Modus Tollens cont..
5. Generalization & Specialization
6. So what did we show?
7. More rules of inference
8. Even more rules of inference
9. Knights and Knaves
10. Who is the killer? |
|
3. |
|
Logics of Quantified Statement_1 |
1. Propositional functions
2. Anatomy of a propositional function
3. So, why do we care about quantifiers?
4. Quantifiers
5. Universal quantifiers
6. Existential quantification |
|
|
|
Logics of Quantified Statement_2 |
1. A note on quantifiers
2. Binding variables
3. Negating quantifications
4. Translating from English
5. Prolog
6. Multiple quantifiers
7. Order of quantifiers
8. Negating multiple quantifiers
9. Translating between English and quantifiers |
|
|
|
Rules of Inference |
1. Rules of inference for the universal quantifier
2. Rules of inference for the existential quantifier
3. Rules of Inference – Examples |
|
4. |
|
Number Theory |
1. Why prime numbers?
2. The divides operator
3. Theorem on the divides operator
4. Prime numbers
5. Fundamental theorem of arithmetic
6. Composite factors
7. Showing a number is prime
8. Showing a number is composite
9. Primes are infinite
10. The prime number theorem |
|
|
|
Number Theory and Method of Proof |
1. Pseudorandom numbers
2. The Caesar cipher
3. Rot13 encoding
4. Proof methods
5. Direct proofs
6. Indirect proofs
7. Which to use |
|
|
|
Method of Proof |
1. Proof by contradiction
2. A note on that problem…
3. How others explain proof by contradiction
4. Vacuous proofs
5. Trivial proofs
6. Proof by cases
7. The thing about proof by cases
8. Existence proofs
9. Uniqueness proofs
10. Mistakes in proofs |
|
5. |
|
Set Part_1 |
1. What is a set?
2. Set properties
3. Specifying a set
4. Often used sets
5. The universal set
6. Venn diagrams
7. The empty set
8. Set equality
9. Subsets
10. Proper Subsets |
|
|
|
Set Part_2 |
1. Proper subsets: Venn diagram
2. Set cardinality
3. Power sets
4. Tuples
5. Cartesian products
6. Sets of Colors
7. Set operations: Union
8. Disjoint sets |
|
|
|
Set Part_3 |
1. Set identities
2. How to prove a set identity
3. What we are going to prove…
4. Proof by using basic set identities
5. What is a membership table |
|
6. |
|
Function Part_1 |
1. Definition of a function
2. Function terminology
3. More functions
4. Even more functions
5. Function arithmetic
6. One-to-one functions |
|
|
|
Inverse Function |
1. More on inverse functions
2. set X mapping into a Set Y |
|
|
|
Function Part_2 |
1. Graphs of functions
2. Compositions of functions
3. Useful functions
4. Sample floor/ceiling questions
5. Ceiling and floor properties |
|
7. |
|
Induction I_Sequence |
1. Definitions
2. Sequences
3. Geometric vs. arithmetic sequences
4. Fibonacci sequence
5. Reproducing rabbits
6. Fibonacci sequence
7. Determining the sequence formula |
|
|
|
Induction II_Weak and Strong |
1. How do you climb infinite stairs?
2. Let’s use that as a proof method
3. What is induction?
4. What did we show
5. The idea behind inductive proofs
6. Notes on proofs by induction |
|
|
|
Induction III_Structual and Recursion |
1. Chess and induction
2. Inducting stones
3. Recursion
4. Fibonacci sequence
5. Recursion definition
6. Bad recursive definitions
7. Defining sets via recursion
8. Defining strings via recursion |
|
8. |
|
RELATIONS_1 |
1. What is a relation
2. Representing relations
3. Relations vs. functions
4. Relations on a set
5. Reflexivity
6. Irreflexivity
7. Symmetry |
|
|
|
RELATIONS_2 |
1. Combining relations
2. Combining relations via Boolean operators
3. Combining relations via relational composition
4. Matrix review
5. Matrix transposition
6. Relations using matrices |
|
|
|
RELATIONS_3 |
1. Representing relations using directed graphs
2. Reflexivity
3. Irreflexivity
4. Symmetry
5. Antisymmetry
6. Applications of digraphs: MapQuest |
|
9. |
|
Relations App |
1. 6 degrees of separation
2. Connectivity relation
3. How long are the paths in a transitive closure?
4. Sample questions
5. More transitive closure algorithms |
|
|
|
RSA Relations App |
1. Private key cryptography
2. Public key cryptography
3. Is that number prime?
4. More on the Fermat primality test
5. Key generation steps
6. The keys
7. Encrypting messages |
|
|
|
PGP Relations App |
1. PGP and GnuPG
2. How to “crack” PGP
3. Man-in-the-middle attack: “Normal” RSA communication
4. Other public key encryption methods
5. Partial Ordering
6. Symbol usage
7. Well-ordered sets |
|
10. |
|
Counting |
1. The product rule
2. The sum rule
3. More complex counting problems
4. The inclusion-exclusion principle
5. Bit string possibilities |
|
|
|
Permutation and Combination |
1. The pigeonhole principle
2. Generalized pigeonhole principle
3. Sample questions
4. Permutations vs. Combinations
5. Permutation formula proof
6. Combinations |
|
|
|
Pascal's Triangle |
1. Polynomial expansion
2. Polynomial expansion: The binomial theorem
3. Pascal’s triangle
4. Pascal’s Identity
5. Pascal’s identity: combinatorial proof
6. Proof practice: corollary |
|
11. |
|
Graph Theory part_1 |
1. Seven Bridges of Königsberg
2. A Graph
3. Euler’s Solution
4. Types of Graphs
5. Simple Graphs
6. Vertex Degrees
7. Degree Sequence |
|
|
|
Graph Theory part_2 |
1. Same Graphs?
2. Graph Isomorphism
3. Are These Isomorphic?
4. Checking Graph Isomorphism
5. Paths
6. Connectedness
7. Cycles
8. Shortest Paths |
|
|
|
Graph Theory part_3 |
1. Partitioned into Simple Cycles
2. Proof
3. Tree
4. More Trees
5. Tree Characterization by Path
6. Tree Characterization by Number of Edges
7. Definitions |
|
12. |
|
Application of Graphs |
1. minimum spanning tree
2. Prim’s Algorithm
3. Kruskal’s Algorithm
4. Adjacency matrix for graph
5. Single Source Shortest Path Algorithm
6. Dijkstra’s Algorithm |
|
|
|
Algorithm_1 |
1. What is an algorithm?
2. Some algorithms are harder than others
3. Algorithm 1: Maximum element
4. Maximum element running time
5. Properties of algorithms
6. Searching algorithms
7. Algorithm 2: Linear search
8. Linear search running time
9. Algorithm 3: Binary search
10. Binary search running time |
|
|
|
Algorithm_2 |
1. Insertion sort running time
2. Comparison of running times
3. How does one measure algorithms
4. Bubble sort running time
5. An aside: inequalities
6. Review of last time
7. Big-Oh notation |
|
13. |
|
Review of DM_1 |
1. Logics
2. Application: A More Complex Deduction
3. Proof
4. Tarski’s World
5. Ambiguous Language
6. Mathematical Trick - Generalizing from the Generic Particular
7. Sum of n numbers |
|
|
|
Review of DM_2 |
1. fibonacci
2. Mathematical Induction Works Using Dominoes
3. Russell’s Paradox
4. N-ary Relations and Relational Databases
5. Application of Partial Ordering -PERT and CPM
6. Generalized Pigeonhole Principle |
|
|
|
Finite State Machine |
1. Introduction
2. Machine
3. Finite-State Machine
4. Diagraph Notation
5. Newspaper Vending Box Digraph
6. Regular Expressions
7. FSMs and Regular Expressions |
|