Church Alonzo Church, 1936, An unsolvable problem of elementary number theory. Introduced recursive functions and - definable functions and proved these classes equivalent. “We … define the notion … of an effectively calculable function of positive integers by identifying it with the notion of a recursive function of positive integers.”
Turing Alan Turing, 1936, On computable numbers, with an application to the Entscheidungs- problem. Introduced the idea of a Turing machine computable number “The [Turing machine] computable numbers include all numbers which could naturally be regarded as computable.”
Turing Machines A mechanism for performing calculations by reading and writing symbols on an unbounded linear tape divided into discrete squares. Finite set of states Q, finite alphabet A. Instructions of the form: When in state q reading symbol a, change to state q*, write symbol a*, and read next symbol to right or left. Computation completed when the halting state is reached.
Origin of the Turing Machine Turing arrived at his conception through an analysis of the essential features of computation as performed by humans. –TM states correspond to ‘states of mind’ –Finite alphabet of discriminable symbols –Linear tape is idealisation of working surface –Displacement corresponds to shift of attention from one part of the surface to another
Limitations of Turing Machines The Halting Problem: Given a TM T and input i, to determine whether T, when run with i, will eventually halt. Turing showed that there is no TM which can solve this problem … … and that the Halting Problem is equivalent to the Entscheidungsproblem for first-order logic.
Computable numbers and functions Turing’s computable numbers are “real numbers whose expressions as a decimal are calculable by finite means”. This is not a serious limitation, since “it is almost equally easy to define and investigate computable functions …” Church discussed effectively calculable functions of the positive integers, and Turing proved these are equivalent to the Turing machine computable functions.
A formulation of the Church- Turing thesis A function over the natural numbers is computable (i.e., effectively calculable) if and only if there is a Turing machine which computes it. The restriction to natural numbers is less serious than it sounds: any determinate input/output relation defined on finite strings over a finite alphabet is equivalent to a function on the natural numbers.
Interpreting the C-T thesis C-T states: Computable = TM-computable What exactly does “computable” mean? –Computable by a human following a fixed finitely-specifiable routine? –Computable using any physically possible computing device? –Computable using any logically possible computing device?
The Historical Context In 1936, there were no electronic computers. The word ‘computer’ referred to a human who performed calculations following fixed (but potentially highly complex) routines. Robin Gandy’s interpretation (1988): Turing’s Theorem: Any function which is effectively calculable by an abstract human being following a fixed routine is effectively calculable by a Turing machine … and conversely.
An abstract human being? C-T can only refer to humans in an idealised way: –The human computer never makes a mistake, either in reading or writing symbols or in following the prescribed instructions. –The human computer has unlimited time and space available (but only ever uses a finite quantity of both).
Three versions of the thesis The TM-computable functions are precisely –the functions computable by an idealised human computer [Human C-T thesis] –the functions computable using any physically possible means [Physical C-T thesis] –the functions computable using any logically possible means [The Logical C-T thesis]
More idealisation An adding machine with 10-digit registers, used in the normal way, cannot be used to compute 888888888888 + 999999999999. Thus to assert that this machine computes the addition function on the natural numbers involves a further element of idealisation: –That the machine embodies (as closely as possible given certain limitations of size, convenience, etc) an idealised abstract machine which does compute precisely the addition function.
What idealisations are acceptable? An acceptable idealisation: No limit is placed on how much tape is used. An unacceptable idealisation: A Turing machine computation which uses the whole of an infinite tape (e.g., the input is required to be the complete decimal expansion of . The difference here is between potential infinity and actual infinity.
Two Kinds of Infinity Euclid showed that, for any positive integer n, there are more than n primes. This is often expressed as ‘there are infinitely many primes’.
The Quantifier-Shift Fallacy The shift from ‘For every n there exists P’ to ‘There exists P such that for every n’ is an example of the Quantifier-shift Fallacy (Geach, 1972). It is not logically warranted. From the fact that there is no limit to the number of primes that can potentially be discovered, it does not logically follow that there is an actual infinite totally of primes.
A suggestion When considering computation and computability, –Idealisations which involve the introduction of a potentially infinite (i.e., unbounded) quantity are generally acceptable. –Idealisations which involve the introduction of an actually infinite quantity are prima facie unacceptable.
The Human C-T Thesis The supposition that every TM-computable function can be computed by an idealised human computer appears to assume only acceptable forms of idealisation. Thus there are good reasons to suppose that the Human C-T thesis is true, as has been asserted by many commentators.
The Physical C-T Thesis If the Human thesis is true, then for the Physical thesis to be true as well we require that an idealised human computer can compute any function computable by any physically possible means. If this is false, then there are physically possible computations that are not humanly possible: this is called hypercomputation (Copeland and Proudfoot, 1999)
Hypercomputation Questioning the Physical Church- Turing thesis: Accelerating Turing Machines and Infinite Computation
An Accelerating Turing Machine (ATM) This is just like an ordinary Turing machine, except that each computation step takes half the time of the preceding step. If the first step takes half a second, then infinitely many steps can be completed in one second. This would enable us to compute non- recursive functions (Copeland, 2002).
Goldbach’s Conjecture Goldbach’s Conjecture (GC) states that every even number greater than 2 can be expressed as the sum of two primes. As of now, this has been neither proved nor disproved. It is straightforward to check whether any particular even number is the sum of two primes.
A Goldbach machine G Start with a blank tape. Initially write ‘T’ on square 0. Beginning with 4, take each even number in turn and check whether it can be expressed as the sum of two primes. If it is, proceed to the next even number, but if not, halt and replace the symbol on square 0 by ‘F’.
Using G to resolve GC The TM G halts if and only if GC is false. If GC is false, then we can use G to discover this fact. If GC is true, we cannot discover this using G in the ordinary way. But if we run G as an ATM then after one second the symbol on square 0 will be ‘T’ if GC is true, and ‘F’ if GC is false.
The Power of ATMs ATMs could be used to solve any problem of the form nP(n), where P is a TM- computable property of natural numbers. The Halting Problem is of this kind, since for any m, i, the predicate H(m,i,n), meaning “TM m, when run with input i, has halted after n steps”, is a TM-computable function of n.
Are ATMs acceptable? Machine FA n accelerates for the first n steps but thereafter runs at constant speed. If the FA n are considered acceptable, then For each positive integer n, we can construct a TM which can perform n steps in under a second. This does not warrant the inference to We can construct a TM which, for each positive integer n, can perform n steps in under a second which is what is required for an ATM.
Physical limits to acceleration In any case, there are physical obstacles to constructing ATMs. No operation can take less than 10 3 seconds (the Planck time), regarded as the smallest interval over which physical change can occur. But almost all of the computation steps of an ATM must take less time than this!
Infinite Computations An infinite computation has the following properties –An infinite sequence of computations is initiated at a certain time t –A result which may depend on all the computations in this sequence is made available at some later time t+d (where d is finite) An ATM would be one way of performing infinite computations. Is it the only way?
Relativistic Computations A number of authors have investigated the possibility of realising infinite computations in some form of space-time sanctioned by General Relativity. –Pitowsky, 1990 –Hogarth, 1992, 1994 –Earman and Norton, 1993 –Shagrir and Pitowky, 2003
Malament-Hogarth Spacetimes A Malament-Hogarth point in a relativistic space-time is a point p whose past light- cone includes the whole of some future- directed half-infinite timeline l. Such points are compatible with General Relativity, but they can only occur in certain special models of the theory – called Malament-Hogarth Spacetimes.
Anti-de Sitter Spacetime Point p is a Malament-Hogarth point since the whole of half- timeline l is contained in the past light-cone of p (the unshaded portion).
Infinite computations in Malament-Hogarth spacetime At s, we send a TM along timeline l, programmed to determine whether P(n) holds for n=0,1,2,3,… Meanwhile we follow timeline L to point p, which is in the future of the entire timeline l. Along l, if ever an n is found for which P(n) holds, the TM sends a signal to p. At p, if a signal is received from the TM then the solution to nP(n) is ‘yes’, otherwise ‘no’.
Is Infinite Computation possible in our Universe? It is not known whether our universe contains Malament-Hogarth points. Or, if it does, whether we can in principle exploit them for the purposes of infinite computation. Or, if we can, whether this would work in practice.
What the experts say Earman and Norton (1993): “It is not clear that any M-H spacetime qualifies as physically possible and physically realistic.” Hogarth (1994): “The physically possible computing limit … is firmly tied to some contingent and as yet unknown facts about the world.”
Yet more idealisation The M-H infinite computation involves another kind of idealisation: that a computer can function correctly for an infinite period of time. This in turn depends on a more basic idealisation: that there are infinite timelines in the universe. Neither of these idealisations is needed for the standard Church-Turing thesis. Nor are they acceptable, since they involve actual infinities.
Could actual infinities become acceptable? Only if it can be demonstrated that actually infinite phenomena exist in our universe. One way in which this could happen would be to show that an M-H based infinite computation can be conducted in practice. But how could we verify that the phenomena thereby revealed really do involve actual infinities as claimed?
Other routes to hypercomputation? A number of different computational paradigms have been suggested as possible sources of hypercomputation. I shall consider –Quantum computation –Neural networks –Analogue computation
Quantum Computation “Standard” QC is based on qubits, systems with two states existing in superposition. Deutsch (1985) showed such QC promises efficiency gains but no extra functionality. Kieu (2001) proposed an alternative model, Quantum Adiabatic Computation, and presented an algorithm for Hilbert’s 10 th Problem (known to to be equivalent to the TM Halting Problem). However, this requires physical implementation of systems with infinitely many energy levels. Is this another unacceptable idealisation?
Neural Networks Networks of simple processors linked by weighted connections. Computational powers depend on the architecture and the connection weights. Siegelmann (1995) showed that NNs with infinite- precision real-number weights can compute non- TM-computable functions. Infinite precision requires actual, not merely potential infinity, and cannot be realised physically. An unacceptable idealisation.
Analogue Computation Whereas digital computation uses physical systems with discrete state-spaces, analogue computation can exploit the (apparent) continuity in many physical processes. Moore (1996) developed a recursion theory on real numbers to provide the theoretical underpinning for continuous-time analogue computation. But again, non-Turing-computation can only be achieved under the physically unrealistic assumption of infinite- precision representations of real numbers.
Would hypercomputation invalidate C-T? The Human C-T remains valid even in the face of hypercomputation, unless the hypercomputation can be realised as an effective procedure carried out by humans. But the Physical C-T would indeed be invalidated – but only so long as the idealisation involved in hypercomputation is regarded as acceptable.
A conservative conclusion We should be very wary of concluding that C-T is invalidated on the strength of existing proposals for hypercomputation. As yet there exists no evidence whatever that any form of hypercomputation is feasible in practice. So the C-T lives to see another day!
A few afterthoughts Is the human brain as a computer? Are there computational processes in nature?
Mind and nature Does C-T imply that the human mind and other natural phenomena are nothing but Turing-equivalent computations? No! There is no reason to think that these are computations of any sort. At best, certain aspects of them can be simulated by means of computation.
Artificial Intelligence C-T is not concerned with the powers of human beings except insofar as they are consciously following effective procedures to compute specified input-output relations. Normal human behaviour does not come under this heading, and therefore there is no reason to suppose that it can be described in the form of computation, Turing-equivalent or otherwise.
Computation in nature? Computation is intentional: it consists of processes initiated by intelligent agents with the purpose of deriving outputs bearing specified relations to some inputs. Intelligent agents can exploit physical processes in nature as means to perform computations, but this does not mean that nature itself ever performs computations.
Biomolecular Computation? Biomolecular processes such as DNA replication can be thought of as processing information in the (relatively impoverished) Shannon-Weaver sense – but not in the sense of being informative. Such processes are things that happen, but computations are actions. But we can exploit these processes as tools to help us perform computations. And this may lead to many exciting developments in the future.