Upload
piper
View
72
Download
1
Embed Size (px)
DESCRIPTION
Continued Fractions, Euclidean Algorithm and Lehmer’s Algorithm. Applied Symbolic Computation CS 567 Jeremy Johnson. TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A. Outline. Fast Fibonacci Continued Fractions Lehmer’s Algorithm - PowerPoint PPT Presentation
Citation preview
Continued Fractions, Euclidean Algorithm and Lehmer’s Algorithm
Applied Symbolic ComputationCS 567
Jeremy Johnson
Outline
• Fast Fibonacci• Continued Fractions• Lehmer’s Algorithm• Analysis of the Euclidean Algorithm (bit
complexity)• Assignment 1
Euclidean Algorithm
g = gcd(a,b) a1 = a; a2 = b; while (a2 0) a3 = a1 mod a2; a1 = a2; a2 = a3; } return a1;
Remainder Sequence
a1 = a, a2 = ba1 = q3 a2 + a3, 0 a3 < a2
ai = qi ai+1 + ai+2, 0 ai+2 < ai+1
al= ql al+1
gcd(a,b) = al+1
Extended Euclidean Algorithm
g = gcd(a,b,*x,*y) a1 = a; a2 = b; x1 = 1; x2 = 0; y1 = 0; y2 = 1; while (a2 0) a3 = a1 mod a2; q = floor(a1/a2); x3 = x1 – q*x2; y3 = y1 – q*y2; a1 = a2; a2 = a3; x1 = x2; x2 = x3; y1 = y2; y2 = y3; } return a1;
Lehmer’s Algorithm
u = 27182818, v = 10000000
u’ v’ q’ u’’ v’’ q’’2718 1001 2 2719 1000 21001 716 1 1000 719 1 716 285 2 719 281 2 285 146 1 281 157 1 146 139 1 157 124 1 139 7 19 124 33 3 u’/v’ < u/v < u’’/v’’
Maximum Number of Divisions
Theorem. Let a b 0 and n = number of divisions required by the Euclidean algorithm to compute gcd(a,b). Then n < 2lg(a).
Maximum Number of Divisions
Theorem. The smallest pair of integers that require n divisions to compute their gcd is Fn+2 and Fn+1.
Theorem. Let a b 0 and n = number of divisions required by the Euclidean algorithm to compute gcd(a,b). Then n < 1.44lg(a).
Average Number of Divisions
Theorem. Let a b 0 and n = average number of divisions required by the Euclidean algorithm to compute gcd(a,b). Then n 12ln(2)2/2 lg(a) 0.584 lg(a).
Theorem [Dixon]D(a,b) ½ ln(a) for almost all pairs u a b 1 as u
Dominance and Codominance
Definition. Let f, g be real valued functions on a common set S.
• [Dominance]
•[Codominance]
•[Strict Dominance]
f ¹ g , 9c > 0;f (x) · cg(x);8x 2 Sf » g , f ¹ g and g ¹ f
f Á g , f ¹ g and g 6¹ f
Basic Properties
Theorem. Let f, f1, f2, g, g1, and g2 be nonnegative real-valued functions on S and c>0.
f » cff 1 ¹ g1 and f 2 ¹ g2 ) f 1 + f 2 ¹ g1 + g2 and f 1f 2 ¹ g1g2f 1 ¹ g and f 2 ¹ g ) f 1 + f 2 ¹ gmax(f ;g) » f + g1¹ f and 1¹ g ) f + g ¹ f g1¹ f ) f » f + c
Integer Length
Definition. A = i=0..m aii, L(A) = m
• • •
•
L ¯ (A) = dlog (jAj + 1)e= blog (jAj)c+ 1L ¯ » L °L(a§ b) ¹ L(a) + L(b)L(ab) » L(a) + L(b); a;b2 I ¡ 0L([a=b]) » L(a) ¡ L(b) + 1; jaj ¸ jbj > 0L(Q n
i=1 ai ) » P ni=1 L(ai ); ai 2 I ¡ ¡ 1;0;1
Basic Arithmetic Computing Times
Theorem. Let A, M, D be the classical algorithms for addition, multiplication and division.
tA (a;b) » L(a) + L(b)tM (a;b) » L(a)L(b)tD (a;b) » L(b)(L[a=b]) » L(b)(L(a) ¡ L(b) + 1)
Maximum Computing Time
Theorem. t+E (m;n;k) ¹ n(m¡ k + 1)
tE (a;b) » P `i=1 L(qi )L(ai+1) ¹ L(b) P `
i=0 L(qi )