Applied Discrete Mathematics Week 3: Algorithms

Slides:



Advertisements
Similar presentations
The Integers and Division. Outline Division: Factors, multiples Exercise 2.3 Primes: The Fundamental Theorem of Arithmetic. The Division Algorithm Greatest.
Advertisements

Thinking Mathematically
5.1 Number Theory. The study of numbers and their properties. The numbers we use to count are called the Natural Numbers or Counting Numbers.
1 Section 2.4 The Integers and Division. 2 Number Theory Branch of mathematics that includes (among other things): –divisibility –greatest common divisor.
Chapter Primes and Greatest Common Divisors ‒Primes ‒Greatest common divisors and least common multiples 1.
February 19, 2015Applied Discrete Mathematics Week 4: Number Theory 1 The Growth of Functions Question: If f(x) is O(x 2 ), is it also O(x 3 )? Yes. x.
CSE115/ENGR160 Discrete Mathematics 03/13/12 Ming-Hsuan Yang UC Merced 1.
CSE115/ENGR160 Discrete Mathematics 03/15/11
Chapter II. THE INTEGERS
Discrete Structures Chapter 2 Part B Mathematical Induction
1 Integers and Division CS/APMA 202 Rosen section 2.4 Aaron Bloomfield.
Fall 2002CMSC Discrete Structures1 Let us get into… Number Theory.
BY MISS FARAH ADIBAH ADNAN IMK
The Integers and Division
Homework Review notes Complete Worksheet #2. Homework State whether the conditional sentence is true or false 1.If 1 = 0, then 1 = – 1 True F F T.
Divisibility October 8, Divisibility If a and b are integers and a  0, then the statement that a divides b means that there is an integer c such.
© by Kenneth H. Rosen, Discrete Mathematics & its Applications, Sixth Edition, Mc Graw-Hill, 2007 Chapter 3 (Part 2): The Fundamentals: Algorithms, the.
Chapter 2 The Fundamentals: Algorithms, the Integers, and Matrices
1 Properties of Integers Objectives At the end of this unit, students should be able to: State the division algorithm Apply the division algorithm Find.
9/2/2015Discrete Structures1 Let us get into… Number Theory.
CSE 504 Discrete Mathematics & Foundations of Computer Science
Mathematics of Cryptography Part I: Modular Arithmetic
February 24, 2015Applied Discrete Mathematics Week 4: Number Theory 1 Modular Arithmetic Let a be an integer and m be a positive integer. We denote by.
The Integers & Division. a divides b if a is not zero there is a m such that a.m = b “a is a factor of b” “b is a multiple of a” a|b Division.
Copyright © Zeph Grunschlag, Basic Number Theory Zeph Grunschlag.
Number Theory 이재원 School of Information Technology Sungshin W. University.
Chapter 2 (Part 1): The Fundamentals: Algorithms, the Integers & Matrices The Integers and Division (Section 2.4)
Foundations of Discrete Mathematics Chapter 4 By Dr. Dalia M. Gil, Ph.D.
The Fundamentals. Algorithms What is an algorithm? An algorithm is “a finite set of precise instructions for performing a computation or for solving.
Module #9 – Number Theory 1/5/ Algorithms, The Integers and Matrices.
Discrete Mathematics
Application: Algorithms Lecture 19 Section 3.8 Tue, Feb 20, 2007.
1 Discrete Structures – CNS2300 Text Discrete Mathematics and Its Applications Kenneth H. Rosen (5 th Edition) Chapter 2 The Fundamentals: Algorithms,
Chapter 4 With Question/Answer Animations 1. Chapter Summary Divisibility and Modular Arithmetic - Sec 4.1 – Lecture 16 Integer Representations and Algorithms.
Ch04-Number Theory and Cryptography 1. Introduction to Number Theory Number theory is about integers and their properties. We will start with the basic.
Module #9 – Number Theory 6/11/20161 Chapter 3 Algorithms, Integers and Matrices.
Number Theory Lecture 1 Text book: Discrete Mathematics and its Applications, 7 th Edition.
Discrete Mathematics Chapter 2 The Fundamentals : Algorithms, the Integers, and Matrices. 大葉大學 資訊工程系 黃鈴玲.
Chapter 3 The Fundamentals: Algorithms, the integers, and matrices Section 3.4: The integers and division Number theory: the part of mathematics involving.
Agenda Review:  Relation Properties Lecture Content:  Divisor and Prime Number  Binary, Octal, Hexadecimal Review & Exercise.
Number Theory. Introduction to Number Theory Number theory is about integers and their properties. We will start with the basic principles of divisibility,
Number-Theoretic Algorithms
CS 210 Discrete Mathematics The Integers and Division (Section 3.4)
CSE15 Discrete Mathematics 03/15/17
COT 3100, Spring 2001 Applications of Discrete Structures
Integers and Division Section 3.4.
Numerical Algorithms x x-1 Numerical Algorithms
CMSC Discrete Structures
The Growth of Functions
MATH301- DISCRETE MATHEMATICS Copyright © Nahid Sultana Dr. Nahid Sultana Chapter 4: Number Theory and Cryptography.
Chapter 3, Section 3.1 Algorithms
Applied Discrete Mathematics Week 4: Number Theory
Enough Mathematical Appetizers!
Computation.
Number Theory.
Foundations of Discrete Mathematics
Enough Mathematical Appetizers!
Discrete Math for CS CMPSC 360 LECTURE 12 Last time: Stable matching
The Integers & Division
Applied Discrete Mathematics Week 7: Computation
Enough Mathematical Appetizers!
CMSC 203, Section 0401 Discrete Structures Fall 2004 Matt Gaston
Copyright © Zeph Grunschlag,
Application: Algorithms
Divisibility and Modular Arithmetic
Enough Mathematical Appetizers!
Applied Discrete Mathematics Week 10: Introduction to Counting
Number Theory.
Number Theory.
Discrete Mathematics Chapter 4 Number Theory. Discrete Mathematics Chapter 4 Number Theory.
Presentation transcript:

