240 likes | 377 Views
Mathematics Review. Exponents Logarithms Series Modular arithmetic Proofs. Manipulation of exponents When the operation involves multiplication, add the exponents algebraically When the operation involves division, subtract the divisor exponent from the numerator exponent.
E N D
Mathematics Review • Exponents • Logarithms • Series • Modular arithmetic • Proofs
Manipulation of exponents • When the operation involves multiplication, add the exponents algebraically • When the operation involves division, subtract the divisor exponent from the numerator exponent. • When the operation involves powers or roots, multiply the exponent by the power number or divide the exponent by the power number, respectively. • Others
Logarithms • In computer science, all logarithms are to the base 2 unless specified otherwise. • DEFINITION: XA = B if and only if logXB = A
THEOREM 1.1 Proof: Let X = logCB, Y = logCA, Z = logAB. By the definition of logarithms, CX = B, CY = A, and AZ = B Combining these three equalities yields CX = B = AZ = (CY)Z = CYZ Therefore, X = YZ, which implies Z = X/Y, proving the theorem.
AB = 2X2y = 2x+y 2Z = AB • THEOREM 1.2 logAB = logA + logB; A, B > 0 Proof: Let X = logA, Y = logB, Z = logAB. By the definition of logarithms, 2X = A, 2Y = B, and 2Z = AB Combining these three equalities yields 2X2y = 2x+y= AB = 2Z Therefore, X+Y = Z, proving the theorem.
Some other useful formulas: log (A/B) = log A – log B log (AB) = B log A log X < X for all X > 0
Series • Two usual types • Geometric series: • Such that for a constant g, n=1, 2, … • Mathematical progressions: • Such that for some constant d , n=1, 2, …
Let S = , That is, S = A0 + A1 + A2 + … + AN-1 + AN AS = A1 + A2 + … + AN-1 + AN +AN+1 AS – S = AN+1 – 1 Therefore, If 0 < A < 1, then • Geometric series • A common one: • Its companion: How to compute it? Why ?
For 0 < A < 1 and N tends to , • Another sum that occurs frequently We write S = and multiply by 2, obtaining 2S = Subtracting these two equations yields S = Thus, S = 2.
How to compute ? • Arithmetic series 1 2 3 4 5 … N-2 N-1 N Therefore, (N+1)*(N/2) = N+1 N+1 N+1 N/2 pairs
Harmonic series For positive integers N , the N th harmonic number is HN= = • Other formulas
Modular Arithmetic • A is congruentto B modulo N, written A B (mod N), if N divides A-B. • Intuitively, this means that the remainder is the same when either A or B is divided by N. • Ex’s, • Check the following • 20 ? 6 (mod 2) • 25 ? 10 (mod 3) • 20 ? 6 (mod 4) • 100 ? 23 (mod 6)
Since A B (mod N), based on the definition, there exists an integer k such that A-B = k N. Now, AD-BD = (A-B)D = k ND So, N divides AD-BD. Therefore, AD BD (mod N) (A+C) – (B+C) = A – B Since A B (mod N), from the definition, N divides A-B. Thus, N divides (A+C)-(B+C) Therefore, A+C B+C (mod N) • If A B (mod N), then A+C B+C (mod N) AD BD (mod N)
Proofs • Two most common ways of proving statements in data structure analysis: proof by inductionand proof by contradiction. • The best way of proving that a theorem is false is by exhibiting a counterexample.
Proof by induction (two steps) • Base case: Establish that a theorem is true for some small value(s). This step is almost always trivial. • Induction step: • An inductive hypothesis is assumed (which means that the theorem is assumed to be true for all cases up to some limit k) • Using this assumption, the theorem is then shown to be true for the next value, which is typically k+1.
Example 1: Fibonacci numbers Fi < (5/3)i, for i >=1 Fibonacci numbers: F0 = 1, F1 = 1, F2 = 2, …, Fi = Fi-1 + Fi-2 Base case: verify that the theorem is true for the trivial cases. F1 = 1 < 5/3 F2 = 2 < 25/9 Inductive hypothesis: We assume that the theorem is true for i = 1, 2, …, k. To prove the theorem, we need to show that Fk+1 < (5/3)k+1 We have Fk+1 = Fk + Fk-1 < (5/3)k+ (5/3)k-1 (using inductive hypothesis) = (3/5) (5/3)k+1 + (3/5)2(5/3)k+1 = (3/5) (5/3)k+1 + (9/25)(5/3)k+1 = (3/5 + 9/25) (5/3)k+1 = (24/25) (5/3)k+1 < (5/3)k+1 which proves the theorem.
= (N+2)(2N+3) • Example 2: THEOREM 1.3 If N >= 1, then Proof: The proof is by induction. Base case: Obviously, the theorem is true when N = 1 Inductive hypothesis: Assume that the theorem is true for 1 <= k <= N. We need to establish that, under this assumption, the theorem is true for N+1. We have Applying the inductive hypothesis, we obtain Thus,
Proof by contradiction • Strategies: • Assume that the theorem is false • Show that this assumption implies that some know property is false, which indicates the original assumption was wrong. • Example 1: The number of primes is infinite. A positive integer number is a prime if and only if only 1 and itselfdivide the number. Proof: We assume that there is a finite number of primes, so that there is some largest prime Pk. Let P1, P2, …, Pk be all the primes in order and consider N = P1P2 … Pk + 1 Clearly, N > Pk, so by assumption N is not prime. However, none of P1, P2, …, Pk divides N exactly. This is a contradiction, because every number is either prime or a product of primes. Hence, the original assumption is false, which implies that the theorem is true.
Example 1 • is not a rational number. • Note: a rational number can be represented by a irreducible fraction of two integers • Proof. By contradiction • (Who can do this?)
Proof by counterexample • Proof by counterexample is usually used to prove that a theorem is false. • Constructing a counterexample is not as easy as it seems • Example 1: The statement Fibonacci number Fk <= k2 is false. • Proof: F11 = 144 > 112. Therefore, the statement is false.
A Brief Introduction to Recursion • A function is recursive if itself is used in its definition. • A recursive function must have a base (base cases) and a general relation which reduces a general case to simple case, and eventually to the base (or base cases). • Ex’s?
A good way to understand recursion is through building a recursion tree • The good points for recursion are • To write elegant codes • Easier analysis of the algorithm performance • The bad points are • Time consuming (Why?) • Space consuming (Why?)
Four Basic Rules of Recursion • Base cases: You must always have some base cases, which can be solved without recursion. • Making progress: For cases that are to be solved recursively, the recursive call must be always be to a case that makes progress toward a base case. • Design rule. Assume that all the recursive calls work. • Compound interest rule. Never duplicate work by solving the same instance of a problem in separate recursive calls.