Factoring & Primality

Save this PDF as:

Size: px
Start display at page:

Transcription

1 Factoring & Primality Lecturer: Dimitris Papadopoulos In this lecture we will discuss the problem of integer factorization and primality testing, two problems that have been the focus of a great amount of research over the years. These problems started receiving attention in the mathematics community far before the appearance of computer science, however the emergence of the latter has given them additional importance. Gauss himself wrote in 1801 The problem of distinguishing prime numbers from composite numbers, and of resolving the latter into their prime factors, is known to be one of the most important and useful in arithmetic. The dignity of the science itself seems to require that every possible means be explored for the solution of a problem so elegant and so celebrated. 1 Factorization Problems The following result is known as the Fundamental Theorem of Arithmetic: Theorem 1 Every n Z with n 0 can be written as: r n = ± where p i are distinct prime numbers and e i are positive integers. Moreover, this representation is unique (except for term re-ordering). This celebrated result (already known at Euclid s time) unfortunately does not tell us anything about computing the primes p i or the powers e i except for their existence. This naturally leads to the following problem statement known as the integer factorization problem: Problem 1 Given n Z with n 0, compute primes p i and positive integers e i for i = 1,..., r s.t. r i=1 pe i i = n. Clearly, if n is a prime number then the factorization described above is trivial. Namely r = 1, p 1 = n, e 1 = 1 and n itself is the correct output. This seems to imply that for a large class of integers (the primes) Problem 1 can be reduced to the following problem, known as primality testing: Problem 2 Given n Z with n 0, decide whether n has any non-trivial factors. Another problem that is a simplified version of Problem 1 (in the case where n is composite) is instead of computing all the prime factors, to output one of them. More formally, the problem of divisor computation is: Problem 3 Given composite n Z with n 0, compute k Z with k 1 s.t. m Z where n = km. Next we turn our attention to the hardness of these problems. 1 i=1 p e i i

2 2 Hardness of Factoring Problems We begin with the problem of primality testing. Let PRIMES be the problem of recognizing the language L 1 = {n Z x is prime}. This has been a long standing problem and for many decades we only had feasible randomized algorithms. In the next section we will discuss the Miller-Rabin primality testing algorithm that is widely implemented in practice due to its practicality. This algorithm (and others of similar flavour) have deterministic versions under the unproven Generalized Riemann Hypothesis. In a very surprising result, Agrawal, Kayal, Saxena in 2002 gave the first deterministic algorithm that is not based on unproven assumptions and decides L 1 in polynomial time, proving that L 1 P. Let us now turn our attention to the more complicated factoring problems. The problem of computing one divisor is in the class FNP which is the function problem extension of the decision problem class NP. Whether or not it is computable by a deterministic polynomial algorithm (hence it belongs in FP) remains an open problem. The problem of integer factorization seems to be much harder but the following can be proven. Lemma 1 For the problems of integer divisor computation (DIV) and integer factorization (FACT) the following is true: F ACT P DIV (Proof in class) The above states that there is a polynomial-time reduction from each of the problems to the other. This implies that in order to solve the integer factorization problem, it would suffice to have an algorithm for efficient computation of integer divisors. In the following sections we will discuss a few basic algorithms for primality testing and divisor computation. A final note regarding the hardness of integer factorization is that Shor in 1999 gave an algorithm for quantum computers that can solve this problem in polynomial time, proving that the problem is in BQP. 3 A General Algorithm Intuitively, the simplest approach to all of the above problems is a trial-and-error approach where we try dividing with all the integers < 0. If any division succeeds (i.e., is perfect) then we know that n is composite and we have also found one of its divisors. The above can be written as: Trial-and-error Division On input non-zero integer n 1. i = 2 2. while i < n do: if i n output i and halt i = i + 1 2