Applied Discrete Mathematics Week 3: Algorithms Useful Rules for Big-O For any polynomial f(x) = anxn + an-1xn-1 + … + a0, where a0, a1, …, an are real numbers, f(x) is O(xn). If f1(x) is O(g(x)) and f2(x) is O(g(x)), then (f1 + f2)(x) is O(g(x)). If f1(x) is O(g1(x)) and f2(x) is O(g2(x)), then (f1 + f2)(x) is O(max(g1(x), g2(x))) If f1(x) is O(g1(x)) and f2(x) is O(g2(x)), then (f1f2)(x) is O(g1(x) g2(x)). February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Applied Discrete Mathematics Week 3: Algorithms Complexity Examples What does the following algorithm compute? procedure who_knows(a1, a2, …, an: integers) who_knows := 0 for i := 1 to n-1 for j := i+1 to n if |ai – aj| > who_knows then who_knows := |ai – aj| {who_knows is the maximum difference between any two numbers in the input sequence} Comparisons: n-1 + n-2 + n-3 + … + 1 = (n – 1)n/2 = 0.5n2 – 0.5n Time complexity is O(n2). February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Applied Discrete Mathematics Week 3: Algorithms Complexity Examples Another algorithm solving the same problem: procedure max_diff(a1, a2, …, an: integers) min := a1 max := a1 for i := 2 to n if ai < min then min := ai else if ai > max then max := ai max_diff := max - min Comparisons (worst case): 2n - 2 Time complexity is O(n). February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Applied Discrete Mathematics Week 3: Algorithms Division If a and b are integers with a  0, we say that a divides b if there is an integer c so that b = ac. When a divides b we say that a is a factor of b and that b is a multiple of a. The notation a | b means that a divides b. We write a X b when a does not divide b. (see book for correct symbol). February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Divisibility Theorems For integers a, b, and c it is true that if a | b and a | c, then a | (b + c) Example: 3 | 6 and 3 | 9, so 3 | 15. if a | b, then a | bc for all integers c Example: 5 | 10, so 5 | 20, 5 | 30, 5 | 40, … if a | b and b | c, then a | c Example: 4 | 8 and 8 | 24, so 4 | 24. February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Applied Discrete Mathematics Week 3: Algorithms Primes A positive integer p greater than 1 is called prime if the only positive factors of p are 1 and p. A positive integer that is greater than 1 and is not prime is called composite. The fundamental theorem of arithmetic: Every positive integer can be written uniquely as the product of primes, where the prime factors are written in order of increasing size. February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Applied Discrete Mathematics Week 3: Algorithms Primes Examples: 15 = 3·5 48 = 2·2·2·2·3 = 24·3 17 = 17 100 = 2·2·5·5 = 22·52 512 = 2·2·2·2·2·2·2·2·2 = 29 515 = 5·103 28 = 2·2·7 = 22·7 February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Applied Discrete Mathematics Week 3: Algorithms Primes If n is a composite integer, then n has a prime divisor less than or equal . This is easy to see: if n is a composite integer, it must have two divisors p1 and p2 such that p1p2 = n and p1  2 and p2  2. p1 and p2 cannot both be greater than , because then p1p2 would be greater than n. If the smaller number of p1 and p2 is not a prime itself, then it can be broken up into prime factors that are smaller than itself but  2. February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

