Exact Exploration and Hanging Algorithms

Recent analysis of sequential algorithms resulted in their axiomatization and in a representation theorem stating that, for any sequential algorithm, there is an abstract state machine (ASM) with the same states, initial states and state transitions. That analysis, however, abstracted from details of intra-step computation, and the ASM, produced in the proof of the representation theorem, may and often does explore parts of the state unexplored by the algorithm. We refine the analysis, the axiomatization and the representation theorem. Emulating a step of the given algorithm, the ASM, produced in the proof of the new representation theorem, explores exactly the part of the state explored by the algorithm. That frugality pays off when state exploration is costly. The algorithm may be a high-level specification, and a simple function call on the abstraction level of the algorithm may hide expensive interaction with the environment. Furthermore, the original analysis presumed that state functions are total. Now we allow state functions, including equality, to be partial so that a function call may cause the algorithm as well as the ASM to hang. Since the emulating ASM does not make any superfluous function calls, it hangs only if the algorithm does.

[1]  B. Engquist,et al.  Mathematics Unlimited: 2001 and Beyond , 2001 .

[2]  Hanif D. Sherali,et al.  The Concept of an Algorithm , 2005 .

[3]  Norbert Th. Müller,et al.  The iRRAM: Exact Arithmetic in C++ , 2000, CCA.

[4]  L. Blum A Theory of Computation and Complexity over the real numbers , 1991 .

[5]  David R. Lester,et al.  A Survey of Exact Arithmetic Implementations , 2000, CCA.

[6]  Gheorghe Paun,et al.  Current Trends in Theoretical Computer Science: The Challenge of the New Century , 2004 .

[7]  Klaus Weihrauch,et al.  Computable Analysis: An Introduction , 2014, Texts in Theoretical Computer Science. An EATCS Series.

[8]  B. Kushner,et al.  Lectures on Constructive Mathematical Analysis , 1984 .

[9]  Peter Hertling,et al.  Computability & Complexity in Analysis , 2001 .

[10]  Martin Hofmann,et al.  Finite Dimensional Vector Spaces Are Complete for Traced Symmetric Monoidal Categories , 2008, Pillars of Computer Science.

[11]  Jan Wolenski,et al.  Church's Thesis After 70 Years , 2007 .

[12]  S. Smale,et al.  On a theory of computation and complexity over the real numbers; np-completeness , 1989 .

[13]  Robin Milner,et al.  On Observing Nondeterminism and Concurrency , 1980, ICALP.

[14]  Angelo Gargantini,et al.  Abstract State Machines 2003 , 2003, Lecture Notes in Computer Science.

[15]  Egon Börger,et al.  Abstract State Machines , 2003 .

[16]  Thomas J. Naughton,et al.  Continuous-space model of computation is Turing universal , 2000, SPIE Optics + Photonics.

[17]  Gianluigi Oliveri,et al.  Truth in Mathematics , 1998 .

[18]  Egon Börger,et al.  Abstract State Machines , 2003 .

[19]  Egon Börger Specification and validation methods , 1995 .

[20]  Frank Wolter,et al.  Monodic fragments of first-order temporal logics: 2000-2001 A.D , 2001, LPAR.

[21]  Margarita V. Korovina,et al.  Gandy's Theorem for Abstract Structures without the Equality Test , 2003, LPAR.

[22]  José Meseguer,et al.  A Total Approach to Partial Algebraic Specification , 2002, ICALP.

[23]  Andreas Blass,et al.  Algorithms vs. Machines , 2002, Bull. EATCS.

[24]  E. Bishop Foundations of Constructive Analysis , 2012 .

[25]  H. E. Rose LECTURES ON CONSTRUCTIVE MATHEMATICAL ANALYSIS (Translations of Mathematical Monographs, 60) , 1985 .

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

[27]  Alexei Semenov,et al.  Algorithms: Main Ideas and Applications , 1993 .

[28]  Bolyai János Matematikai Társulat,et al.  Theory of algorithms , 1985 .

[29]  Moshe Y. Vardi What is an algorithm? , 2012, Commun. ACM.

[30]  Christine Choppy,et al.  Abstract Data Types with Exception Handling: An Initial Approach Based on a Distinction Between Exceptions and Errors , 1986, Theor. Comput. Sci..

[31]  R. Stärk,et al.  Abstract State Machines , 2003, Springer Berlin Heidelberg.

[32]  Glynn Winskel,et al.  Event structures : Lecture notes for the Advanced Course on Petri Nets , 1986 .

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

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

[35]  Yiannis N. Moschovakis,et al.  On founding the theory of algorithms , 2011 .

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