Complexity Issues in Counting, Polynomial Evaluation and Zero Finding Irénée Briquel

Total Page:16

File Type:pdf, Size:1020Kb

Complexity Issues in Counting, Polynomial Evaluation and Zero Finding Irénée Briquel Complexity issues in counting, polynomial evaluation and zero finding Irénée Briquel To cite this version: Irénée Briquel. Complexity issues in counting, polynomial evaluation and zero finding. Other [cs.OH]. Ecole normale supérieure de lyon - ENS LYON, 2011. English. NNT : 2011ENSL0693. tel-00665782 HAL Id: tel-00665782 https://tel.archives-ouvertes.fr/tel-00665782 Submitted on 2 Feb 2012 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. Complexity issues in counting, polynomial evaluation and zero finding A dissertation submitted to Ecole´ Normale Sup´erieurede Lyon and City University of Hong Kong in partial satisfaction of the requirements for the Degree of Doctor of Philosophy in Computer Science by Ir´en´ee Briquel The dissertation will be defended on 29. November 2011. Examination Pannel : President Qiang Zhang Professor, City University of Hong Kong Reviewers Arnaud Durand Professor, Universit´eDenis Diderot, Paris Jean-Pierre Dedieu Professor, Universit´ePaul Sabatier, Toulouse Examiners Nadia Creignou Professor, Universit´ede la M´editerran´ee,Marseille Jonathan Wylie Professor, City University of Hong Kong Advisors Pascal Koiran Professor, Ecole´ Normale Sup´erieurede Lyon Felipe Cucker Professor, City University of Hong Kong Many years ago I was invited to give a lecture on what is today called "computer science" at a large eastern university. I titled my lecture "Turing machines", because the most famous abstract model of a computer is the model presented by Alan Turing. Today biographies of Turing are reviewed in the New York Times, but in those early days of the computer Turing was virtually unheard of. Thus it wasn't surprising that someone at the university "corrected" what he assumed to be my typographical error, with the result that posters announcing that I would give a lecture on TOURING MACHINES went up all over the campus. (A few people left rather early in the lecture). Representation and Reality Hilary Putnam 2 R´esum´e En informatique, le mod`elede calcul g´en´eralement utilis´eest la machine de Turing. Cette derni`ereest une mod´elisationth´eoriquede l'ordinateur digital, et est pertinente pour plusieurs raisons. D'abord, la th`ese de Church, formul´eedans les ann´ees 1940, et qui est commun´ement admise dans la communaut´edes informaticiens, affirme que les fonctions qui sont effective- ment calculables sont exactement les fonctions calcul´eespar les machines de Turing. Cette th`eserepose sur le fait que de nombreuses tentatives pour formaliser la notion de calcul a conduit `ades mod`elescalculant ou exprimant exactement les m^emesfonctions que les machines de Turing. Et ensuite car le fonctionnement des ordinateurs actuels est assez proche de la machine de Turing. Cette machine est donc un bon mod`elepour ´etudiernon seulement si certaines fonctions sont calculables, mais aussi pour ´etudier leur complexit´e, c’est-`a-direles ressources en temps et en m´emoiredont un ordinateur aura besoin pour calculer ces fonctions. Ce mod`elede calcul est ainsi `ala base de l'´etudede l’efficacit´edes algorithmes, et donc de l'´etudede la difficult´edes probl`emesr´esoluspar ces algorithmes. Il a permis l'essor du domaine de recherche de la complexit´ede calcul, qui s'int´eresse`aclasser les probl`emesen fonction de leur difficult´e,en d´efinissant des classes de probl`emesde complexit´ecomparable, et en ´etudiant les inclusions entre ces classes. La machine de Turing fonctionne par d´efinitionsur l'alphabet f0; 1g, ou de mani`ere ´equivalente sur un alphabet fini. Les probl`emesd´efinissur des structures plus riches, comme l'ensemble des r´eelsou des complexes, ne sont donc pas `asa port´ee{ plusieurs th´eories ont ´et´epropos´eespour ´etudierle calcul continu sur la machine de Turing (discr`ete), mais aujourd'hui il n'y a pas de consensus sur l'approche `asuivre. En particulier, les polyn^omes, qui sont les fonctions calcul´eesavec les op´erations(+; −; ×), ne peuvent ^etre´evalu´essur les nombres r´eels ou complexes par des machines de Turing. La complexit´ealg´ebriquea donc ´et´ed´evelopp´eepour permettre l'´etudedes questions de complexit´esur n'importe quel corps. On a donc introduit diff´erents mod`elesde calcul permettant de construire des algorithmes utilisant les op´erationsarithm´etiquesusuelles sur un corps donn´e,et formalisant ainsi la notion intuitive de calcul en math´ematiquesclassiques continues. Malheureusement, contrairement au cas bool´een, les diff´erents mod`elesde calcul in- troduits calculent des classes de fonction diff´erentes, et ne permettent donc pas de faire ressortir une notion claire de calculabilit´e. En outre, contrairement `ala machine de Tur- ing, ces mod`eles ne sont pas li´es`ades impl´ementations concr`etes.S'il est donc int´eressant d'´etudierces diff´erents mod`elesde calcul alg´ebriques,la machine de Turing reste le mod`ele de calcul de r´ef´erence,et il est aussi essentiel d'´etudierla traduction de ces calculs en algo- rithmes bool´eens. Dans cette th`ese,nous nous concentrons sur les polyn^omes,qui sont au cœur de la complexit´ealg´ebrique.Nous consid´eronsdeux mod`elesde calcul alg´ebriques,le mod`elede Valiant et la machine de Blum, Shub et Smale (BSS). Si les mod`elesde Valiant et de Blum, Shub et Smale ont respectivement d´ej`a33 et 22 ans et ont ´et´eabondamment ´etudi´es,la complexit´ealg´ebriquereste un champ de recherche bien plus petit que la complexit´ebool´eenneclassique. Pour ´etudierla structure des classes de complexit´ealg´ebriques,il est donc naturel de partir des r´esultatset des questions ouvertes dans le cas bool´een,et de regarder ce qu'il en est dans le contexte alg´ebrique.La comparaison des r´esultatsobtenus dans ces deux domaines permet ainsi d'enrichir notre compr´ehension des deux th´eories. La premi`erepartie de cette th`esesuit cette approche. En consid´erant un polyn^ome canoniquement associ´e`atoute formule bool´eenne,nous obtenons un lien entre les questions de complexit´ebool´eennesur la formule bool´eenneet les questions de complexit´ealg´ebrique sur le polyn^ome. Nous avons ´etudi´ela complexit´edu calcul de ce polyn^omedans le mod`ele de Valiant en fonction de la complexit´ede la formule bool´eenne. Nous avons obtenu dans le cas alg´ebriquedes r´esultats comparables `acertains r´esultatsbool´eens,tout en obser- vant des diff´erencesnotables. Nous avons aussi pu utiliser des m´ethodes alg´ebriquespour am´eliorercertains r´esultats bool´eens,en particulier en obtenant de meilleures r´eductions entre probl`emes de comptage. Mais la motivation la plus naturelle aux mod`elesde calcul alg´ebriquesest d’offrir un niveau d'abstraction ´el´egant pour d´efiniret analyser des algorithmes alg´ebriques. La seconde partie de ma th`esesuit cette approche, et va dans la direction oppos´ee,c’est-`a-direde la complexit´ealg´ebrique `ala complexit´ebool´eenne. Nous nous sommes int´eress´es`ades algorithmes nouveaux pour un probl`emealg´ebriquebien connu : la recherche de z´eros(ou racines) approch´esd'un syst`eme de n polyn^omescomplexes `a n inconnues, initi´eepar Steve Smale. Ce cas o`ule nombre de variables est ´egalau nombre de polyn^omesest int´eressant puisque d'apr`esle th´eor`emede B´ezout,l'on a alors presque s^urement un nombre fix´ede z´erosisol´es. Ce probl`emea connu de grandes avanc´eesdans la derni`ered´ecennie,et des algorithmes efficaces ont ´et´epropos´es. Jusqu’`apr´esent il s'agissait d'algorithmes pour la machine BSS. Nous avons ´etudi´e l'impl´ementabilit´ede ces algorithmes sur un ordinateur bool´een. Cela signifie repr´esenter les nombres complexes par des approximations de pr´ecisionfinie, et prendre en compte les erreurs faites `achaque calcul sur ces approximations. Nous proposons un algorithme d´eterministefonctionnant en pr´ecisionfinie pour ce probl`eme,et dont la complexit´eest polynomiale en la taille de l'entr´ee lorsque les polyn^omessont de degr´eborn´e. 2 Contents 1 Preliminaries 5 1.1 Boolean formulas . .5 1.2 Graphs . .6 1.3 Counting complexity . 10 1.4 Algebraic models of computation . 10 1.4.1 Valiant's model . 10 1.4.2 The BSS model . 13 1.5 Reductions and completeness . 14 1.5.1 #P-completeness . 14 1.5.2 VNP-completeness . 17 I From boolean formulas to polynomials 19 2 A dichotomy result 21 2.1 Boolean formulas . 22 2.1.1 Boolean constraint satisfaction problems . 22 2.1.2 Boolean dichotomy results . 23 2.2 In the algebraic setting . 24 2.2.1 Overview of the proof of Theorem 2.2.2 . 26 2.3 Monotone 2-clauses . 27 2.4 Implicative 2-clauses . 29 2.5 Non affine constraints . 32 2.6 Affine functions with width at least 3 . 34 2.7 #P-completeness proofs . 37 2.8 The structure of the polynomials associated to S-formulas. 41 3 A lower bound from communication complexity 44 3.1 Previous results . 45 3.2 Communication complexity . 47 3.3 The lower bound . 49 3.4 Further results . 53 1 II From complex numbers to booleans 55 4 Fast Computation of Zeros of Polynomial Systems with Bounded Degree under Finite-precision 56 4.1 Introduction . 56 4.2 Preliminaries .
Recommended publications
  • Polynomial Evaluation Engl2
    Alexander Rostovtsev, Alexey Bogdanov and Mikhail Mikhaylov St. Petersburg state Polytechnic University [email protected] Secure evaluation of polynomial using privacy ring homomorphisms Method of secure evaluation of polynomial y = F(x1, …, xk) over some rings on untrusted computer is proposed. Two models of untrusted computer are considered: passive and active. In passive model untrusted computer correctly computes polyno- mial F and tries to know secret input (x1, …, xk) and output y. In active model un- trusted computer tries to know input and output and tries to change correct output y so that this change cannot be determined. Secure computation is proposed by using one-time privacy ring homomorphism /n ® /n[z]/(f(z)), n = pq, generated by trusted computer. In the case of active model secret check point v = F(u1, …, uk) is used. Trusted computer generates poly- nomial f(z) = (z - t)(z + t), t Î /n and input Xi(z) Î /n[z]/(f(z)) such that Xi(t) º xi (mod n) for passive model, and f(z) = (z - t1)(z - t2)(z - t3), ti Î /n and input Xi(z) Î /n[z]/(f(z)) such that Xi(t1) º xi (mod n), Xi(t2) º ui (mod n) for active model. Untrusted computer computes function Y(z) = F(X1(z), …, Xk(z)) in the ring /n[z]/(f(z)). For passive model trusted computer determines secret output y º Y(t) (mod n). For active model trusted computer checks that Y(t2) º v (mod n), then deter- mines correct output y º Y(t1) (mod n).
    [Show full text]
  • Generalized Kakeya Sets for Polynomial Evaluation and Faster Computation of Fermionants
    Generalized Kakeya sets for polynomial evaluation and faster computation of fermionants Andreas Björklund1, Petteri Kaski2, and Ryan Williams3 1 Department of Computer Science, Lund University, Lund, Sweden 2 Department of Computer Science, Aalto University, Helsinki, Finland 3 Department of Electrical Engineering and Computer Science & CSAIL, MIT, Cambridge, MA, USA Abstract We present two new data structures for computing values of an n-variate polynomial P of degree at most d over a finite field of q elements. Assuming that d divides q − 1, our first data structure relies on (d + 1)n+2 tabulated values of P to produce the value of P at any of the qn points using O(nqd2) arithmetic operations in the finite field. Assuming that s divides d and d/s divides q − 1, our second data structure assumes that P satisfies a degree-separability condition and relies on (d/s+1)n+s tabulated values to produce the value of P at any point using O(nqssq) arithmetic operations. Our data structures are based on generalizing upper-bound constructions due to Mockenhaupt and Tao (2004), Saraf and Sudan (2008), and Dvir (2009) for Kakeya sets in finite vector spaces from linear to higher-degree polynomial curves. As an application we show that the new data structures enable a faster algorithm for com- puting integer-valued fermionants, a family of self-reducible polynomial functions introduced by Chandrasekharan and Wiese (2011) that captures numerous fundamental algebraic and combin- atorial invariants such as the determinant, the permanent, the number of Hamiltonian cycles in a directed multigraph, as well as certain partition functions of strongly correlated electron systems in statistical physics.
    [Show full text]
  • Factoring Polynomials Over Finite Fields
    Factoring Polynomials over Finite Fields More precisely: Factoring and testing irreduciblity of sparse polynomials over small finite fields Richard P. Brent MSI, ANU joint work with Paul Zimmermann INRIA, Nancy 27 August 2009 Richard Brent (ANU) Factoring Polynomials over Finite Fields 27 August 2009 1 / 64 Outline Introduction I Polynomials over finite fields I Irreducible and primitive polynomials I Mersenne primes Part 1: Testing irreducibility I Irreducibility criteria I Modular composition I Three algorithms I Comparison of the algorithms I The “best” algorithm I Some computational results Part 2: Factoring polynomials I Distinct degree factorization I Avoiding GCDs, blocking I Another level of blocking I Average-case complexity I New primitive trinomials Richard Brent (ANU) Factoring Polynomials over Finite Fields 27 August 2009 2 / 64 Polynomials over finite fields We consider univariate polynomials P(x) over a finite field F. The algorithms apply, with minor changes, for any small positive characteristic, but since time is limited we assume that the characteristic is two, and F = Z=2Z = GF(2). P(x) is irreducible if it has no nontrivial factors. If P(x) is irreducible of degree r, then [Gauss] r x2 = x mod P(x): 2r Thus P(x) divides the polynomial Pr (x) = x − x. In fact, Pr (x) is the product of all irreducible polynomials of degree d, where d runs over the divisors of r. Richard Brent (ANU) Factoring Polynomials over Finite Fields 27 August 2009 3 / 64 Counting irreducible polynomials Let N(d) be the number of irreducible polynomials of degree d. Thus X r dN(d) = deg(Pr ) = 2 : djr By Möbius inversion we see that X rN(r) = µ(d)2r=d : djr Thus, the number of irreducible polynomials of degree r is ! 2r 2r=2 N(r) = + O : r r Since there are 2r polynomials of degree r, the probability that a randomly selected polynomial is irreducible is ∼ 1=r ! 0 as r ! +1.
    [Show full text]
  • On Unique Graph 3-Colorability and Parsimonious Reductions in the Plane
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector Theoretical Computer Science 319 (2004) 455–482 www.elsevier.com/locate/tcs On unique graph 3-colorability and parsimonious reductions in the plane RÃegis Barbanchon GREYC, Universiteà de Caen, 14032 Caen Cedex, France Abstract We prove that the Satisÿability (resp. planar Satisÿability) problem is parsimoniously P-time reducible to the 3-Colorability (resp. Planar 3-Colorability) problem, that means that the exact number of solutions is preserved by the reduction, provided that 3-colorings are counted modulo their six trivial color permutations. In particular, the uniqueness of solutions is preserved, which implies that Unique 3-Colorability is exactly as hard as Unique Satisÿability in the general case as well as in the planar case. A consequence of our result is the DP-completeness of Unique 3-Colorability and Unique Planar 3-Colorability under random P-time reductions. It also gives a ÿner and uniÿed proof of the #P-completeness of #3-Colorability that was ÿrst obtained by Linial for the general case, and later by Hunt et al. for the planar case. Previous authors’ reductions were either weakly parsimonious with a multiplication of the numbers of solutions by an exponential factor, or involved #P-complete intermediate counting problems derived from trivial “yes”-decision problems. c 2004 Elsevier B.V. All rights reserved. Keywords: Computational complexity; Planar combinatorial problems; 3-Colorability; Unique solution
    [Show full text]
  • The Fast Fourier Transform and Applications to Multiplication
    The Fast Fourier Transform and Applications to Multiplication Analysis of Algorithms Prepared by John Reif, Ph.D. Topics and Readings: - The Fast Fourier Transform • Reading Selection: • CLR, Chapter 30 Advanced Material : - Using FFT to solve other Multipoint Evaluation Problems - Applications to Multiplication Nth Roots of Unity • Assume Commutative Ring (R,+,·, 0,1) • ω is principal nth root of unity if – ωk ≠ 1 for k = 1, …, n-1 – ωn = 1, and n-1 ∑ω jp = 0 for 1≤ p ≤ n j=0 2πi/n • Example: ω = e for complex numbers Example of nth Root of Unity for Complex Numbers ω = e 2 π i / 8 is the 8th root of unity Fourier Matrix #1 1 … 1 $ % n−1 & %1 ω … ω & M (ω) = %1 ω 2 … ω 2(n−1) & n % & % & % n−1 (n−1)(n−1) & '1 ω … ω ( ij so M(ω)ij = ω for 0 ≤ i, j<n #a0 $ % & given a =% & % & 'a n-1 ( Discrete Fourier Transform T Input a column n-vector a = (a0, …, an-1) Output an n-vector which is the product of the Fourier matrix times the input vector DFTn (a) = M(ω) x a "f0 # $ % = $ % where $ % &fn-1 ' n-1 f = a ik i ∑ kω k=0 Inverse Fourier Transform -1 -1 DFTn (a) = M(ω) x a 1 Theorem M(ω)-1 = ω -ij ij n proof We must show M(ω)⋅M(ω)-1 = I 1 n-1 1 n-1 ∑ωikω -kj = ∑ω k(i-j) n k=0 n k=0 $0 if i-j ≠ 0 = % &1 if i-j = 0 n-1 using identity ∑ω kp = 0, for 1≤ p < n k=0 Fourier Transform is Polynomial Evaluation at the Roots of Unity T Input a column n-vector a = (a0, …, an-1) T Output an n-vector (f0, …, fn-1) which are the values polynomial f(x)at the n roots of unity "f0 # DFT (a) = $ % where n $ % $ % &fn-1 ' i fi = f(ω ) and n-1 f(x) = a x j ∑ j
    [Show full text]
  • Arxiv:0911.1393V5 [Cs.CC] 1 Jul 2013 Author’S Addresses: C
    0 Most Tensor Problems are NP-Hard CHRISTOPHER J. HILLAR, Mathematical Sciences Research Institute LEK-HENG LIM, University of Chicago We prove that multilinear (tensor) analogues of many efficiently computable problems in numerical linear algebra are NP-hard. Our list here includes: determining the feasibility of a system of bilinear equations, deciding whether a 3-tensor possesses a given eigenvalue, singular value, or spectral norm; approximating an eigenvalue, eigenvector, singular vector, or the spectral norm; and determining the rank or best rank-1 approximation of a 3-tensor. Furthermore, we show that restricting these problems to symmetric tensors does not alleviate their NP-hardness. We also explain how deciding nonnegative definiteness of a symmetric 4-tensor is NP-hard and how computing the combinatorial hyperdeterminant of a 4-tensor is NP-, #P-, and VNP-hard. We shall argue that our results provide another view of the boundary separating the computa- tional tractability of linear/convex problems from the intractability of nonlinear/nonconvex ones. Categories and Subject Descriptors: G.1.3 [Numerical Analysis]: Numerical Linear Algebra General Terms: Tensors, Decidability, Complexity, Approximability Additional Key Words and Phrases: Numerical multilinear algebra, tensor rank, tensor eigenvalue, tensor singular value, tensor spectral norm, system of multilinear equations, hyperdeterminants, symmetric ten- sors, nonnegative definite tensors, bivariate matrix polynomials, NP-hardness, #P-hardness, VNP-hardness, undecidability, polynomial time approximation schemes ACM Reference Format: Hillar, C. J., and Lim, L.-H. 2012. Most tensor problems are NP-hard J. ACM 0, 0, Article 0 (June 2013), 38 pages. DOI = 10.1145/0000000.0000000 http://doi.acm.org/10.1145/0000000.0000000 1.
    [Show full text]
  • Polynomial Evaluation and Interpolation on Special Sets of Points
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector Journal of Complexity 21 (2005) 420–446 www.elsevier.com/locate/jco Polynomial evaluation and interpolation on special sets of points Alin Bostan∗, Éric Schost Laboratoire STIX, École polytechnique, 91128 Palaiseau, France Received 31 January 2004; accepted 6 September 2004 Available online 10 February 2005 Abstract We give complexity estimates for the problems of evaluation and interpolation on various polyno- mial bases. We focus on the particular cases when the sample points form an arithmetic or a geometric sequence, and we discuss applications, respectively, to computations with linear differential operators and to polynomial matrix multiplication. © 2005 Elsevier Inc. All rights reserved. Keywords: Polynomial evaluation and interpolation; Transposition principle; Polynomial matrix multiplication; Complexity 1. Introduction Let k be a field and let x = x0,...,xn−1 be n pairwise distinct points in k. Given arbitrary values v = v0,...,vn−1 in k, there exists a unique polynomial F in k[x] of degree less than n such that F(xi) = vi, for i = 0,...,n− 1. Having fixed a basis of the vector space of polynomials of degree at most n − 1, interpolation and evaluation questions consist in computing the coefficients of F on this basis from the values v, and conversely. ∗ Corresponding author. E-mail addresses: [email protected] (A. Bostan), [email protected] (É. Schost). 0885-064X/$ - see front matter © 2005 Elsevier Inc. All rights reserved. doi:10.1016/j.jco.2004.09.009 A.
    [Show full text]
  • Algebraic Polynomial Sum Solver Over {0 , 1}
    Preprints (www.preprints.org) | NOT PEER-REVIEWED | Posted: 11 February 2021 doi:10.20944/preprints201908.0037.v6 Algebraic Polynomial Sum Solver Over {0, 1} Frank Vega CopSonic, 1471 Route de Saint-Nauphary 82000 Montauban, France [email protected] Abstract Given a polynomial P (x1, x2, . , xn) which is the sum of terms, where each term is a product of two distinct variables, then the problem AP SS consists in calculating the total sum value of P P (u1, u2, . , un), for all the possible assignments Ui = {u1, u2, ...un} to the variables such that ∀Ui uj ∈ {0, 1}. AP SS is the abbreviation for the problem name Algebraic Polynomial Sum Solver Over {0, 1}. We show that AP SS is in #L and therefore, it is in FP as well. The functional polynomial time solution was implemented with Scala in https://github.com/frankvegadelgado/sat using the DIMACS format for the formulas in MONOTONE-2SAT. 2012 ACM Subject Classification Theory of computation → Complexity classes; Theory of compu- tation → Problems, reductions and completeness Keywords and phrases complexity classes, polynomial time, reduction, logarithmic space 1 Introduction 1.1 Polynomial time verifiers Let Σ be a finite alphabet with at least two elements, and let Σ∗ be the set of finite strings over Σ [2]. A Turing machine M has an associated input alphabet Σ [2]. For each string w in Σ∗ there is a computation associated with M on input w [2]. We say that M accepts w if this computation terminates in the accepting state, that is M(w) = “yes” [2].
    [Show full text]
  • COMPUTATIONAL COMPLEXITY Contents
    Part III Michaelmas 2012 COMPUTATIONAL COMPLEXITY Lecture notes Ashley Montanaro, DAMTP Cambridge [email protected] Contents 1 Complementary reading and acknowledgements2 2 Motivation 3 3 The Turing machine model4 4 Efficiency and time-bounded computation 13 5 Certificates and the class NP 21 6 Some more NP-complete problems 27 7 The P vs. NP problem and beyond 33 8 Space complexity 39 9 Randomised algorithms 45 10 Counting complexity and the class #P 53 11 Complexity classes: the summary 60 12 Circuit complexity 61 13 Decision trees 70 14 Communication complexity 77 15 Interactive proofs 86 16 Approximation algorithms and probabilistically checkable proofs 94 Health warning: There are likely to be changes and corrections to these notes throughout the course. For updates, see http://www.qi.damtp.cam.ac.uk/node/251/. Most recent changes: corrections to proof of correctness of Miller-Rabin test (Section 9.1) and minor terminology change in description of Subset Sum problem (Section6). Version 1.14 (May 28, 2013). 1 1 Complementary reading and acknowledgements Although this course does not follow a particular textbook closely, the following books and addi- tional resources may be particularly helpful. • Computational Complexity: A Modern Approach, Sanjeev Arora and Boaz Barak. Cambridge University Press. Encyclopaedic and recent textbook which is a useful reference for almost every topic covered in this course (a first edition, so beware typos!). Also contains much more material than we will be able to cover in this course, for those who are interested in learning more. A draft is available online at http://www.cs.princeton.edu/theory/complexity/.
    [Show full text]
  • Counting and Finding Homomorphisms Is Universal For
    Counting and Finding Homomorphisms is Universal for Parameterized Complexity Theory Marc Roth Merton College, University of Oxford, United Kingdom [email protected] Philip Wellnitz Max Planck Institute for Informatics, Saarland Informatics Campus (SIC), Saarbrücken, Germany [email protected] Abstract Counting homomorphisms from a graph H into another graph G is a fundamental problem of (parameterized) counting complexity theory. In this work, we study the case where both graphs H and G stem from given classes of graphs: H ∈ H and G ∈ G. By this, we combine the structurally restricted version of this problem (where the class G = > is the set of all graphs), with the language- restricted version (where the class H = > is the set of all graphs). The structurally restricted version allows an exhaustive complexity classification for classes H: Either we can count all homomorphisms in polynomial time (if the treewidth of H is bounded), or the problem becomes #W[1]-hard [Dalmau, Jonsson, Th.Comp.Sci’04]. In contrast, in this work, we show that the combined view most likely does not admit such a complexity dichotomy. Our main result is a construction based on Kneser graphs that associates every problem P in #W[1] with two classes of graphs H and G such that the problem P is equivalent to the problem #Hom(H → G) of counting homomorphisms from a graph in H to a graph in G. In view of Ladner’s seminal work on the existence of NP-intermediate problems [J.ACM’75] and its adaptations to the parameterized setting, a classification of the class #W[1] in fixed-parameter tractable and #W[1]- complete cases is unlikely.
    [Show full text]
  • Some Parallel Algorithms for Integer Factorisation
    Some Parallel Algorithms for Integer Factorisation Richard P. Brent Oxford University Computing Laboratory, Wolfson Building, Parks Road, Oxford OX1 3QD, UK [email protected] http://www.comlab.ox.ac.uk/ oucl/people/richard.brent.html Abstract. Algorithms for finding the prime factors of large composite numbers are of practical importance because of the widespread use of public key cryptosystems whose security depends on the presumed diffi- culty of the factorisation problem. In recent years the limits of the best integer factorisation algorithms have been extended greatly, due in part to Moore’s law and in part to algorithmic improvements. It is now rou- tine to factor 100-decimal digit numbers, and feasible to factor numbers of 155 decimal digits (512 bits). We describe several integer factorisa- tion algorithms, consider their suitability for implementation on parallel machines, and give examples of their current capabilities. 1 Introduction Any positive integer N has a unique prime power decomposition α α α 1 2 ··· k N = p1 p2 pk (p1 <p2 < ··· <pk primes, αj > 0). This result is easy to prove, but the standard proof gives no hint of an efficient algorithm for computing the prime power decomposition. In order to compute it, we need – 1. An algorithm to test if an integer N is prime. 2. An algorithm to find a nontrivial factor f of a composite integer N. Given these components there is a simple recursive algorithm to compute the prime power decomposition. Fortunately or unfortunately, depending on one’s point of view, problem 2 is generally believed to be hard.
    [Show full text]
  • Some Integer Factorization Algorithms Using Elliptic Curves
    Some Integer Factorization Algorithms using Elliptic Curves Richard P. Brent Computer Sciences Laboratory Australian National University 24 September 1985 Revised 10 Dec. 1985 Republished 7 Nov. 1998 Abstract Lenstra’s integer factorization algorithm is asymptotically one of the fastest known al- gorithms, and is also ideally suited for parallel computation. We suggest a way in which the algorithm can be speeded up by the addition of a second phase. Under some plausible assumptions, the speedup is of order log(p), where p is the factor which is found. In practice the speedup is significant. We mention some refinements which give greater speedup, an alternative way of implementing a second phase, and the connection with Pollard’s “p − 1” factorization algorithm. 1 Introduction Recently H.W. Lenstra Jr. proposed a new integer factorization algorithm, which we shall call “Lenstra’s algorithm” or the “one-phase elliptic curve algorithm” [17]. Under some plausible assumptions Lenstra’s algorithm finds a prime factor p of a large composite integer N in expected time q T1(p) = exp (2 + o(1)) ln p ln ln p , (1.1) where “o(1)” means a term which tends to zero as p → ∞. Previously algorithms with run- ning time exp p(1 + o(1)) ln N ln ln N were known [27]. However, since p2 ≤ N, Lenstra’s algorithm is comparable in the worst case and often much better, since it often happens that 2 ln p ln N. The Brent-Pollard “rho” algorithm [5] is similar to Lenstra’s algorithm in that its expected 1/2 1/2 running time depends on p, in fact it is of order p .
    [Show full text]