The Division Algorithm Let a be an integer and d a positive integer. Then there are unique integers q and r, with 0  r < d, such that a = dq + r. In the above equation, d is called the divisor, a is called the dividend, q is called the quotient, and r is called the remainder. February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

The Division Algorithm Example: When we divide 17 by 5, we have 17 = 53 + 2. 17 is the dividend, 5 is the divisor, 3 is called the quotient, and 2 is called the remainder. February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

The Division Algorithm Another example: What happens when we divide -11 by 3 ? Note that the remainder cannot be negative. -11 = 3(-4) + 1. -11 is the dividend, 3 is the divisor, -4 is called the quotient, and 1 is called the remainder. February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Greatest Common Divisors Let a and b be integers, not both zero. The largest integer d such that d | a and d | b is called the greatest common divisor of a and b. The greatest common divisor of a and b is denoted by gcd(a, b). Example 1: What is gcd(48, 72) ? The positive common divisors of 48 and 72 are 1, 2, 3, 4, 6, 8, 12, 16, and 24, so gcd(48, 72) = 24. Example 2: What is gcd(19, 72) ? The only positive common divisor of 19 and 72 is 1, so gcd(19, 72) = 1. February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Greatest Common Divisors Using prime factorizations: a = p1a1 p2a2 … pnan , b = p1b1 p2b2 … pnbn , where p1 < p2 < … < pn and ai, bi  N for 1  i  n gcd(a, b) = p1min(a1, b1) p2min(a2, b2) … pnmin(an, bn) Example: a = 60 = 22 31 51 b = 54 = 21 33 50 gcd(a, b) = 21 31 50 = 6 February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Relatively Prime Integers Definition: Two integers a and b are relatively prime if gcd(a, b) = 1. Examples: Are 15 and 28 relatively prime? Yes, gcd(15, 28) = 1. Are 55 and 28 relatively prime? Yes, gcd(55, 28) = 1. Are 35 and 28 relatively prime? No, gcd(35, 28) = 7. February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Relatively Prime Integers Definition: The integers a1, a2, …, an are pairwise relatively prime if gcd(ai, aj) = 1 whenever 1  i < j  n. Examples: Are 15, 17, and 27 pairwise relatively prime? No, because gcd(15, 27) = 3. Are 15, 17, and 28 pairwise relatively prime? Yes, because gcd(15, 17) = 1, gcd(15, 28) = 1 and gcd(17, 28) = 1. February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Least Common Multiples Definition: The least common multiple of the positive integers a and b is the smallest positive integer that is divisible by both a and b. We denote the least common multiple of a and b by lcm(a, b). Examples: lcm(3, 7) = 21 lcm(4, 6) = 12 lcm(5, 10) = 10 February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Least Common Multiples Using prime factorizations: a = p1a1 p2a2 … pnan , b = p1b1 p2b2 … pnbn , where p1 < p2 < … < pn and ai, bi  N for 1  i  n lcm(a, b) = p1max(a1, b1) p2max(a2, b2) … pnmax(an, bn) Example: a = 60 = 22 31 51 b = 54 = 21 33 50 lcm(a, b) = 22 33 51 = 4275 = 540 February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Applied Discrete Mathematics Week 3: Algorithms GCD and LCM a = 60 = 22 31 51 b = 54 = 21 33 50 gcd(a, b) = 21 31 50 = 6 lcm(a, b) = 22 33 51 = 540 Theorem: ab = gcd(a,b)lcm(a,b) February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Applied Discrete Mathematics Week 3: Algorithms Modular Arithmetic Let a be an integer and m be a positive integer. We denote by a mod m the remainder when a is divided by m. Examples: 9 mod 4 = 1 9 mod 3 = 9 mod 10 = 9 -13 mod 4 = 3 February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Applied Discrete Mathematics Week 3: Algorithms Congruences Let a and b be integers and m be a positive integer. We say that a is congruent to b modulo m if m divides a – b. We use the notation a  b (mod m) to indicate that a is congruent to b modulo m. In other words: a  b (mod m) if and only if a mod m = b mod m. February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms

Applied Discrete Mathematics Week 3: Algorithms Congruences Examples: Is it true that 46  68 (mod 11) ? Yes, because 11 | (46 – 68). Is it true that 46  68 (mod 22)? Yes, because 22 | (46 – 68). For which integers z is it true that z  12 (mod 10)? It is true for any z{…,-28, -18, -8, 2, 12, 22, 32, …} Theorem: Let m be a positive integer. The integers a and b are congruent modulo m if and only if there is an integer k such that a = b + km. February 8, 2018 Applied Discrete Mathematics Week 3: Algorithms