Basic Algorithms in Number Theory

Total Page:16

File Type:pdf, Size:1020Kb

Basic Algorithms in Number Theory Basic Algorithms in Number Theory Joe Buhler, Stan Wagon July 29, 2007 Abstract A variety of number-theoretic algorithms are described and analyzed with an eye to providing background for other articles in this volume. Topics include Euclid’s algorithm, continued fractions, factoring, primality, modular congruences, and quadratic fields. 1 Introduction Our subject combines the ancient charms of number theory with the modern fascination with algorithmic thinking. Newcomers to the field can appreciate this juxtaposition by studying the many elementary pearls in the subject. The aim here is to describe a few of these gems with the combined goals of preparing the reader for subsequent articles in this volume, and luring him or her into pursuing full-length treatments of the subject, such as [2], [5], [10], [9], [16], [15], [37]. Many details will be left to the reader, and we will assume that he or she knows (or can look up) basic facts from number theory, algebra, and elementary programming. 2 Complexity, informally Algorithms take input and produce output. The complexity of an algorithm A is a func- tion CA(n), defined to be the maximum, over all input I of size n, of the cost of running A on input I. Cost is often measured in terms of the number of “elemental opera- tions” that the algorithm performs and is intended, in suitable contexts, to approximate running time of actual computer programs implementing these algorithms. A formalization of these ideas requires precise definitions for “algorithm,” “input,” “output,” “cost,” “elemental operation,” and so on. We will give none. Instead, this section gives a series of algorithms answering number-theoretic ques- tions, and then discusses their complexity. This permits a quick survey of some al- gorithms of interest in number theory, and a discussion of complexity theory from a naive number theorists’ point of view. Fortunately, this informal and intuitive approach to complexity is usually sufficient for purposes of algorithmic number theory. Precise 1 foundations can be found in many texts on theoretical computer science or algorithmic complexity [13], [17] [19] . The first problem arises in elementary school. Problem 1. Multiplication: Given integers x and y, find their product xy. As stated, the question is woefully imprecise. We interpret it in the following natural (but by no means only possible) way. An algorithm to solve this problem takes the base b > 1 representation of integers x and y as input, given as strings of symbols. The algorithm (idealized computer program or Turing machine) follows a well-defined (”deterministic”) procedure to produce a string of output symbols which is the base b representation of the product xy. In practice, one might expect b to be 2, 10, 232, 264, etc. The natural notion of the size of an integer x is the total of the number of symbols (base b digits) in the input, perhaps augmented by a small constant to delimit the number and give its sign. For the sake of definiteness, we define the base-b size of x to be sizeb(x) := 1 + dlogb(1 + |x|)e, where logb is the logarithm to the base b, and due is the ceiling of u — the smallest integer greater than or equal to u. The size of an integer x is O(log(|x|)), where g(x) = O(f(x)) is a shorthand statement saying that g is in the class of functions such that there is a constant C such that 0 |g(x)| ≤ C|f(x)| for sufficiently large x. Note that O(logb(x)) = O(logb0 (x)) for b, b > 1. In particular, if we are interested in complexity only up to a constant factor, the choice of b is irrelevant. The multiplication algorithm that we all learned as youngsters takes O(n2) digit operations on input of size n. More precisely, if x and y have size at most n, then approximately n2 digit-sized multiplications, and n additions of n-digit intermediate products are required. Notice that the O() notation gracefully summarizes the running time of the algorithm; e.g., the complexity O(n2) is independent of base b, precise details of measuring the size of an integer, the definition of size of two inputs (as the maximum of the two integer inputs, or the total of their sizes), etc. An algorithm is said to take polynomial time if for some k its complexity is O(nk) for input of size n. Although this is a very flexible definition, with unclear relevance to computational practice, it has proven to be remarkably robust. In fact, it is sometimes reasonable to take “polynomial time” as synonymous with “efficient,” and in any case the notion has proved useful in both theory and practice. Of course, once it is known that a problem can be solved in polynomial time, it is interesting to find the smallest possible exponent k. For instance, in the 1970’s Sch¨onhage ([30]) discovered a striking algorithm for Multiplication that takes time O(n log(n) log log(n)) to multiply two n-digit integers. This unexpectedly low complexity led to a number of related “fast” algorithms; see [4] in this volume for arithmetic and algebraic examples. The elemental operations above are operations on single digits. The resulting notion of the complexity (running time) of an algorithm is called bit complexity, since if b = 2 then the underlying operations act on bits. In other contexts it might be more useful to assume that any arithmetic operation takes constant time (e.g., if all integers are 2 known beforehand to fit into a single computer word). When complexity of an algorithm is defined by counting arithmetic operations, the result is said to be the arithmetic complexity of the algorithm. In this model the cost of a single multiplication is O(1), showing that complexity depends dramatically on the underlying computational model. Problem 2. Exponentiation: Given x and a nonnegative integer n, compute xn. Again, problem is underspecified. We will assume that x is an element of a set that has a well-defined operation (associative with an identity element) that is written mul- tiplicatively; moreover, we will measure cost as the number of such operations required to compute xn on input x and n. We take the size of the input to be the size of the integer n. Although x16 can be computed with 15 multiplications in an obvious way, it is faster P i to compute it by 4 squarings. More generally, the binary expansion n = ai2 , ai ∈ {0, 1} implies that xn = xa0 (x2)a1 (x4)a4 ··· , (1) which suggests to a clever way to interleave multiplications and squarings: Right-to-left Exponentiation Input: x as above, and a nonnegative integer n Output: xn 1. y := 1 2. While n > 0 if n is odd, y = xy (ai is 1) x := x2, n := bn/2c 3. Return y Here “:=” denotes assignment of values to variables, “1” denotes the identity for the operation, and the floor buc is the largest integer less than or equal to u. The correctness of the algorithm is reasonably clear from (1) since for k ≥ 0, x2k is multiplied into y if and only if the k-th bit ak bit of the binary expansion of n is nonzero; it can proved more formally by showing by induction that at the beginning of Step 2, XN = xny is true, where X and N denote the initial values of the variables x and n. When n is 0 equation says that XN = y, so that y is the desired power. The usual inductive definition of Exp(x, n) := xn gives an obvious recursive algo- rithm: 1 if n = 0 Exp(x, n) = Exp(x2, n/2) if n > 0 is even (2) x · Exp(x2, (n − 1)/2) if n is odd. Experienced programmers often implement recursive versions of algorithms because of their elegance and obvious correctness, and when necessary then convert them to equiv- alent, and possibly faster, iterative (non-recursive) algorithms. If this is done to the recursive program, the result is to Right-to-Left algorithm above. Curiously, if the clause for even n is changed to the mathematically equivalent Exp(x, n) = Exp(x, n/2)2, n even 3 (and similarly in the odd clause) then the corresponding iterative algorithm is genuinely different. Left-to-Right Exponentiation Input: x, a nonnegative integer n, and a power of two m such that n < m Output: xn 1. y := 1 2. While m > 1 m := m/2, y := y2 If n ≥ m then y := xy, n := n − m 3. Return y Correctness follows inductively by proving that at the beginning of Step 2, n < m and m n N y x = x . In contrast to the earlier algorithm, this version consumes the bits ai (in the binary expansion of n) starting with the leftmost, i.e., most significant, bit. The complexity of any of the versions of this algorithm (collectively called Exp in the sequel) is O(log(n)) since the number of operations is bounded by 2 · size2(n). This remarkable efficiency is put to innumerable uses in algorithmic number theory, as will be seen. Note that the naive idea of repeatedly multiplying by x takes time O(n), which is exponential in the size of the input. Remark 3. In a specific but important special case the left-to-right version of Exp is better than the right-to-left version. Suppose that our operation is “multiplying mod- ulo n” and that x is small relative to N. Then multiplications by the original x are likely to take less time than modular multiplications by an arbitrary integer X, 0 ≤ X < N.
Recommended publications
  • On Fixed Points of Iterations Between the Order of Appearance and the Euler Totient Function
    mathematics Article On Fixed Points of Iterations Between the Order of Appearance and the Euler Totient Function ŠtˇepánHubálovský 1,* and Eva Trojovská 2 1 Department of Applied Cybernetics, Faculty of Science, University of Hradec Králové, 50003 Hradec Králové, Czech Republic 2 Department of Mathematics, Faculty of Science, University of Hradec Králové, 50003 Hradec Králové, Czech Republic; [email protected] * Correspondence: [email protected] or [email protected]; Tel.: +420-49-333-2704 Received: 3 October 2020; Accepted: 14 October 2020; Published: 16 October 2020 Abstract: Let Fn be the nth Fibonacci number. The order of appearance z(n) of a natural number n is defined as the smallest positive integer k such that Fk ≡ 0 (mod n). In this paper, we shall find all positive solutions of the Diophantine equation z(j(n)) = n, where j is the Euler totient function. Keywords: Fibonacci numbers; order of appearance; Euler totient function; fixed points; Diophantine equations MSC: 11B39; 11DXX 1. Introduction Let (Fn)n≥0 be the sequence of Fibonacci numbers which is defined by 2nd order recurrence Fn+2 = Fn+1 + Fn, with initial conditions Fi = i, for i 2 f0, 1g. These numbers (together with the sequence of prime numbers) form a very important sequence in mathematics (mainly because its unexpectedly and often appearance in many branches of mathematics as well as in another disciplines). We refer the reader to [1–3] and their very extensive bibliography. We recall that an arithmetic function is any function f : Z>0 ! C (i.e., a complex-valued function which is defined for all positive integer).
    [Show full text]
  • Lecture 3: Chinese Remainder Theorem 25/07/08 to Further
    Department of Mathematics MATHS 714 Number Theory: Lecture 3: Chinese Remainder Theorem 25/07/08 To further reduce the amount of computations in solving congruences it is important to realise that if m = m1m2 ...ms where the mi are pairwise coprime, then a ≡ b (mod m) if and only if a ≡ b (mod mi) for every i, 1 ≤ i ≤ s. This leads to the question of simultaneous solution of a system of congruences. Theorem 1 (Chinese Remainder Theorem). Let m1,m2,...,ms be pairwise coprime integers ≥ 2, and b1, b2,...,bs arbitrary integers. Then, the s congruences x ≡ bi (mod mi) have a simultaneous solution that is unique modulo m = m1m2 ...ms. Proof. Let ni = m/mi; note that (mi, ni) = 1. Every ni has an inversen ¯i mod mi (lecture 2). We show that x0 = P1≤j≤s nj n¯j bj is a solution of our system of s congruences. Since mi divides each nj except for ni, we have x0 = P1≤j≤s njn¯j bj ≡ nin¯ibj (mod mi) ≡ bi (mod mi). Uniqueness: If x is any solution of the system, then x − x0 ≡ 0 (mod mi) for all i. This implies that m|(x − x0) i.e. x ≡ x0 (mod m). Exercise 1. Find all solutions of the system 4x ≡ 2 (mod 6), 3x ≡ 5 (mod 7), 2x ≡ 4 (mod 11). Exercise 2. Using the Chinese Remainder Theorem (CRT), solve 3x ≡ 11 (mod 2275). Systems of linear congruences in one variable can often be solved efficiently by combining inspection (I) and Euclid’s algorithm (EA) with the Chinese Remainder Theorem (CRT).
    [Show full text]
  • Sequences of Primes Obtained by the Method of Concatenation
    SEQUENCES OF PRIMES OBTAINED BY THE METHOD OF CONCATENATION (COLLECTED PAPERS) Copyright 2016 by Marius Coman Education Publishing 1313 Chesapeake Avenue Columbus, Ohio 43212 USA Tel. (614) 485-0721 Peer-Reviewers: Dr. A. A. Salama, Faculty of Science, Port Said University, Egypt. Said Broumi, Univ. of Hassan II Mohammedia, Casablanca, Morocco. Pabitra Kumar Maji, Math Department, K. N. University, WB, India. S. A. Albolwi, King Abdulaziz Univ., Jeddah, Saudi Arabia. Mohamed Eisa, Dept. of Computer Science, Port Said Univ., Egypt. EAN: 9781599734668 ISBN: 978-1-59973-466-8 1 INTRODUCTION The definition of “concatenation” in mathematics is, according to Wikipedia, “the joining of two numbers by their numerals. That is, the concatenation of 69 and 420 is 69420”. Though the method of concatenation is widely considered as a part of so called “recreational mathematics”, in fact this method can often lead to very “serious” results, and even more than that, to really amazing results. This is the purpose of this book: to show that this method, unfairly neglected, can be a powerful tool in number theory. In particular, as revealed by the title, I used the method of concatenation in this book to obtain possible infinite sequences of primes. Part One of this book, “Primes in Smarandache concatenated sequences and Smarandache-Coman sequences”, contains 12 papers on various sequences of primes that are distinguished among the terms of the well known Smarandache concatenated sequences (as, for instance, the prime terms in Smarandache concatenated odd
    [Show full text]
  • Number Theory Course Notes for MA 341, Spring 2018
    Number Theory Course notes for MA 341, Spring 2018 Jared Weinstein May 2, 2018 Contents 1 Basic properties of the integers 3 1.1 Definitions: Z and Q .......................3 1.2 The well-ordering principle . .5 1.3 The division algorithm . .5 1.4 Running times . .6 1.5 The Euclidean algorithm . .8 1.6 The extended Euclidean algorithm . 10 1.7 Exercises due February 2. 11 2 The unique factorization theorem 12 2.1 Factorization into primes . 12 2.2 The proof that prime factorization is unique . 13 2.3 Valuations . 13 2.4 The rational root theorem . 15 2.5 Pythagorean triples . 16 2.6 Exercises due February 9 . 17 3 Congruences 17 3.1 Definition and basic properties . 17 3.2 Solving Linear Congruences . 18 3.3 The Chinese Remainder Theorem . 19 3.4 Modular Exponentiation . 20 3.5 Exercises due February 16 . 21 1 4 Units modulo m: Fermat's theorem and Euler's theorem 22 4.1 Units . 22 4.2 Powers modulo m ......................... 23 4.3 Fermat's theorem . 24 4.4 The φ function . 25 4.5 Euler's theorem . 26 4.6 Exercises due February 23 . 27 5 Orders and primitive elements 27 5.1 Basic properties of the function ordm .............. 27 5.2 Primitive roots . 28 5.3 The discrete logarithm . 30 5.4 Existence of primitive roots for a prime modulus . 30 5.5 Exercises due March 2 . 32 6 Some cryptographic applications 33 6.1 The basic problem of cryptography . 33 6.2 Ciphers, keys, and one-time pads .
    [Show full text]
  • Introduction to Number Theory CS1800 Discrete Math; Notes by Virgil Pavlu; Updated November 5, 2018
    Introduction to Number Theory CS1800 Discrete Math; notes by Virgil Pavlu; updated November 5, 2018 1 modulo arithmetic All numbers here are integers. The integer division of a at n > 1 means finding the unique quotient q and remainder r 2 Zn such that a = nq + r where Zn is the set of all possible remainders at n : Zn = f0; 1; 2; 3; :::; n−1g. \mod n" = remainder at division with n for n > 1 (n it has to be at least 2) \a mod n = r" means mathematically all of the following : · r is the remainder of integer division a to n · a = n ∗ q + r for some integer q · a; r have same remainder when divided by n · a − r = nq is a multiple of n · n j a − r, a.k.a n divides a − r EXAMPLES 21 mod 5 = 1, because 21 = 5*4 +1 same as saying 5 j (21 − 1) 24 = 10 = 3 = -39 mod 7 , because 24 = 7*3 +3; 10=7*1+3; 3=7*0 +3; -39=7*(-6)+3. Same as saying 7 j (24 − 10) or 7 j (3 − 10) or 7 j (10 − (−39)) etc LEMMA two numbers a; b have the same remainder mod n if and only if n divides their difference. We can write this in several equivalent ways: · a mod n = b mod n, saying a; b have the same remainder (or modulo) · a = b( mod n) · n j a − b saying n divides a − b · a − b = nk saying a − b is a multiple of n (k is integer but its value doesnt matter) 1 EXAMPLES 21 = 11 (mod 5) = 1 , 5 j (21 − 11) , 21 mod 5 = 11 mod 5 86 mod 10 = 1126 mod 10 , 10 j (86 − 1126) , 86 − 1126 = 10k proof: EXERCISE.
    [Show full text]
  • On Sets of Coprime Integers in Intervals Paul Erdös, András Sárközy
    On sets of coprime integers in intervals Paul Erdös, András Sárközy To cite this version: Paul Erdös, András Sárközy. On sets of coprime integers in intervals. Hardy-Ramanujan Journal, Hardy-Ramanujan Society, 1993, 16, pp.1 - 20. hal-01108688 HAL Id: hal-01108688 https://hal.archives-ouvertes.fr/hal-01108688 Submitted on 23 Jan 2015 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. 1 Hardy-Ramanujan Joumal Vol.l6 (1993) 1-20 On sets of coprime integers in intervals P. Erdos and Sarkozy 1 1. Throughout this paper we use the following notations : ~ denotes the set of the integers. N denotes the set of the positive integers. For A C N,m E N,u E ~we write .A(m,u) ={f.£; a E A, a= u(mod m)}. IP(n) denotes Euler';; function. Pk dznotcs the kth prime: P1 = 2,p2 = 3,· ··and k we put Pk = IJP•· If k E N and k ~ 2, then .PA:(A) denotes the number of i=l the k-tuples (at,···, ak) such that at E A,·· · , ak E A,ai < a2 < · · · < ak and (at,aj = 1) for 1::; i < j::; k.
    [Show full text]
  • Dynamical Systems and Infinite Sequences of Coprime Integers
    Dynamical systems and infinite sequences of coprime integers Max van Spengler 3935892 Supervisor: Damaris Schindler Departement Wiskunde Universiteit Utrecht Nederland 31-05-2018 Contents 1 Introduction 2 1.1 Goldbach's proof . 3 1.2 Erd}os'proof . 4 1.3 Furstenberg's proof . 5 2 Theoretical background 7 2.1 Number theory . 7 2.2 Dynamical systems . 10 2.3 Additional theory . 10 3 Constructing infinitely many primes 16 3.1 A general method when 0 is strictly periodic . 17 3.2 General methods when 0 is periodic . 21 3.3 The case where 0 has a wandering orbit . 25 4 New results 29 4.1 A restriction on the weak abc-conjecture . 29 4.2 Applying the exponential bound . 30 5 Summary 32 1 1 Introduction Since the Hellenistic period, prime numbers and their properties have been a fundamental object of interest in mathematics [MB11]. The defining property of such a number is that it is only divisible by 1 and itself. Their counterparts are the composite numbers. These are numbers defined as being divisible by at least one number other than 1 or themselves. One of the earliest results obtained from research into these numbers is now known as the fundamental theorem of arithmetic. Fundamental theorem of arithmetic. Every natural number > 1 is either prime or can be written, up to the order of factors, as a unique product of primes. Proof. We will give a proof by induction. First, note that 2 and 3 are prime. Now assume the theorem to be true for all numbers between 1 and n + 1 for some n 2 N, so each number in between can be written as a unique product of primes.
    [Show full text]
  • Theory of Numbers
    Unit 1 Theory of Numbers Natural Numbers Thenumbers1,2,3,…,whichareusedincountingarecalled naturalnumbers or positiveintegers. Basic Properties of Natural Numbers In the system of natural numbers, we have two ‘operations’ addition and multiplication with the followingproperties. Let x,, y z denotearbitrarynaturalnumbers,then 1. x+ y isanaturalnumber i.e., thesumoftwonaturalnumberisagainanaturalnumber. 2. Commutative law of addition x+ y = y + x 3. Associative law of addition x+()() y + z = x + y + z 4. x⋅ y isanaturalnumber i.e., productoftwonaturalnumbersisanaturalnumber. 5. Commutative law of multiplication x⋅ y = y ⋅ x 6. Associative law of multiplication x⋅()() y ⋅ z = x ⋅ y ⋅ z 7. Existence of multiplicative identity a⋅1 = a 8. Distributive law x() y+ z = xy + xz Divisibility of Integers An integerx ≠ 0 divides y, if there exists an integer a such that y= ax and thus we write as x| y ( x divides y). If x doesnotdivides y,wewriteas x\| y (x doesnotdivides y ) [Thiscanalsobestatedas y isdivisibleby x or x isadivisorof y or y isamultipleof x]. Properties of Divisibility 1. x | y and y | z ⇒ x | z 2. x | y and x | z ⇒x| ( ky± lz ) forall k, l∈ z. z = setofallintegers. 3. x | y and y | x ⇒ x= ± y 4. x | y,where x>0, y > 0 ⇒x≤ y 5. x | y ⇒ x | yz foranyinteger z. 6. x | y iff nx | ny,where n ≠ 0. 2 IndianNational MathematicsOlympiad Test of Divisibility Divisibility by certain special numbers can be determined without actually carrying out the process of division.Thefollowingtheoremsummarizestheresult: ApositiveintegerNisdivisibleby • 2ifandonlyifthelastdigit(unit'sdigit)iseven.
    [Show full text]
  • Number Theory
    Chapter 3 Number Theory Part of G12ALN Contents Algebra and Number Theory G12ALN cw '17 0 Review of basic concepts and theorems The contents of this first section { well zeroth section, really { is mostly repetition of material from last year. Notations: N = f1; 2; 3;::: g, Z = f:::; −2; −1; 0; 1; 2;::: g. If A is a finite set, I write #A for the number of elements in A. Theorem 0.1 (Long division). If a; b 2 Z and b > 0, then there are unique integers q and r such that a = q b + r with 0 6 r < b: Proof. Theorem 3.2 in G11MSS. The integer q is called the quotient and r the remainder. We say that b divides a if the remainder is zero. It will be denoted by b j a. There is an interesting variant to this: There are unique integers q0 and 0 0 0 b 0 b 0 r with a = q b + r and − 2 < r 6 2 . Instead of remainder, r is called the least residue of a modulo b. Example. Take a = 62 and b = 9. Then the quotient is q = 6 and the remainder is r = 8. The least residue is r0 = −1. 0.1 The greatest common divisor §Definition. Let a and b be integers not both equal to 0. The greatest ¤ common divisor of a and b is the largest integer dividing both a and b. We will denote it by (a; b). For convenience, we set (0; 0) = 0. ¦ ¥ Let a; b 2 Z.
    [Show full text]
  • The Probability That Two Random Integers Are Coprime Julien Bureaux, Nathanaël Enriquez
    The probability that two random integers are coprime Julien Bureaux, Nathanaël Enriquez To cite this version: Julien Bureaux, Nathanaël Enriquez. The probability that two random integers are coprime. 2016. hal-01413829 HAL Id: hal-01413829 https://hal.archives-ouvertes.fr/hal-01413829 Preprint submitted on 11 Dec 2016 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. THE PROBABILITY THAT TWO RANDOM INTEGERS ARE COPRIME JULIEN BUREAUX AND NATHANAEL¨ ENRIQUEZ Abstract. An equivalence is proven between the Riemann Hypothesis and the speed of con- vergence to 6/π2 of the probability that two independent random variables following the same geometric distribution are coprime integers, when the parameter of the distribution goes to 0. What is the probability that two random integers are coprime? Since there is no uniform probability distribution on N, this question must be made more precise. Before going into probabilistic considerations, we would like to remind a seminal result of Dirichlet [1]: the set of ordered pairs of coprime integers has an asymptotic density in N2 which is equal to 6/π2 0.P608. The proof is not trivial and can be found in the book of Hardy and Wright ([2], Theorem≈ 332), but if one admits the existence of a density δ, its value can be easily obtained.
    [Show full text]
  • Using Dynamical Systems to Construct Infinitely Many Primes
    Mathematical Assoc. of America American Mathematical Monthly 121:1 August 24, 2017 12:20 a.m. MonthlyArticleDynamicsOnly.v5.tex page 1 Using Dynamical Systems to Construct Infinitely Many Primes Andrew Granville Abstract. Euclid’s proof can be reworked to construct infinitely many primes, in many differ- ent ways, using ideas from arithmetic dynamics. 1. CONSTRUCTING INFINITELY MANY PRIMES. The first known proof that there are infinitely many primes, which appears in Euclid’s Elements, is a proof by contradiction. This proof does not indicate how to find primes, despite establishing that there are infinitely many of them. However a minor variant does do so. The key to either proof is the theorem that Every integer q > 1 has a prime factor. (This was first formally proved by Euclid on the way to establishing the fundamental theorem of arithmetic.) The idea is to Construct an infinite sequence of distinct, pairwise coprime, integers a0, a1,..., that is, a sequence for which gcd(am, an) = 1 whenever m 6= n. We then obtain infinitely many primes, the prime factors of the an, as proved in the following result. Proposition 1. Suppose that a0, a1,... is an infinite sequence of distinct, pairwise coprime, integers. Let pn be a prime divisor of an whenever |an| > 1. Then the pn form an infinite sequence of distinct primes. Proof. The pn are distinct for if not, then pm = pn for some m 6= n and so pm = gcd(pm,pn) divides gcd(am, an) = 1, a contradiction. As the an are distinct, any given value (in particular, −1, 0 and 1) can be attained at most once, and therefore all but at most three of the an have absolute value > 1, and so have a prime factor pn.
    [Show full text]
  • Integer Factoring
    Designs, Codes and Cryptography, 19, 101–128 (2000) c 2000 Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. Integer Factoring ARJEN K. LENSTRA [email protected] Citibank, N.A., 1 North Gate Road, Mendham, NJ 07945-3104, USA Abstract. Using simple examples and informal discussions this article surveys the key ideas and major advances of the last quarter century in integer factorization. Keywords: Integer factorization, quadratic sieve, number field sieve, elliptic curve method, Morrison–Brillhart Approach 1. Introduction Factoring a positive integer n means finding positive integers u and v such that the product of u and v equals n, and such that both u and v are greater than 1. Such u and v are called factors (or divisors)ofn, and n = u v is called a factorization of n. Positive integers that can be factored are called composites. Positive integers greater than 1 that cannot be factored are called primes. For example, n = 15 can be factored as the product of the primes u = 3 and v = 5, and n = 105 can be factored as the product of the prime u = 7 and the composite v = 15. A factorization of a composite number is not necessarily unique: n = 105 can also be factored as the product of the prime u = 5 and the composite v = 21. But the prime factorization of a number—writing it as a product of prime numbers—is unique, up to the order of the factors: n = 3 5 7isthe prime factorization of n = 105, and n = 5 is the prime factorization of n = 5.
    [Show full text]