670 likes | 1.14k Views
A. B. C. Introduction to Discrete Mathematics. Lecture 1: Sep 6. a = qb+r gcd(a,b) = gcd(b,r). Today’s Plan. Course Information and Arrangement Course Requirement Course Project (and Examples and Ideas) Topics and objectives of this course Introduction to logic.
E N D
A B C Introduction to Discrete Mathematics Lecture 1: Sep 6 a = qb+r gcd(a,b) = gcd(b,r)
Today’s Plan • Course Information and Arrangement • Course Requirement • Course Project (and Examples and Ideas) • Topics and objectives of this course • Introduction to logic
Basic Information • Course homepage: http://www.cse.cuhk.edu.hk/~chi/csc2110/ • Newsgroup: cuhk.cse.csc2110. at news.cse.cuhk.edu.hk • Instructor: Lau, Lap Chi • Office hour: 9:30-12:30, 2:30-5:15 (SHB 911) • Lectures: M7-8 (SC L1), W6 (SC L1) • Tutors: Cheung Ho Yee (Leo) Kwok Tsz Chiu Leung Kai Man (Hackson) Zhang Zixi (Jesse) • Tutorials: W10 (TBD) or H5 (LSB C1) or H6 (LSB C1)
Course Material • Textbook: Discrete Mathematics with Applications Author: Susanna S. Epp Publisher: Brooks/Cole • Notes: Course notes from “mathematics for computer science” http://courses.csail.mit.edu/6.042/spring07/ (available to be downloaded in the course homepage)
Extra Lectures There are two types of extra lectures. Revision lectures: Cover background material Answer questions, explain lectures Do exercises, help homework/exams in Cantonese Advanced lectures: Cover advanced material Both are optional. Revision in “odd” weeks and advanced in “even” weeks. First revision class starts this week, cover high school mathematics (e.g. power and logarithms, number sequences, mathematical induction, differentiation and integration).
Time Table (1) Tutorials (2) Office hours (3) TA office hours (4) extra lectures
Today’s Plan • Course Information and Arrangement • Course Requirement • Course Project (and Examples and Ideas) • Topics and objectives of this course • Introduction to logic
Course Requirements • Homework, 20% • Midterm, 25% • Course project, 10% • Final Exam, 45% Midterm: Oct 25 (Monday), in class
Course Project Pick an interesting mathematical topic, write a report of about 10 pages. 4 students in a group Can use any references, but cite them. Choose 1-3 groups to present, up to 5% (of the course) bonus
Course Project Tell an interesting story about mathematics. • In-depth study of a mathematical topic/method/problem • Interesting problems, elegant solutions • Applications of mathematics to computer science Nice presentation, easy to understand.
Checker x=0 Start with any configuration with all circles on or below the x-axis.
Checker x=0 Move: jump through your adjacent neighbour, but then your neighbour will disappear.
Checker x=0 Move: jump through your adjacent neighbour, but then your neighbour will disappear.
Checker x=0 Goal: Find an initial configuration with least number of circles to jump up to level k.
K=1 x=0 2 circles to reach level 1.
K=2 x=0
K=2 x=0 Now we have reduced to the k=1 configuration, but one level higher. 4 circles to reach level 2.
K=3 x=0 This is the configuration for k=2, so jump two level higher.
K=3 x=0 8 circles to reach level 3.
K=4 x=0
K=4 x=0
K=4 x=0
K=4 x=0
K=4 x=0 Now we have reduced to the k=3 configuration, but one level higher 20 circles (not 16) to reach level 4!
K=5? • 39 or below • 40-50 circles • 51-70 circles • 71- 100 circles • 101 – 1000 circles • 1001 or above It turns out that it is impossible to move to level 5, and there is a very interesting mathematical proof of it.
Example 1 How to play Rubik Cube? Google: Rubik cube in 20 moves! Previous project develops an original method to solve Rubik Cube: http://www.cse.cuhk.edu.hk/~chi/csc2110-2008/notes/Rubik-Cube.ppt
Example 2 The mathematics of paper folding http://www.ushistory.org/betsy/flagstar.html http://erikdemaine.org/foldcut/
Project Ideas Topics: number theory, graph theory, game theory, etc. Methods: probabilistic, algebraic, recursion, induction, etc. Problems: logic paradoxes, magic tricks, paper folding, etc. Applications: cryptography, coding theory, algorithm design, etc. References: “mathematical gems”, wikipedia, popular books, etc. http://www.cse.cuhk.edu.hk/~chi/csc2110/project.html Deadline: November 17.
Today’s Plan • Course Information and Arrangement • Course Requirement • Course Project (and Examples and Ideas) • Topics and objectives of this course • Introduction to logic
Why Mathematics? Understand the design of efficient computer systems. • How did Google manage to build a fast search engine? • What is the foundation of internet security? algorithms, data structures, database, parallel computing, distributed systems, cryptography, computer networks… Logic, number theory, counting, graph theory…
Topic 1: Logic and Proofs How do computers (and humans) think? Logic: propositional logic, first order logic Proof:induction, contradiction Artificial intelligence, database, circuit, algorithms
Topic 2: Number Theory • (Extended) Euclidean algorithm and prime numbers • Modular arithmetic, Chinese remainder theorem • Check digit scheme, cryptography Cryptography, coding theory, data structures
A B C Topic 3: Counting • Sets and Functions • Combinations, Permutations, Binomial theorem • Counting by mapping, pigeonhole principle • Recursions Probability, algorithms, data structures
Topic 3: Counting How many steps are needed to sort n numbers? Algorithm 1 (Bubble Sort): Every iteration moves the i-th smallest number to the i-th position Algorithm 2 (Merge Sort): Which algorithm runs faster?
Topic 4: Graph Theory • Graphs, Relations • Degree sequence, Eulerian graphs, isomorphism • Trees • Matching • Coloring Computer networks, circuit design, data structures
Topic 4: Graph Theory How to color a map? How to schedule exams? How to send data efficiently?
Objectives of This Course • To learn basic mathematical concepts, e.g. sets, functions, graphs • To be familiar with formal mathematical reasoning, e.g. logic, proofs • To improve problem solving skills • To see the connections between discrete mathematics and computer science CSC 2100, ERG 2040, CSC 3130, CSC 3160 Practice, Practice and Practice.
Today’s Plan • Course Information and Arrangement • Course Requirement • Course Project (and Examples and Ideas) • Topics and objectives of this course • Introduction to logic • Motivations • Basic Definitions • Logic formula
c b a Pythagorean theorem Familiar? Obvious?
Good Proof c b b-a a b-a We will show that these five pieces can be rearranged into: (i) a cc square, and then (ii) an aa & a bb square And then we can conclude that
Good Proof The five pieces can be rearranged into: (i) a cc square c b-a c c a b c
b-a b-a Good Proof How to rearrange them into an axa square and a bxb square? c b a
Good Proof a b b a a b-a b 74 proofs in http://www.cut-the-knot.org/pythagoras/index.shtml
Bad Proof A similar rearrangement technique shows that 65=64… What’s wrong with the proof?
Mathematical Proof To prove mathematical theorems, we need a more rigorous system. The standard procedure for proving mathematical theorems is invented by Euclid in 300BC. First he started with five axioms (the truth of these statements are taken for granted). Then he uses logic to deduce the truth of other statements. • It is possible to draw a straight line from any point to any other point. • It is possible to produce a finite straight line continuously in a straight line. • It is possible to describe a circle with any center and any radius. • It is true that all right angles are equal to one another. • ("Parallel postulate") It is true that, if a straight line falling on two straight lines make the interior angles on the same side less than two right angles, • the two straight lines, if produced indefinitely, intersect on that side on which are the angles less than the two right angles. Euclid’s proof of Pythagorean’s theorem http://en.wikipedia.org/wiki/Pythagorean_theorem See page 18 of the notes for the ZFC axioms that we now use.
Statement (Proposition) A Statement is a sentence that is either True or False True 2 + 2 = 4 Examples: False 3 x 3 = 8 787009911 is a prime Non-examples: x+y>0 x2+y2=z2 They are true for some values of x and y but are false for some other values of x and y.
P P Q Q P Q P Q T T T T T T T T F F T F F F T T T F F F F F F F Logic Operators ~p is true if p is false
Compound Statement p = “it is hot” q = “it is sunny” It is hot and sunny It is not hot but sunny It is neither hot nor sunny
Exclusive-Or exclusive-or coffee “or” tea How to construct a compound statement for exclusive-or? Idea 1: Look at the true rows Idea 1: Look at the true rows Idea 1: Look at the true rows Want the formula to be true exactly when the input belongs to a “true” row. The input is the second row exactly if this sub-formula is satisfied And the formula is true exactly when the input is the second row or the third row.
Exclusive-Or exclusive-or coffee “or” tea How to construct a compound statement for exclusive-or? Idea 2: Look at the false rows Want the formula to be true exactly when the input does not belong to a “false” row. The input is the first row exactly if this sub-formula is satisfied And the formula is true exactly when the input is not in the 1st row and the 4th row.