On the parallel computation thesis

We develop a generic programming language for parallel algorithms, one that works for all data structures and control structures. We show that any parallel algorithm satisfying intuitively-appealing postulates can be modeled by a collection of cells, each of which is an abstract state machine, augmented with the ability to spawn new cells. The cells all run the same algorithm and communicate via a shared global memory. Using a formal definition of what makes such an algorithm effective, we prove the validity of the Parallel Computation Thesis, according to which all reasonable parallel models of computation have roughly equivalent running times. La filosofia e scritta in questo grandissimo libro che continuamente ci sta aperto innanzi a gli occhi (io dico l’universo) ma non si puo intender se prima non s’ impara a intender la lingua e conoscere i caratteri ne’ quali e scritto. Egli e scritto in lingua matematica e i caratteri sono triangoli, cerchi, ed altre figure geometriche senza i quali mezi e impossibile a intenderne umanamente parola; senza questi e un aggirarsi vanamente per un oscuro laberinto. —Galileo Galilei (Il Saggiatore) This work was carried out in partial fulfillment of the requirements for the Ph.D. degree [22] of the second author. The first author’s research benefitted from a fellowship at the Paris Institute for Advanced Studies (France), with the financial support of the French state, managed by the French National Research Agency’s “Investissements d’avenir” program (ANR11-LABX-0027-01 Labex RFIEA+). A portion of this article was presented in a talk entitled, “Generic Parallel Algorithms,” at Computability in Europe (CiE) 2014 [16]. “Philosophy is written in this grand book, the universe, which stands continually open

[1]  H. James Hoover,et al.  Bounding Fan-out in Logical Networks , 1984, JACM.

[2]  Peter van Emde Boas,et al.  Machine Models and Simulation , 1990, Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity.

[3]  David Harel,et al.  Computable Queries for Relational Data Bases , 1980, J. Comput. Syst. Sci..

[4]  Nachum Dershowitz,et al.  Axiomatizing Analog Algorithms , 2016, CiE.

[5]  Gilles Dowek,et al.  Around the Physical Church-Turing Thesis: Cellular Automata, Formal Languages, and the Principles of Quantum Theory , 2012, LATA.

[6]  Steven Fortune,et al.  Parallelism in random access machines , 1978, STOC.

[7]  Andreas Blass,et al.  Abstract state machines capture parallel algorithms: Correction and extension , 2006, TOCL.

[8]  Uzi Vishkin,et al.  Implementation of Simultaneous Memory Address Access in Models That Forbid It , 1983, J. Algorithms.

[9]  Nachum Dershowitz,et al.  Honest Computability and Complexity , 2016, Martin Davis on Computability, Computational Logic, and Mathematical Foundations.

[10]  Richard M. Karp,et al.  Parallel Algorithms for Shared-Memory Machines , 1991, Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity.

[11]  Nachum Dershowitz,et al.  A Natural Axiomatization of Computability and Proof of Church's Thesis , 2008, Bulletin of Symbolic Logic.

[12]  Shang-Hua Teng The construction of Huffman-equivalent prefix code in NC , 1987, SIGA.

[13]  Nachum Dershowitz Res Publica: The Universal Model of Computation (Invited Talk) , 2013, CSL.

[14]  P. Boas Machine models and simulations , 1991 .

[15]  Yuri Gurevich,et al.  Evolving algebras 1993: Lipari guide , 1995, Specification and validation methods.

[16]  Yuri Gurevich,et al.  Sequential abstract-state machines capture sequential algorithms , 2000, TOCL.

[17]  Allan Borodin,et al.  On Relating Time and Space to Size and Depth , 1977, SIAM J. Comput..

[18]  I Parberry Parallel speedup of sequential machines: a defense of parallel computation thesis , 1986, SIGA.

[19]  Nachum Dershowitz,et al.  Three Paths to Effectiveness , 2010, Fields of Logic and Computation.

[20]  Nachum Dershowitz The Generic Model of Computation , 2011, DCM.

[21]  Nachum Dershowitz,et al.  Generic Parallel Algorithms , 2014, CiE.

[22]  Dan E. Willard,et al.  On the application of sheared retrieval to orthogonal range queries , 1986, SCG '86.

[23]  Andreas Blass,et al.  Interactive Small-Step Algorithms II: Abstract State Machines and the Characterization Theorem , 2007, Log. Methods Comput. Sci..

[24]  Wolfgang Reisig The computable kernel of Abstract State Machines , 2008, Theor. Comput. Sci..

[25]  N. Dershowitz The Universal Model of Computation , 2013 .

[26]  Yuri Gurevich,et al.  Gurevich Abstract State Machines and Schoenhage Storage Modification Machines , 1997, J. Univers. Comput. Sci..

[27]  N. Dershowitz,et al.  The Invariance Thesis , 2014 .

[28]  Stephen A. Cook,et al.  Time-bounded random access machines , 1972, J. Comput. Syst. Sci..

[29]  Andreas Blass,et al.  Ordinary interactive small-step algorithms, I , 2006, TOCL.

[30]  Andreas Blass,et al.  Interactive Small-Step Algorithms I: Axiomatization , 2007, Log. Methods Comput. Sci..

[31]  Robin Gandy,et al.  Church's Thesis and Principles for Mechanisms , 1980 .

[32]  Nachum Dershowitz,et al.  A Formalization and Proof of the Extended Church-Turing Thesis -Extended Abstract- , 2011, DCM.

[33]  Nachum Dershowitz,et al.  Towards an Axiomatization of Simple Analog Algorithms , 2012, TAMC.

[34]  Arnold Schönhage,et al.  Schnelle Multiplikation großer Zahlen , 1971, Computing.

[35]  Andreas Blass,et al.  Abstract state machines capture parallel algorithms , 2003, TOCL.

[36]  Andreas Blass,et al.  Ordinary interactive small-step algorithms, III , 2007, TOCL.

[37]  Wolfgang Reisig On Gurevich's theorem on sequential algorithms , 2003, Acta Informatica.

[38]  Nachum Dershowitz,et al.  The Church-Turing Thesis over Arbitrary Domains , 2008, Pillars of Computer Science.