3 3. output n is prime Clearly, the above procedure always finds a non-trivial divisor of n if one exists and if n is prime it reports that correctly too. Assuming that n is a k-bit number, then the cost of (naive) division is O(k 2 ) but the loop runs for n 2 steps hence the overall complexity is O(k 2 n) which is exponential to the input length. Of course the above version of the algorithm is too naive. Every composite number n must have a divisor i n (why?) therefore the iteration limit can be restricted to n 1/2 and the corresponding run-time would be O(k 2 n 1/2 ) which is still exponential to the input length. Trial-and-error division is very impractical and cannot be used in practice to find divisors of more than a few bits length. However, it has the advantage that it both decides primality and finds a divisor if one exists. In the next sections we will discuss polynomial-time probabilistic algorithms for the problems of primality testing and factoring. 4 Algorithms for Primality Testing The following result is known as Fermat s Little Theorem: Theorem 2 For any prime n, and a Z it holds that a n 1 = 1 mod n. Can we use the above as a primality test? Here is an idea: Fermat s Primality Test On input non-zero integer n 1. Choose randomly i [2, n 1] 2. if i n 1 1 mod n output composite 3. else output prime The above runs in time O(k 3 ) (using exponentiation by repeated squaring) and by Theorem 3 always reports composite correctly if it finds a value i such that i n 1 1 mod n. Unfortunately, Fermat s little theorem does not tell us anything for the other direction, i.e., it is not an if and only if statement. In practice there are a lot of composite numbers n for which there exist i s.t. i n 1 = 1 mod n. Consider for example n = 15 and i = 4. Then 4 14 = = = 1 mod 15. How do we improve our algorithm s chances of success? We can repeat the process for multiple trials, say k and output prime only if the relation holds for all of them. Hence, if we knew for example that the probability of failure (i n 1 = 1 mod n) and n is composite) is upper bounded by 1/2 then the overall failure probability would be upper bounded by 2 k. We can prove the following: Lemma 2 If n is composite and i [1, n 1] s.t. i n 1 1 mod n then the probability the algorithm errs is at most 2 k. 3

