106 Factoring as periodicity

QR Code Generation In NoneUsing Barcode printer for Software Control to generate, create Quick Response Code image in Software applications.

Decode QR Code In NoneUsing Barcode scanner for Software Control to read, scan read, scan image in Software applications.

We have seen how the quantum Fourier transform can be used to nd the period of a periodic superposition Now we show, by a sequence of simple reductions, how factoring can be recast as a period- nding problem Fix an integer N A nontrivial square root of 1 modulo N (recall Exercises 136 and 140) is any integer x 1 mod N such that x2 1 mod N If we can nd a nontrivial square root of 1 mod N , then it is easy to decompose N into a product of two nontrivial factors (and repeating the process would factor N ): Lemma If x is a nontrivial square root of 1 modulo N , then gcd(x + 1, N ) is a nontrivial factor of N Proof x2 1 mod N implies that N divides (x2 1) = (x + 1)(x 1) But N does not divide either of these individual terms, since x 1 mod N Therefore N must have a nontrivial factor in common with each of (x + 1) and (x 1) In particular, gcd(N, x + 1) is a nontrivial factor of N Example Let N = 15 Then 42 1 mod 15, but 4 1 mod 15 Both gcd(4 1, 15) = 3 and gcd(4 + 1, 15) = 5 are nontrivial factors of 15 To complete the connection with periodicity, we need one further concept De ne the order of x modulo N to be the smallest positive integer r such that x r 1 mod N For instance, the order of 2 mod 15 is 4 Computing the order of a random number x mod N is closely related to the problem of nding nontrivial square roots, and thereby to factoring Here s the link Lemma Let N be an odd composite, with at least two distinct prime factors, and let x be chosen uniformly at random between 0 and N 1 If gcd(x, N ) = 1, then with probability at least 1/2, the order r of x mod N is even, and moreover x r/2 is a nontrivial square root of 1 mod N The proof of this lemma is left as an exercise What it implies is that if we could compute the order r of a randomly chosen element x mod N , then there s a good chance that this order is even and that xr/2 is a nontrivial square root of 1 modulo N In which case gcd(x r/2 + 1, N ) is a factor of N Example If x = 2 and N = 15, then the order of 2 is 4 since 2 4 1 mod 15 Raising 2 to half this power, we get a nontrivial root of 1: 2 2 4 1 mod 15 So we get a divisor of 15 by computing gcd(4 + 1, 15) = 5 Hence we have reduced FACTORING to the problem of ORDER FINDING The advantage of this latter problem is that it has a natural periodic function associated with it: x N and x, and consider the function f (a) = xa mod N If r is the order of x, then f (0) = f (r) = f (2r) = = 1, and similarly, f (1) = f (r + 1) = f (2r + 1) = = x Thus f is periodic, with period r And we can compute it ef ciently by the repeated squaring algorithm from Section 122 So, in order to factor N , all we need to do is to gure out how to use the function f to set up a periodic superposition with period r; whereupon we can use quantum Fourier sampling as in Section 103 to nd r This is described in the next box 303

Encoding QR Code In Visual C#Using Barcode encoder for .NET framework Control to generate, create QR-Code image in .NET applications.

Create QR Code In .NETUsing Barcode encoder for ASP.NET Control to generate, create QR Code JIS X 0510 image in ASP.NET applications.

Denso QR Bar Code Creation In .NET FrameworkUsing Barcode creator for VS .NET Control to generate, create QR Code image in .NET framework applications.

Making QR-Code In VB.NETUsing Barcode generator for VS .NET Control to generate, create QR Code 2d barcode image in Visual Studio .NET applications.

Make Data Matrix 2d Barcode In NoneUsing Barcode creation for Software Control to generate, create Data Matrix 2d barcode image in Software applications.

Draw Bar Code In NoneUsing Barcode creator for Software Control to generate, create bar code image in Software applications.

Encoding Bar Code In NoneUsing Barcode encoder for Software Control to generate, create bar code image in Software applications.

Making GTIN - 128 In NoneUsing Barcode generation for Software Control to generate, create USS-128 image in Software applications.

Generate Code 39 Extended In NoneUsing Barcode creator for Software Control to generate, create USS Code 39 image in Software applications.

EAN13 Generator In NoneUsing Barcode drawer for Software Control to generate, create EAN-13 image in Software applications.

Printing Planet In NoneUsing Barcode generation for Software Control to generate, create USPS PLANET Barcode image in Software applications.

Printing USS Code 39 In Visual Basic .NETUsing Barcode drawer for VS .NET Control to generate, create Code-39 image in .NET framework applications.

EAN / UCC - 13 Scanner In JavaUsing Barcode scanner for Java Control to read, scan read, scan image in Java applications.

Bar Code Printer In NoneUsing Barcode printer for Office Word Control to generate, create barcode image in Word applications.

GS1 128 Drawer In VS .NETUsing Barcode creator for ASP.NET Control to generate, create GS1 128 image in ASP.NET applications.

Make GTIN - 128 In Objective-CUsing Barcode printer for iPhone Control to generate, create EAN128 image in iPhone applications.

Code 3/9 Encoder In NoneUsing Barcode creation for Font Control to generate, create USS Code 39 image in Font applications.

EAN-13 Supplement 5 Encoder In Objective-CUsing Barcode generator for iPhone Control to generate, create UPC - 13 image in iPhone applications.