Randomness and Computation: Some Prime ExamplesEarth has huge file X that she transferred to Moon. Moon gets Y.Slide 3Their estimatesSlide 5The Prime Density TheoremSlide 7Slide 8Slide 9Slide 10Really useful factPicking A Random PrimeSlide 13Slide 14Slide 15Moral of the storySlide 17Are X and Y the same n-bit numbers?Why is this any good?Slide 20Almost there…Slide 22Slide 23Exponentially smaller error probabilityGreat Theoretical Ideas In Computer ScienceUrmi MajumderCOMPSCI 102 Fall 2007Lecture 16 October 24, 2007 Carnegie Mellon UniversityRandomness and Computation: Some Prime ExamplesEarth has huge file X that she transferred to Moon. Moon gets Y.Earth: XEarth: X Moon: YDid you get that file ok? Did you get that file ok? Was the transmission Was the transmission accurate?accurate?Uh, yeah.GaussLet (n) be the number of primes between 1 and n. I wonder how fast (n) grows? Conjecture [1790s]: ( )lim 1/ lnnnn np��=LegendreTheir estimatesx pi(x) Gauss' Li Legendrex/(log x - 1)1000 168 178 172 16910000 1229 1246 1231 1218100000 9592 9630 9588 95121000000 78498 78628 78534 7803010000000 664579 664918 665138 661459100000000 5761455 5762209 5769341 57403041000000000 50847534 50849235 50917519 5070154210000000000 455052511 455055614 455743004 454011971J-S HadamardTwo independent proofs of the Prime Density Theorem [1896]:( )lim 1/ lnnnn np��=De la Vallée PoussinThe Prime Density TheoremThis theorem remains one of the celebrated achievements of number theory. In fact, an even sharper conjecture remains one of the great open problems of mathematics!RiemannThe Riemann Hypothesis [1859] ( ) / lnlim 0nn n nnp��-=Slightly easier to show (n)/n ≥ 1/(2 logn).Random logn bit number is a random number from 1..n(n) / n ≥ 1/2lognmeans that a random logn-bit number has at least a 1/2logn chance of being prime.Random k bit number is a random number from 1..2k(2k) / 2k ≥ 1/2kmeans that a random k-bit number has at least a 1/2k chance of being prime.Really useful factA random k-bit number has at least a 1/2k chance of being prime.So if we pick So if we pick 2k random k-bit 2k random k-bit numbersnumbers the expected number of primes the expected number of primes on the list is on the list is at least 1at least 1Picking A Random PrimeMany modern cryptosystems (e.g., RSA) include the instructions:“Pick a random n-bit prime.”How can this be done efficiently?Picking A Random Prime“Pick a random n-bit prime.”Strategy:1) Generate random n-bit numbers2) Test each one for primality [more on this later in the lecture]Picking A Random Prime“Pick a random n-bit prime.”1)Generate kn random n-bit numbersEach trial has a ≥ 1/2n chance of being prime.Pr[ all kn trials yield composites ]≤ (1-1/2n)kn = (1-1/2n)2n * k/2 ≤ 1/ek/2Picking A Random Prime“Pick a random n-bit prime.”Strategy:1) Generate random n-bit numbers2) Test each one for primality For 1000-bit primes, if we try out 10000 random1000-bit numbers, chance of failing ≤ e-5Moral of the storyPicking a random prime is “almost as easy as”picking a random number.(Provided we can check for primality.More on this later.)Earth has huge file X that she transferred to Moon. Moon gets Y.Earth: XEarth: X Moon: YDid you get that file ok? Did you get that file ok? Was the transmission Was the transmission accurate?accurate?Uh, yeah.Are X and Y the same n-bit numbers?p = random 2logn-bit primeSend (p, X mod p)Answer to “X Answer to “X Y mod Y mod p ?”p ?”Earth: XEarth: X Moon: YWhy is this any good?Easy case:If X = Y, then X Y (mod p)Why is this any good?Harder case:What if X ≠ Y? We mess up if p | (X-Y).Define Z = (X-Y). To mess up, p must divide Z.Z is an n-bit number. Z is at most 2n.But each prime ≥ 2.Hence Z has at most n prime divisors.Almost there…Z has at most n prime divisors.How many 2logn-bit primes? at least 22logn/(2*2logn) = n2/(4logn) >> 2n primes.Only (at most) half of them divide Z.A random k-bit number has at least a 1/2k chance of being prime.Theorem: Let X and Y be distinctn-bit numbers. Let p be a random 2logn-bit prime.ThenProb [X = Y mod p] < 1/2Earth-Moon protocol makes mistakewith probability at most 1/2!Are X and Y the same n-bit numbers?EARTH: XEARTH: XMOON: YMOON: YPick k random 2logn-bit primes: P1, P2, .., PkSend (X mod Pi) for 1 ≤ i ≤ kk answers to “X = Y mod Pi ?”Exponentially smaller error probabilityIf X=Y, always accept.If X Y,Prob [X = Y mod Pi for all i] ≤
View Full Document