4 Unfortunately, the above does not cover all cases. In fact, there exist composite numbers such that i n 1 = 1 mod n for all i [1, n 1]. These numbers are known as Carmichael numbers and, while very rare, we know that infinitely many of them exist so we cannot ignore them. The above test can be abstracted as follows: Define an efficiently recognizable set S n Z n. If n is prime, then S n = Z n. Otherwise, S n c Z n for some constant 0 < c < 1. To test, generate k elements a 1,..., a k Z + n and test if a i S n. If all of them are in S n output prime, otherwise composite. For Fermat s testing S n = {a Z + n a n 1 = 1 mod n} and this fails with respect to the third constraint as we showed. The natural next step to take is to enforce some tighter restriction on the construction of S n. The Miller-Rabin primality testing (which is very widely used) takes exactly this approach. Lemma 3 For any integer n > 2, n 1 = 2 t m for t, m positive integers where m is odd. Now, let S n be defined as follows: (Proof in class) S n = {a Z + n a 2tm = 1 (a m = 1 0 j < t s.t. a 2jm = 1} The above set is efficiently decidable (how?) and it is clear that S n S n. The following can be proven: Lemma 4 If n is a prime, then S n = Z n, otherwise S n 1/4 Z n. It should be clear from the above result that there are no bad composite cases for this test (similar to Carmichael numbers) hence we can write the following algorithm: Miller-Rabin Primality Test On input non-zero integer n 1. Compute t, m s.t. n 1 = 2 t m 2. for i = 1 to k do: Generate randomly a i Z + n Check if a i S n. If it is not, output composite and halt 3. output prime Assuming that membership in S n can be tested in time O(log n 3 ) (how?) the above algorithm runs in time O(k log n 3 ). Also, by the previous lemma, the error probability is at most 4 k in the case where n is composite only. Unfortunately, as in the case of Fermat s testing this algorithm does not produce a factor of n. 4

5 5 Pollard s Rho Algorithm for Integer Factorization In this section we will be presenting one very popular randomized algorithm for factoring introduced by Pollard in On input a composite number n the algorithm outputs one of its divisors d. Recall that the problem of factoring can be efficiently reduced to the problem of divisor computation, we can use this algorithm for factorization. Also, the restriction that n must be known to be composite is not severe since there exist polynomial time algorithms to decide that. The main idea of the algorithm is the following. Let a, b < n be integers such that a = b mod d. It follows that a b = kd for some k Z. Also, by assumption n = ld for some l Z. From this it follows that gcd((a b), n) = gcd(kd, ld) = d and by computing this greatest common divisor we may find a divisor of n. The surprising fact about this algorithm is that we are using the fact that d must exist in order to compute it (without knowing its value). Let us see again one way to reach the above. Randomly generate a number of values a 1,..., a r < n 1/2. Compute their pair-wise gcd. If for any of them, it is larger than 1, output it and halt. We say that values a i, a j with i j form a collision if a i = a j mod n. The following result follows from the birthday paradox: Lemma 5 The expected number of necessary values a i in order to produce a collision is O(d 1/2 ). This approach therefore immediately yields an algorithm for finding a divisor. Unfortunately, one needs to compute all the gcd s involved which for r values is O(r 2 hence the overall complexity is O((d 1/2 ) 2 ) = O(d) = O(n 1/2 which is as bad as the trial division approach. Moreover one needs to store all these values a i which means that the algorithm requires exponential storage as well. Pollard s rho algorithm is based on this approach but by using a clever trick known as Floyd s Cycle Detection manages to do so by storing at any time only two values. Floyd s Cycle Detection On input function f and point x 0 1. i = 1, y 0 = x 0 2. while true 3. x i = f(x i 1 ), y i = f(f(y i 1 )) 4. if x i = y i output i and halt 5. i = i + 1 In the above the sequence x i runs infinitely, hence if f takes values from a finite domain, it must repeat itself. Since x i+1 = f(x i ) once one such repetition occurs all subsequent values must also agree. It can be shown that if t is the first index where such a collision occurs and l is the length of this cycle, the above algorithm runs at most for t + l steps. 5

6 Moving on the actual factoring algorithm, our choice of function will be a function f from Z n to itself such that f(x) = f(y) implies that x = y. In fact, the original proposed function is f(x) = x The algorithm then is as follows: Pollard s rho Algorithm On input integer n 1. Choose x 0 randomly from Z n 2. Set i = 1, y 0 = x 0 3. while true 4. x i = x 2 i mod n, y i = (y 2 i 1 + 1) mod n 5. if d = gcd(x i y i, n) > 1 output d and halt 6. i = i + 1 The main idea here is that values x i as we saw above, form an infinite sequence hence they must loop (possibly after some initial part). Now this sequence induces a similar sequence of values x i modulo d such that x i = x i mod p. Furthermore it must be (why?) that x i+1 = (x 2 i + 1) mod p. Therefore, while we are not explicitly computing the sequence x i, its existence is implied. By the same approach as before, the sequence x i has a collision after an expected number of O(d 1/2 ). By an analysis it follows that the algorithm always outputs a divisor of n its expected runtime is Õ(n1/4 ) and it uses Õ(1) bits of storage. However, it does not always produce a non-trivial factor of n. If the points on which the algorithm agrees satisfy the relation x i = y i mod n instead of mod p then it follows that gcd(x i y i, n) = n hence the output is the trivial divisor n. In this case the only known alternative is to re-run it with a different choice of x 0 and/or f. It should be noted that a formal analysis of the algorithm assumes that f is truly a random function and it still an open problem to prove why x mod n behaves as such, making the whole analysis of the algorithm so far a heuristic argument. 6

Prime Numbers The generation of prime numbers is needed for many public key algorithms:

CA547: CRYPTOGRAPHY AND SECURITY PROTOCOLS 1 7 Number Theory 2 7.1 Prime Numbers Prime Numbers The generation of prime numbers is needed for many public key algorithms: RSA: Need to find p and q to compute

Primality - Factorization

Primality - Factorization Christophe Ritzenthaler November 9, 2009 1 Prime and factorization Definition 1.1. An integer p > 1 is called a prime number (nombre premier) if it has only 1 and p as divisors.

Prime Numbers. Chapter Primes and Composites

Chapter 2 Prime Numbers The term factoring or factorization refers to the process of expressing an integer as the product of two or more integers in a nontrivial way, e.g., 42 = 6 7. Prime numbers are

Breaking The Code. Ryan Lowe. Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and

Breaking The Code Ryan Lowe Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and a minor in Applied Physics. As a sophomore, he took an independent study

FACTORING. n = 2 25 + 1. fall in the arithmetic sequence

FACTORING The claim that factorization is harder than primality testing (or primality certification) is not currently substantiated rigorously. As some sort of backward evidence that factoring is hard,

U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009. Notes on Algebra

U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009 Notes on Algebra These notes contain as little theory as possible, and most results are stated without proof. Any introductory

Is this number prime? Berkeley Math Circle Kiran Kedlaya

Is this number prime? Berkeley Math Circle 2002 2003 Kiran Kedlaya Given a positive integer, how do you check whether it is prime (has itself and 1 as its only two positive divisors) or composite (not

Faster deterministic integer factorisation

David Harvey (joint work with Edgar Costa, NYU) University of New South Wales 25th October 2011 The obvious mathematical breakthrough would be the development of an easy way to factor large prime numbers

(x + a) n = x n + a Z n [x]. Proof. If n is prime then the map

22. A quick primality test Prime numbers are one of the most basic objects in mathematics and one of the most basic questions is to decide which numbers are prime (a clearly related problem is to find

Factoring Algorithms

Factoring Algorithms The p 1 Method and Quadratic Sieve November 17, 2008 () Factoring Algorithms November 17, 2008 1 / 12 Fermat s factoring method Fermat made the observation that if n has two factors

Integer Factorization using the Quadratic Sieve

Integer Factorization using the Quadratic Sieve Chad Seibert* Division of Science and Mathematics University of Minnesota, Morris Morris, MN 56567 seib0060@morris.umn.edu March 16, 2011 Abstract We give

CHAPTER 5. Number Theory. 1. Integers and Division. Discussion

CHAPTER 5 Number Theory 1. Integers and Division 1.1. Divisibility. Definition 1.1.1. Given two integers a and b we say a divides b if there is an integer c such that b = ac. If a divides b, we write a

Lecture 13 - Basic Number Theory.

Lecture 13 - Basic Number Theory. Boaz Barak March 22, 2010 Divisibility and primes Unless mentioned otherwise throughout this lecture all numbers are non-negative integers. We say that A divides B, denoted

Lecture 13: Factoring Integers

CS 880: Quantum Information Processing 0/4/0 Lecture 3: Factoring Integers Instructor: Dieter van Melkebeek Scribe: Mark Wellons In this lecture, we review order finding and use this to develop a method

11 Ideals. 11.1 Revisiting Z

11 Ideals The presentation here is somewhat different than the text. In particular, the sections do not match up. We have seen issues with the failure of unique factorization already, e.g., Z[ 5] = O Q(

Cryptography and Network Security Chapter 8

Cryptography and Network Security Chapter 8 Fifth Edition by William Stallings Lecture slides by Lawrie Brown (with edits by RHB) Chapter 8 Introduction to Number Theory The Devil said to Daniel Webster:

Today s Topics. Primes & Greatest Common Divisors

Today s Topics Primes & Greatest Common Divisors Prime representations Important theorems about primality Greatest Common Divisors Least Common Multiples Euclid s algorithm Once and for all, what are prime

CS 103X: Discrete Structures Homework Assignment 3 Solutions

CS 103X: Discrete Structures Homework Assignment 3 s Exercise 1 (20 points). On well-ordering and induction: (a) Prove the induction principle from the well-ordering principle. (b) Prove the well-ordering

ORDERS OF ELEMENTS IN A GROUP

ORDERS OF ELEMENTS IN A GROUP KEITH CONRAD 1. Introduction Let G be a group and g G. We say g has finite order if g n = e for some positive integer n. For example, 1 and i have finite order in C, since

FACTORING LARGE NUMBERS, A GREAT WAY TO SPEND A BIRTHDAY

FACTORING LARGE NUMBERS, A GREAT WAY TO SPEND A BIRTHDAY LINDSEY R. BOSKO I would like to acknowledge the assistance of Dr. Michael Singer. His guidance and feedback were instrumental in completing this

2 The Euclidean algorithm

2 The Euclidean algorithm Do you understand the number 5? 6? 7? At some point our level of comfort with individual numbers goes down as the numbers get large For some it may be at 43, for others, 4 In

2.1 Complexity Classes

15-859(M): Randomized Algorithms Lecturer: Shuchi Chawla Topic: Complexity classes, Identity checking Date: September 15, 2004 Scribe: Andrew Gilpin 2.1 Complexity Classes In this lecture we will look

The Laws of Cryptography Cryptographers Favorite Algorithms

2 The Laws of Cryptography Cryptographers Favorite Algorithms 2.1 The Extended Euclidean Algorithm. The previous section introduced the field known as the integers mod p, denoted or. Most of the field

Elementary factoring algorithms

Math 5330 Spring 013 Elementary factoring algorithms The RSA cryptosystem is founded on the idea that, in general, factoring is hard. Where as with Fermat s Little Theorem and some related ideas, one can

Discrete Mathematics Lecture 3 Elementary Number Theory and Methods of Proof. Harper Langston New York University

Discrete Mathematics Lecture 3 Elementary Number Theory and Methods of Proof Harper Langston New York University Proof and Counterexample Discovery and proof Even and odd numbers number n from Z is called

Further linear algebra. Chapter I. Integers.

Further linear algebra. Chapter I. Integers. Andrei Yafaev Number theory is the theory of Z = {0, ±1, ±2,...}. 1 Euclid s algorithm, Bézout s identity and the greatest common divisor. We say that a Z divides

Computer and Network Security

MIT 6.857 Computer and Networ Security Class Notes 1 File: http://theory.lcs.mit.edu/ rivest/notes/notes.pdf Revision: December 2, 2002 Computer and Networ Security MIT 6.857 Class Notes by Ronald L. Rivest

1 Die hard, once and for all

ENGG 2440A: Discrete Mathematics for Engineers Lecture 4 The Chinese University of Hong Kong, Fall 2014 6 and 7 October 2014 Number theory is the branch of mathematics that studies properties of the integers.

THE MATHEMATICS OF PUBLIC KEY CRYPTOGRAPHY.

THE MATHEMATICS OF PUBLIC KEY CRYPTOGRAPHY. IAN KIMING 1. Forbemærkning. Det kan forekomme idiotisk, at jeg som dansktalende og skrivende i et danskbaseret tidsskrift med en (formentlig) primært dansktalende

2 Primality and Compositeness Tests

Int. J. Contemp. Math. Sciences, Vol. 3, 2008, no. 33, 1635-1642 On Factoring R. A. Mollin Department of Mathematics and Statistics University of Calgary, Calgary, Alberta, Canada, T2N 1N4 http://www.math.ucalgary.ca/

Solutions to Practice Problems

Solutions to Practice Problems March 205. Given n = pq and φ(n = (p (q, we find p and q as the roots of the quadratic equation (x p(x q = x 2 (n φ(n + x + n = 0. The roots are p, q = 2[ n φ(n+ ± (n φ(n+2

ALGEBRAIC APPROACH TO COMPOSITE INTEGER FACTORIZATION

ALGEBRAIC APPROACH TO COMPOSITE INTEGER FACTORIZATION Aldrin W. Wanambisi 1* School of Pure and Applied Science, Mount Kenya University, P.O box 553-50100, Kakamega, Kenya. Shem Aywa 2 Department of Mathematics,

International Journal of Information Technology, Modeling and Computing (IJITMC) Vol.1, No.3,August 2013

FACTORING CRYPTOSYSTEM MODULI WHEN THE CO-FACTORS DIFFERENCE IS BOUNDED Omar Akchiche 1 and Omar Khadir 2 1,2 Laboratory of Mathematics, Cryptography and Mechanics, Fstm, University of Hassan II Mohammedia-Casablanca,

Mathematics is the queen of sciences and number theory is the queen of mathematics.

Number Theory Mathematics is the queen of sciences and number theory is the queen of mathematics. But why is it computer science? It turns out to be critical for cryptography! Carl Friedrich Gauss Division

Mathematics of Cryptography

Number Theory Modular Arithmetic: Two numbers equivalent mod n if their difference is multiple of n example: 7 and 10 are equivalent mod 3 but not mod 4 7 mod 3 10 mod 3 = 1; 7 mod 4 = 3, 10 mod 4 = 2.

Recent Breakthrough in Primality Testing

Nonlinear Analysis: Modelling and Control, 2004, Vol. 9, No. 2, 171 184 Recent Breakthrough in Primality Testing R. Šleževičienė, J. Steuding, S. Turskienė Department of Computer Science, Faculty of Physics

Number Theory Hungarian Style. Cameron Byerley s interpretation of Csaba Szabó s lectures

Number Theory Hungarian Style Cameron Byerley s interpretation of Csaba Szabó s lectures August 20, 2005 2 0.1 introduction Number theory is a beautiful subject and even cooler when you learn about it

Discrete Mathematics, Chapter 4: Number Theory and Cryptography

Discrete Mathematics, Chapter 4: Number Theory and Cryptography Richard Mayr University of Edinburgh, UK Richard Mayr (University of Edinburgh, UK) Discrete Mathematics. Chapter 4 1 / 35 Outline 1 Divisibility

Elementary Number Theory We begin with a bit of elementary number theory, which is concerned

CONSTRUCTION OF THE FINITE FIELDS Z p S. R. DOTY Elementary Number Theory We begin with a bit of elementary number theory, which is concerned solely with questions about the set of integers Z = {0, ±1,

Is n a Prime Number? Manindra Agrawal. March 27, 2006, Delft. IIT Kanpur

Is n a Prime Number? Manindra Agrawal IIT Kanpur March 27, 2006, Delft Manindra Agrawal (IIT Kanpur) Is n a Prime Number? March 27, 2006, Delft 1 / 47 Overview 1 The Problem 2 Two Simple, and Slow, Methods

An Overview of Integer Factoring Algorithms. The Problem

An Overview of Integer Factoring Algorithms Manindra Agrawal IITK / NUS The Problem Given an integer n, find all its prime divisors as efficiently as possible. 1 A Difficult Problem No efficient algorithm

Is n a prime number? Nitin Saxena. Turku, May Centrum voor Wiskunde en Informatica Amsterdam

Is n a prime number? Nitin Saxena Centrum voor Wiskunde en Informatica Amsterdam Turku, May 2007 Nitin Saxena (CWI, Amsterdam) Is n a prime number? Turku, May 2007 1 / 36 Outline 1 The Problem 2 The High

MATH10040 Chapter 2: Prime and relatively prime numbers

MATH10040 Chapter 2: Prime and relatively prime numbers Recall the basic definition: 1. Prime numbers Definition 1.1. Recall that a positive integer is said to be prime if it has precisely two positive

Discrete Mathematics and Probability Theory Fall 2009 Satish Rao, David Tse Note 5

CS 70 Discrete Mathematics and Probability Theory Fall 2009 Satish Rao, David Tse Note 5 Modular Arithmetic One way to think of modular arithmetic is that it limits numbers to a predefined range {0,1,...,N

Primality Testing and Factorization Methods

Primality Testing and Factorization Methods Eli Howey May 27, 2014 Abstract Since the days of Euclid and Eratosthenes, mathematicians have taken a keen interest in finding the nontrivial factors of integers,

Homework 5 Solutions

Homework 5 Solutions 4.2: 2: a. 321 = 256 + 64 + 1 = (01000001) 2 b. 1023 = 512 + 256 + 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = (1111111111) 2. Note that this is 1 less than the next power of 2, 1024, which

Practice Problems for First Test

Mathematicians have tried in vain to this day to discover some order in the sequence of prime numbers, and we have reason to believe that it is a mystery into which the human mind will never penetrate.-

The Prime Numbers. Definition. A prime number is a positive integer with exactly two positive divisors.

The Prime Numbers Before starting our study of primes, we record the following important lemma. Recall that integers a, b are said to be relatively prime if gcd(a, b) = 1. Lemma (Euclid s Lemma). If gcd(a,

Lecture 2: Universality

CS 710: Complexity Theory 1/21/2010 Lecture 2: Universality Instructor: Dieter van Melkebeek Scribe: Tyson Williams In this lecture, we introduce the notion of a universal machine, develop efficient universal

Solutions to Homework Set 3 (Solutions to Homework Problems from Chapter 2)

Solutions to Homework Set 3 (Solutions to Homework Problems from Chapter 2) Problems from 21 211 Prove that a b (mod n) if and only if a and b leave the same remainder when divided by n Proof Suppose a

COMP 250 Fall Mathematical induction Sept. 26, (n 1) + n = n + (n 1)

COMP 50 Fall 016 9 - Mathematical induction Sept 6, 016 You will see many examples in this course and upcoming courses of algorithms for solving various problems It many cases, it will be obvious that

I. Introduction. MPRI Cours 2-12-2. Lecture IV: Integer factorization. What is the factorization of a random number? II. Smoothness testing. F.

F. Morain École polytechnique MPRI cours 2-12-2 2013-2014 3/22 F. Morain École polytechnique MPRI cours 2-12-2 2013-2014 4/22 MPRI Cours 2-12-2 I. Introduction Input: an integer N; logox F. Morain logocnrs

Integers and division

CS 441 Discrete Mathematics for CS Lecture 12 Integers and division Milos Hauskrecht milos@cs.pitt.edu 5329 Sennott Square Symmetric matrix Definition: A square matrix A is called symmetric if A = A T.

Notes from Week 1: Algorithms for sequential prediction

CS 683 Learning, Games, and Electronic Markets Spring 2007 Notes from Week 1: Algorithms for sequential prediction Instructor: Robert Kleinberg 22-26 Jan 2007 1 Introduction In this course we will be looking

Modern Factoring Algorithms

Modern Factoring Algorithms Kostas Bimpikis and Ragesh Jaiswal University of California, San Diego... both Gauss and lesser mathematicians may be justified in rejoicing that there is one science [number

b) Find smallest a > 0 such that 2 a 1 (mod 341). Solution: a) Use succesive squarings. We have 85 =

Problem 1. Prove that a b (mod c) if and only if a and b give the same remainders upon division by c. Solution: Let r a, r b be the remainders of a, b upon division by c respectively. Thus a r a (mod c)

Revised Version of Chapter 23. We learned long ago how to solve linear congruences. ax c (mod m)

Chapter 23 Squares Modulo p Revised Version of Chapter 23 We learned long ago how to solve linear congruences ax c (mod m) (see Chapter 8). It s now time to take the plunge and move on to quadratic equations.

APPLICATIONS OF THE ORDER FUNCTION

APPLICATIONS OF THE ORDER FUNCTION LECTURE NOTES: MATH 432, CSUSM, SPRING 2009. PROF. WAYNE AITKEN In this lecture we will explore several applications of order functions including formulas for GCDs and

Study of algorithms for factoring integers and computing discrete logarithms

Study of algorithms for factoring integers and computing discrete logarithms First Indo-French Workshop on Cryptography and Related Topics (IFW 2007) June 11 13, 2007 Paris, France Dr. Abhijit Das Department

Arithmetic algorithms for cryptology 5 October 2015, Paris. Sieves. Razvan Barbulescu CNRS and IMJ-PRG. R. Barbulescu Sieves 0 / 28

Arithmetic algorithms for cryptology 5 October 2015, Paris Sieves Razvan Barbulescu CNRS and IMJ-PRG R. Barbulescu Sieves 0 / 28 Starting point Notations q prime g a generator of (F q ) X a (secret) integer

Lecture 3: Finding integer solutions to systems of linear equations

Lecture 3: Finding integer solutions to systems of linear equations Algorithmic Number Theory (Fall 2014) Rutgers University Swastik Kopparty Scribe: Abhishek Bhrushundi 1 Overview The goal of this lecture

Doug Ravenel. October 15, 2008

Doug Ravenel University of Rochester October 15, 2008 s about Euclid s Some s about primes that every mathematician should know (Euclid, 300 BC) There are infinitely numbers. is very elementary, and we

I. GROUPS: BASIC DEFINITIONS AND EXAMPLES

I GROUPS: BASIC DEFINITIONS AND EXAMPLES Definition 1: An operation on a set G is a function : G G G Definition 2: A group is a set G which is equipped with an operation and a special element e G, called

Theorem (The division theorem) Suppose that a and b are integers with b > 0. There exist unique integers q and r so that. a = bq + r and 0 r < b.

Theorem (The division theorem) Suppose that a and b are integers with b > 0. There exist unique integers q and r so that a = bq + r and 0 r < b. We re dividing a by b: q is the quotient and r is the remainder,

3. Applications of Number Theory

3. APPLICATIONS OF NUMBER THEORY 163 3. Applications of Number Theory 3.1. Representation of Integers. Theorem 3.1.1. Given an integer b > 1, every positive integer n can be expresses uniquely as n = a

Modular arithmetic. x ymodn if x = y +mn for some integer m. p. 1/??

p. 1/?? Modular arithmetic Much of modern number theory, and many practical problems (including problems in cryptography and computer science), are concerned with modular arithmetic. While this is probably

MA257: INTRODUCTION TO NUMBER THEORY LECTURE NOTES

MA257: INTRODUCTION TO NUMBER THEORY LECTURE NOTES 2016 47 4. Diophantine Equations A Diophantine Equation is simply an equation in one or more variables for which integer (or sometimes rational) solutions

MATH 289 PROBLEM SET 4: NUMBER THEORY

MATH 289 PROBLEM SET 4: NUMBER THEORY 1. The greatest common divisor If d and n are integers, then we say that d divides n if and only if there exists an integer q such that n = qd. Notice that if d divides

8 Primes and Modular Arithmetic

8 Primes and Modular Arithmetic 8.1 Primes and Factors Over two millennia ago already, people all over the world were considering the properties of numbers. One of the simplest concepts is prime numbers.

Kevin James. MTHSC 412 Section 2.4 Prime Factors and Greatest Comm

MTHSC 412 Section 2.4 Prime Factors and Greatest Common Divisor Greatest Common Divisor Definition Suppose that a, b Z. Then we say that d Z is a greatest common divisor (gcd) of a and b if the following

Public Key Cryptography: RSA and Lots of Number Theory

Public Key Cryptography: RSA and Lots of Number Theory Public vs. Private-Key Cryptography We have just discussed traditional symmetric cryptography: Uses a single key shared between sender and receiver

Elements of Applied Cryptography Public key encryption

Network Security Elements of Applied Cryptography Public key encryption Public key cryptosystem RSA and the factorization problem RSA in practice Other asymmetric ciphers Asymmetric Encryption Scheme Let

Lecture 1: Course overview, circuits, and formulas

Lecture 1: Course overview, circuits, and formulas Topics in Complexity Theory and Pseudorandomness (Spring 2013) Rutgers University Swastik Kopparty Scribes: John Kim, Ben Lund 1 Course Information Swastik

ELLIPTIC CURVES AND LENSTRA S FACTORIZATION ALGORITHM

ELLIPTIC CURVES AND LENSTRA S FACTORIZATION ALGORITHM DANIEL PARKER Abstract. This paper provides a foundation for understanding Lenstra s Elliptic Curve Algorithm for factoring large numbers. We give

Theorem3.1.1 Thedivisionalgorithm;theorem2.2.1insection2.2 If m, n Z and n is a positive

Chapter 3 Number Theory 159 3.1 Prime Numbers Prime numbers serve as the basic building blocs in the multiplicative structure of the integers. As you may recall, an integer n greater than one is prime

Primes in Sequences. Lee 1. By: Jae Young Lee. Project for MA 341 (Number Theory) Boston University Summer Term I 2009 Instructor: Kalin Kostadinov

Lee 1 Primes in Sequences By: Jae Young Lee Project for MA 341 (Number Theory) Boston University Summer Term I 2009 Instructor: Kalin Kostadinov Lee 2 Jae Young Lee MA341 Number Theory PRIMES IN SEQUENCES

Lecture 1: Elementary Number Theory

Lecture 1: Elementary Number Theory The integers are the simplest and most fundamental objects in discrete mathematics. All calculations by computers are based on the arithmetical operations with integers

Basic Algorithms In Computer Algebra

Basic Algorithms In Computer Algebra Kaiserslautern SS 2011 Prof. Dr. Wolfram Decker 2. Mai 2011 References Cohen, H.: A Course in Computational Algebraic Number Theory. Springer, 1993. Cox, D.; Little,

Chapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm.

Chapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm. We begin by defining the ring of polynomials with coefficients in a ring R. After some preliminary results, we specialize

Prime numbers for Cryptography

Prime numbers for Cryptography What this is going to cover Primes, products of primes and factorisation How to win a million dollars Generating small primes quickly How many primes are there and how many

Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay

Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay Lecture - 17 Shannon-Fano-Elias Coding and Introduction to Arithmetic Coding

Quantum Computing Lecture 7. Quantum Factoring. Anuj Dawar

Quantum Computing Lecture 7 Quantum Factoring Anuj Dawar Quantum Factoring A polynomial time quantum algorithm for factoring numbers was published by Peter Shor in 1994. polynomial time here means that

Subsets of Euclidean domains possessing a unique division algorithm

Subsets of Euclidean domains possessing a unique division algorithm Andrew D. Lewis 2009/03/16 Abstract Subsets of a Euclidean domain are characterised with the following objectives: (1) ensuring uniqueness

Notes on Factoring. MA 206 Kurt Bryan

The General Approach Notes on Factoring MA 26 Kurt Bryan Suppose I hand you n, a 2 digit integer and tell you that n is composite, with smallest prime factor around 5 digits. Finding a nontrivial factor

Summer High School 2009 Aaron Bertram. 1. Prime Numbers. Let s start with some notation:

Summer High School 2009 Aaron Bertram 1. Prime Numbers. Let s start with some notation: N = {1, 2, 3, 4, 5,...} is the (infinite) set of natural numbers. Z = {..., 3, 2, 1, 0, 1, 2, 3,...} is the set of

Elementary Number Theory and Methods of Proof. CSE 215, Foundations of Computer Science Stony Brook University http://www.cs.stonybrook.

Elementary Number Theory and Methods of Proof CSE 215, Foundations of Computer Science Stony Brook University http://www.cs.stonybrook.edu/~cse215 1 Number theory Properties: 2 Properties of integers (whole

STRUCTURE AND RANDOMNESS IN THE PRIME NUMBERS. 1. Introduction. The prime numbers 2, 3, 5, 7,... are one of the oldest topics studied in mathematics.

STRUCTURE AND RANDOMNESS IN THE PRIME NUMBERS TERENCE TAO Abstract. A quick tour through some topics in analytic prime number theory.. Introduction The prime numbers 2, 3, 5, 7,... are one of the oldest

Chapter 9. Computational Number Theory. 9.1 The basic groups Integers mod N Groups

Chapter 9 Computational Number Theory 9.1 The basic groups We let Z = {..., 2, 1,0,1,2,...} denote the set of integers. We let Z + = {1,2,...} denote the set of positive integers and N = {0,1,2,...} the

Consequently, for the remainder of this discussion we will assume that a is a quadratic residue mod p.

Computing square roots mod p We now have very effective ways to determine whether the quadratic congruence x a (mod p), p an odd prime, is solvable. What we need to complete this discussion is an effective

Prime Numbers. Difficulties in Factoring a Number: from the Perspective of Computation. Computation Theory. Turing Machine 電 腦 安 全

Prime Numbers Difficulties in Factoring a Number: from the Perspective of Computation 電 腦 安 全 海 洋 大 學 資 訊 工 程 系 丁 培 毅 Prime number: an integer p> that is divisible only by and itself, ex., 3, 5, 7,, 3,

Orders Modulo A Prime

Orders Modulo A Prime Evan Chen March 6, 2015 In this article I develop the notion of the order of an element modulo n, and use it to prove the famous n 2 + 1 lemma as well as a generalization to arbitrary

Lecture 8: Applications of Quantum Fourier transform

Department of Physical Sciences, University of Helsinki http://theory.physics.helsinki.fi/ quantumgas/ p. 1/25 Quantum information and computing Lecture 8: Applications of Quantum Fourier transform Jani-Petri

Prime and Composite Terms in Sloane s Sequence A056542

1 2 3 47 6 23 11 Journal of Integer Sequences, Vol. 8 (2005), Article 05.3.3 Prime and Composite Terms in Sloane s Sequence A056542 Tom Müller Institute for Cusanus-Research University and Theological

Section 4.2: The Division Algorithm and Greatest Common Divisors

Section 4.2: The Division Algorithm and Greatest Common Divisors The Division Algorithm The Division Algorithm is merely long division restated as an equation. For example, the division 29 r. 20 32 948

CHAPTER 5: MODULAR ARITHMETIC

CHAPTER 5: MODULAR ARITHMETIC LECTURE NOTES FOR MATH 378 (CSUSM, SPRING 2009). WAYNE AITKEN 1. Introduction In this chapter we will consider congruence modulo m, and explore the associated arithmetic called

FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z

FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z DANIEL BIRMAJER, JUAN B GIL, AND MICHAEL WEINER Abstract We consider polynomials with integer coefficients and discuss their factorization

8 Divisibility and prime numbers

8 Divisibility and prime numbers 8.1 Divisibility In this short section we extend the concept of a multiple from the natural numbers to the integers. We also summarize several other terms that express