Abstract
It is commonly believed that there is no equivalent of the Church–Turing thesis for computation over the reals. In particular, computational models on this domain do not exhibit the convergence of formalisms that supports this thesis in the case of integer computation. In the light of recent philosophical developments on the different meanings of the Church–Turing thesis, and recent technical results on analog computation, I will show that this current belief confounds two distinct issues, namely the extension of the notion of effective computation to the reals on the one hand, and the simulation of analog computers by Turing machines on the other hand. I will argue that it is possible in both cases to defend an equivalent of the Church–Turing thesis over the reals. Along the way, we will learn some methodological caveats on the comparison of different computational models, and how to make it meaningful.
Similar content being viewed by others
Notes
That condition can be discussed in interactive models of computation, where the computation is no longer modelized by functions (see, for instance Wegner and Eberbach 2004; Goldin and Wegner 2008; Van Leeuwen and Wiedermann 2000). Since the issues in the scope of this paper are not truly affected by those, I will not discuss them.
This property is meant for the computation of integer functions. Turing (1936), who considered in the computation of real numbers and functions, had to analyse non-terminating computation of infinite sequences. I will come back to this point in Sect. 3.3, 13–14. For more details on Turing’s conceptions, see Gherardi (2011).
Of course, I am rephrasing Turing in a modern terminology: he was discussing the mental states of a human computer (see Turing 1936, §9).
The terminological choice of the adjective ’algorithmic’ will be explained below, see Sect. 2.3.
This is just a preliminary sketch of the discussion to come in Sect. 4.
It is often said that there is no known counterexample to the Church–Turing thesis. The proposition is true, but slightly inaccurate, inasmuch as it leads to confound two distinct ideas: the naturality in extension and the absence of a sophisticated counterexample.
In his 1946 Remarks before the Princeton Bicentennial Conference on Problems in Mathematics, Gödel stressed the importance of that argument very explicitly (see Davis 1965, 84, emphasis ours):
Tarski has stressed in his lecture (and I think justly) the great importance of the concept of general recursiveness (or Turing’s computability). It seems to me that this importance is largely due to the fact that with this concept one has for the first time succeeded in giving an absolute definition of an interesting epistemological notion, i.e., one not depending on the formalism chosen. [...] By a kind of miracle it is not necessary to distinguish orders, and the diagonal procedure does not lead outside the defined notion.
Gödel would have shown little enthusiasm for Church’s original formulation, but was convinced by Turing’s work precisely because of that modelization argument (for more historical details, see Davis 1982). Church himself underlined this avantage of Turing’s approach in his review (Church 1937, emphasis ours):
As a matter of fact, there is involved here the equivalence of three different notions: computability by a Turing machine, general recursiveness in the sense of Herbrand–Gödel–Kleene, and \(\lambda\)-definability in the sense of Kleene and the present reviewer. Of these, the first has the advantage of making the identification with effectiveness in the ordinary (not explicitly defined) sense evident immediately-i.e. without the necessity of proving preliminary theorems.
It is difficult to choose between those two formulations, since each of them has its own drawbacks. The first one is a little bit too general: an effective procedure can be said to be mathematical, but it is far from being a complete characterization of it. The second one is ambiguous. In the logic and computer science literature, “algorithm” is sometimes used as a perfect synonym of “effective procedure”. But it is also used to denote “any possible computational procedure”, as is the case when one discusses “quantum algorithms” or “analog algorithms”. Consequently, the word “algorithm” crosses the boundary that we are trying to establish between effective procedures as a specific class of computational procedure, and the more general idea of any possible computational procedure whatsoever. Alas, the most simple choice of “effective Church–Turing thesis” has already been taken for another use in complexity theory (see, for instance Button 2009; Bournez et al. 2013b). In this paper, I will use the adjective “algorithmic” even if I am fully aware of its shortcomings.
Piccinini’s views are restricted to functions of denumerable domain (Piccinini 2011, 7). But there is nothing incompatible with his analysis in an extension to non-denumerable domains.
The representation of the reals by their decimal expansion is actually problematic for recursive analysis: this example is thus purely pedagogical (see Weihrauch 2000, for more details on data representation in recursive analysis).
Such a description can be found in Ko (1991, 1):
Recursive analysis studies effective computability in classical analysis; that is, it studies which mathematical notions and proofs are computable and which are not computable.
I will have to ask the indulgence of the expert reader for the definition I give here, which is inspired by an old definition in Pour-El and Ian Richards (1989). It is outdated, and used only for pedagogical purposes. My intent is just to give an intuition of the concept of computable real function understandable for a reader coming from a philosophical background, and formulated only with notions of recursive theory and basic analysis. I will discuss formulations referring to a machine model in Sect. 3.3. For those reasons, I do not want to get into technicalities such as representations, extensions to many-variables functions, definition over all \({\mathbb {R}}\) and uniform continuity of computable functions over a compact domain.
A rational is a type 0 object, a rational function is a type 1 object, a functional that takes rational functions as inputs and yields rational functions as outputs is a type 2 object. A RA-computable real number r can be seen as a recursive function taking a natural integer n as input and yielding a rational approximation \(r_n\) of r. A RA-computable real function \(f :\subseteq {\mathbb {R}}^{n} \longrightarrow {\mathbb {R}}\) is a functional associating such functions, and so a type 2 object.
For more details, see Weihrauch (2000, 14–15).
This set of correction conditions are not explicit in Weihrauch’s book, but seem to be implicit in his presentation of concepts, and the redaction of his demonstrations.
Ker-i Ko defends the same view in Ko (1991, 3):
Since x is a type-1 function that does not have a finite representation, machine M cannot directly “read‘” its input x. Instead, we must provide a more complicated mechanism to allow machine M to access the information about the real number x. In our computational model, we use the oracle machine to formalize the communication between the machine M and the input real number x.
A rigorous presentation of Ker-i Ko’s definition would require an introduction to Cauchy functions formalism, which Ker-i Ko uses for reasons related to complexity in recursive analysis. Since the introduction of this formalism would be somewhat lengthy and unnecessary for our current purposes, an informal presentation will do.
In his own idiosyncratic terminology, J. Earman designates by “Grzegorczyk functions” what what we have called “RA-computable functions”.
It should be underlined that our formulation of the Church–Turing thesis over the reals is defined up to any substitution of an extensionally equivalent model, just as is the case with the thesis for integer computation. Instead of “computable by Type 2 Turing machine”, one could just as well read “computable according to recursive analysis.”
For instance, Moore makes that point in (1996, 1, emphasis ours):
to discuss the physical world (or at least its classical limit) in which the states of things are described by real numbers and processes take place in continuous time, we need a different theory: a theory of analog computation, where states and processes are inherently continuous, and which treats real numbers not as sequences of digits but as quantities in themselves.
The same point is made by Blum et al. (2000, 3):
(...) we view a real number not as its decimal (or binary) expansion, but rather a mathematical entity as is generally the practice in numerical analysis.
In the logic and computer science community, the expressions “analog model” and “model of computation over the reals” are often used as perfect synonymous. In the context of our present discussion, this terminological convention would not have been profitable, because it blurs the conceptual distinction that we are trying to highlight between effective computation over the reals and continuous computation over the reals. Therefore, I have opted for a more stringent use of the expression “analog model”, which can also be found in the literature.
A similar position on the B.S.S. model is taken by Ko (1991, 5):
(...) it is apparent that no physical implementation of this model is possible.
The following passage is a sum up of Moore (1996, sections 4–5, 4–5, pagination). The reader willing to know more details should read the illuminating original paper.
For the construction of such a non-RA computable \({\mathbb {R}}\)-recursive number, see Moore (1996, section 11, 16–17).
Moore wonders in (1996, 8) whether the last two problems are equivalent. Our analysis shows that it is not the case: even if the second problem was solved, the first one would still remain relevant.
For instance, in Costa and Graça (2003), Graça and Costa have studied the class of \({\mathbb {R}}\)-recursive functions generable by a G.P.A.C.
The reader might be reminded that the oldest computing machine known to historians, the Antikythera mechanism (−87 B.C.), is an analog machine.
The integration unit takes u and v, functions of time, as inputs, and yields as an output w with \(w(t) = u(t)v'(t)\) and \(w(t_0) = \alpha\).
A function f(x) is differentially algebraic iff its derivatives satisfy a polynomial equation with rational coefficients \(P(x, f(x), f'(x),\ldots , f^{k}(x))=0.\)
I will use here the distinction made by Bournez et al. (2006) between ‘function generable by a G.P.A.C.”, which denotes the first conception of computability according to this model, and “function computable by a G.P.A.C.” or “G.P.A.C.-computable function”, which denotes approximate computation.
A similar point was raised by Graça and Costa in their study of the G.P.A.C. The original model does not assume any constraint on the continuous functions of real time that can be taken as inputs by the analog units. However, the definition of certain functions demands the continuous differentiability of the functions taken as inputs (Costa and Graça 2003, 8, emphasis ours):
(...) from now on, we will always assume that the inputs are continuously differentiable functions of the time. And if the outputs of all units are defined for all \(t \in I\); where I is an interval, then we will also assume that they are continuous in that interval. This is needed for the following results and may be seen as physical constraints to which all units are subjected.
References
Aaronson, S. (2005, March). NP-complete problems and physical reality. SIGACT news. arXiv:quant-ph/0502072.
Asarin, E., & Bouajjani, A. (2001). Perturbed turing machines and hybrid systems. In IEEE (Ed.), Logic in computer science, 2001. Proceedings of 16th annual IEEE symposium, pp. 269–278.
Blum, L., Shub, M., & Smale, S. (2000). On a theory of computation and complexity over the real numbers: NP-completeness, recursive functions and universal machines. The Collected Papers of Stephen Smale, 3, 1293.
Bournez, O., Campagnolo, M. L., Graça, D. S., & Hainry, E. (2006). The general purpose analog computer and computable analysis are two equivalent paradigms of analog computation. In Theory and applications of models of computation, pp. 631–643. Springer.
Bournez, O., Graça, D. S., & Hainry, E. (2013a). Computation with perturbed dynamical systems. Journal of Computer and System Sciences, 79, 714–724.
Bournez, O., Graça, D. S., & Pouly, A. (2013b, May). Turing machines can be efficiently simulated by the general purpose analog computer. In Proceedings TAMC 2013, pp. 169–180, Hong Kong, China. Springer.
Brattka, V., Hertling, P., & Weihrauch, K. (2008). A tutorial on computable analysis. In New computational paradigms, pp. 425–491. Springer.
Button, T. (2009). SAD computers and two versions of the Church–Turing thesis. The British Journal for the Philosophy of Science, 60(4), 765–792.
Church, A. (1936). An unsolvable problem of elementary number theory. American Journal of Mathematics, 58(2), 345–363.
Church, A. (1937). Review: AM Turing, on computable numbers, with an application to the Entscheidungsproblem. Journal of Symbolic Logic, 2(1), 42–43.
Copeland, J. (2002a). Accelerating turing machines. Minds and Machines, 12(2), 281–300.
Copeland, J. (2002b). Hypercomputation. Minds and Machines, 12(4), 461–502.
Costa, J. F., & Graça, D. (2003). Analog computers and recursive functions over the reals. Journal of Complexity, 19(5), 644–664.
Cotogno, P. (2003). Hypercomputation and the physical Church–Turing thesis. The British Journal for the Philosophy of Science, 54(2), 181–223.
Davis, M. (Ed.). (1965). The undecidable. New York: Raven Press Books.
Davis, M. (1982). Why Gödel didn’t have Church’s thesis. Information and Control, 54(1/2), 3–24.
Deutsch, D. (1985). Quantum theory, the Church–Turing principle and the universal quantum computer. Proceedings of the Royal Society of London A: Mathematical and Physical Sciences, 400(1818), 97–117.
Earman, J. (1986). A primer on determinism (Vol. 32). Berlin: Springer.
Fortnow, L. (2012). The enduring legacy of the turing machine. The Computer Journal, 55(7), 830–831.
Gandy, R. (1980). Church’s thesis and principles for mechanisms. Studies in Logic and the Foundations of Mathematics, 101, 123–148.
Geroch, R., & Hartle, J. B. (1986). Computability and physical theories. Foundations of Physics, 16(6), 533–550.
Gherardi, G. (2011). Alan turing and the foundations of computable analysis. Bulletin of Symbolic Logic, 17(3), 394–430.
Goldin, D., & Wegner, P. (2008). The interactive nature of computing: Refuting the strong Church–Turing thesis. Minds and Machines, 18(1), 17–38.
Graça, D. (2004). Some recent developments on Shannon’s general purpose analog computer. Mathematical Logic Quaterly, 50(4–5), 473–485.
Knuth, D. E. (1997). Art of computer programming, volume 1: Fundamental algorithms (3rd ed.). Boston: Addison-Wesley Professional.
Ko, K. I. (1991). Complexity theory of real functions. Boston: Birkhauser Boston Inc.
Marguin, J. (1994). Histoire des instruments et machines à calculer : trois siècles de mécanique pensante, 1642–1942. Hermann.
Moore, C. (1996). Recursion theory on the reals and continuous-time computation. Theoretical Computer Science, 162(1), 23–44.
Bournez, O., & Campagnolo, M. (2008). New computational paradigms, chapter A survey on continuous time computation, pp. 383–423. Springer.
Pégny, M. (2013). Sur les limites empiriques du calcul. Calculabilité, complexité et physique. Philosophie, Université de Paris 1.
Piccinini, G. (2011). The physical Church–Turing thesis: Modest or bold? The British Journal for the Philosophy of Science, 62(4), 733–769.
Pitowsky, I. (1990). The physical Church thesis and physical computational complexity. Iyyun, 39, 81–99.
Post, E. L. (1936). Finite combinatory processes-formulation 1. The Journal of Symbolic Logic, 1(3), 103–105.
Pour-El, M. B., & Ian Richards, J. (1989). Computability in analysis and physics. Berlin: Springer.
Shagrir, O., & Pitowsky, I. (2003). Physical hypercomputation and the Church–Turing thesis. Minds and Machines, 13(1), 87–101.
Shannon, C. E. (1941). A mathematical theory of the differential analyser. Journal of Mathematics and Physics, 20, 337–354.
Shor, P. W. (1997). Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM Journal of Computing, 26, 1484–1509.
Stannett, M. (2004). Hypercomputational models. In Alan Turing: Life and legacy of a great thinker, pp. 135–157. Springer.
Turing, A. (1936). On computable numbers, with an application to the Entscheidungsproblem. Proceedings of the London Mathematical Society, 42, 230–265.
Van Leeuwen, J., & Wiedermann, J. (2000). Breaking the Turing barrier: The case of the Internet. Technical report, Institute of Computer Science, Academy of Sciences of the Czech Republic, Prague.
Wegner, P., & Eberbach, E. (2004). New models of computation. The Computer Journal, 47(1), 4–9.
Weihrauch, K. (2000). Computable analysis: An introduction. New York: Springer.
Acknowledgements
I wish to thank first and foremost Olivier Bournez, for many fruitful discussions. My former advisors J.B. Joinet and A. Grinbaum were also instrumental in the making of that paper.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Pégny, M. How to Make a Meaningful Comparison of Models: The Church–Turing Thesis Over the Reals. Minds & Machines 26, 359–388 (2016). https://doi.org/10.1007/s11023-016-9407-0
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11023-016-9407-0