640 likes | 803 Views
Incompleteness. Suppose L is a logic and H(T,x) is a statement in L expressing that Turing machine T halts on input x. Thus H(T,x) is true if and only if T halts on input x. Recall -- L is sound and effective. So: If H(T,x) is provable in L then it is true so T halts on input x.
E N D
Suppose L is a logic and H(T,x) is a statement in L expressing that Turing machine T halts on input x. • Thus H(T,x) is true if and only if T halts on input x. • Recall -- L is sound and effective. So: • If H(T,x) is provable in L then it is true so T halts on input x. • If H(T,x) is provable in L then H(T,x) is false so T does not halt on input x.
There is a Turing machine M such that M halts on input i if and only if H(Ti,i) is provable in L. • M can be constructed from a theorem prover for L • Let j be such that M is Tj. • Claim: Tj loops on input j but H(Tj,j) is not provable in L. (Incompleteness.)
Proof: If Tj halts on input j then by definition of M, H(Tj,j) is provable in L. Thus Tj loops on input j. Contradiction. • Thus Tj loops on input j. By definition of M this implies that H(Tj,j) is not provable in L. • Thus H(Tj,j) is true but not provable in L.
The formula H(Tj,j) asserts its own unprovability • If H(Tj,j) is true then Tj does not halt on input j. • This means that H(Tj,j) is not provable in L. • So if H(Tj,j) is true, it is unprovable. • If H(Tj,j) is provable, L is unsound.
Let S be the sentence “This sentence is false.” • This is self-referential like H(Tj,j) • If S is true it is false. • If S is false it is true. • Either way, HL is contradictory unless this is not considered a valid sentence of HL. • But which sentences then does HL allow?
Similar to Russell’s paradox: • Let X be {S : S S} • Then is X X? • If so X X. • If not X X. • Either way set theory is contradictory. • So set theory was modified to disallow this set.
Constructing H(T,x) • Legend: • tape(i,t) Tape symbol i at time t. • state(t) State at time t • scan(t) Symbol scanned at time t • Transition function of T for (state,symbol): • ns(state,symbol) New state • wr(state,symbol) Symbol written • dir(state,symbol) Direction moved, 0,-1,or +1
Let A be the conjunction of these formulae: • (0 < i < |x|) tape(i,0) = xi. • (0 i i |x|) tape(i,0) = blank • state(0)=s (the start state of T) • scan(0)=0 • ti (scan(t) i tape(i,t)=tape(i,t+1)) • t (state(t+1)=ns(state(t),tape(scan(t),t))) • t (scan(t+1)=scan(t)+ dir(state(t),tape(scan(t),t))) • t (tape(scan(t),t+1)= wr(state(t),tape(scan(t),t)))
Assume ns, wr, and dir are defined in A too. • Let Hn(T,x) be A (state(n) F) • F is the set of halting states of T • N is the natural numbers {0,1,2,3,…} • Means that T halts in n steps on input x • Let H(T,x) be n N Hn(T,x) • Means that T halts on input x • H(T,x) is true if T halts on input x • H(T,x) is false if T loops on input x
Note that H(T,x) can be constructed from T • Thus if j is known, H(Tj,j) can be constructed. This formula is true but not provable in L. • j can be obtained from a Turing machine M that on input i tests if H(Ti,i) is provable in L. • H(Ti,i) can be constructed as above • From L a theorem prover for L can be constructed and M can be found • Thus one can easily construct H(Tj,j)
But H(Tj,j) is true but not provable in L • Constructing H(T,x) for a particular T and x • Consider this TM: • pass, 1, pass, 1, R • pass, 0, pass, 1, R • pass, B, del1, B, L • del1, 1, del2, B, L • del2, 1, stop, B, R • Tape: B111011B Start state: pass
Let A be the conjunction of these formulae: • tape(0,0)=B tape(1,0)=1 tape(2,0)=1 tape(3,0)=1 tape(4,0)=0 tape(5,0)=1 tape(6,0)=1 (because x = B111011) • (0 i i 7) tape(i,0) = B • state(0)=pass • scan(0)=0 • ti (scan(t) i tape(i,t)=tape(i,t+1)) • t (state(t+1)=ns(state(t),tape(scan(t),t))) • t (scan(t+1)=scan(t)+ dir(state(t),tape(scan(t),t)))
t (tape(scan(t),t+1)= wr(state(t),tape(scan(t),t))) • ns(pass,1)=pass wr(pass,1)=1 dir(pass,1)=1 • ns(pass,0)=pass wr(pass,0)=1 dir(pass,0)=1 • ns(pass,B)=del1 wr(pass,B)=B dir(pass,B)=-1 • ns(del1, 1)=del2 wr(del1, 1)=B dir(del1, 1)=-1 • ns(del2, 1)=stop wr(del2, 1)=B dir(del2, 1)=1 • Let Hn(T,x) be A (state(n) =stop) • For this T and x, H(T,x) is true and T halts on input x.
In general H(Tj,j) is true but not provable in L • Paradox: How do we know that this formula is true when L does not know it? • What logical system are we in when we think this way? • We seem to have the ability to get outside of any logical system. Thus we must not reason using a fixed logical system. • Lucas argued on this basis that human thought processes cannot be simulated by Turing machines.
Let HL be “human logic” • If we know HL then we can construct a formula X that is true but not provable in HL • But we just proved X in HL, contradiction. • Possible solutions: • We can never know HL • HL is not sound. • HL is not effective. (We excel TM in thought.) • We can never know that HL is sound.
All of these seem strange • Don’t we even know how we think? • Can’t we think logically? • Can we really exceed Turing machines in reasoning power? • Is our thought process really so subtle that we cannot know it is sound?
In fact HL does not need to contain all of human logic. • HL just needs enough logic to be able to show that H(Tj,j) is true but not provable in L. • This “restricted HL” is known to us and very likely free from error. • Either this restricted HL goes beyond TM or cannot be shown (in HL) to be sound for the formula H(Tj,j). • Pick Peano arithmetic as “restricted HL.”
What does “restricted HL” need to derive to obtain the contradiction? • It needs to show that Tj halts on input j if and only if Tj constructs a proof that Tj does not halt on input j. • It needs to show that if there is a proof that Tj does not halt on input j then in fact Tj does not halt on input j. • The first part is straightforward. • The second part is the problem.
Thus no sufficiently powerful logic L can derive the statement “(X is provable in L) implies X.” • In fact this only has to be derivable for X of the form H(T,x) • Any sufficiently powerful finite logic that can do this, is inconsistent (contradictory). • But humans use the fact “If X is provable in L then X” all the time. • Does this mean our thought processes cannot be captured by any logical system?
If L is a logic such that L can derive the statement “(X is provable in L) implies X” then either L is inconsistent (can derive a contradiction) or L cannot be represented by a Turing machine (L is not effective). • We can try to strengthen L. • Let L’ be L with the statement “Tx[(H(T,x) is provable in L) implies H(T,x)] ” added. • In L’ one cannot derive the statement “Tx[(H(T,x) is provable in L’) implies H(T,x)] ” !
We can also add the statement H(Tj,j) to L. • But then for the new L, j will be different and H(Tj,j) will not be derivable for the new j! • For a logic L let G(L) be a statement which permits H(Tj,j) to be derived. G(L) may be the statement H(Tj,j) itself or G(L) may be the statement “Tx[(H(T,x) is provable in L) implies H(T,x)].”
Then in L G(L) one can derive H(Tj,j). But one cannot derive G(L G(L))! • Define Li by L0 = L and Li+1 = Li G(Li). • Let be the limit (union) of all these logics. • In L one still cannot derive G(L )! • Then one can construct L G(L ) et cetera. Related to ordinals. • The process never stops. • A staircase to infinity. • An attempt to reach the inexpressible.
We can advance farther and farther but there is always an infinite distance between us and ultimate understanding. • Can a Turing machine construct the same sequence of logics starting with some sound logic such as Peano arithmetic? • What would it mean if it could? • There is a shortcut to obtain a logic to solve the halting problem, but it has a drawback:
Let L* be L with all true statements of the form H(T,x) added. • Then L* can solve the halting problem. • If L is Peano arithmetic (assuming it is consistent) L* is consistent too. • But L* is not effective. L* does not have a theorem prover. • No finite logic can solve the halting problem. • The question remains: Do humans excel Turing machines?
The process of strengthening Peano arithmetic using Godel’s theorem can be made more formal:
Let PA be Peano arithmetic. • Let HL’ be the logic permitting us to apply Godel’s theorem repeatedly to PA and obtain PA, PA G(PA) and other stronger logics from PA. • Write HL’ L to mean that logic L can be obtained from PA by such strengthening. • Thus HL’ PA. • Also if HL’ L then HL’ L G(L) • Also if HL’ Li for all i and the sequence Li is effectively computable then HL’ iLi
Make HL’ into a logic -- say one can prove formula H(T,x) if for some logic L, HL’ L and H(T,x) can be proved in L. • Suppose HL’ HL’. Then HL’ HL’ G(HL’). Thus G(HL’) is provable in HL’. But this is a contradiction. • Suppose it is not true that HL’ HL’. This seems strange -- if HL’ has a finite axiomatization then we should be able to write it down and reason about it.
Because PA is (very likely) sound, HL’ is also very likely sound. • If HL’ HL’ then HL’ does not have a finite axiom system and we excel Turing machines. • This is a more concrete version of Lucas’ paradox.
The essence of consciousness -- awareness of ourselves. The ability to view our own thought processes as objects “from the outside.” To infer HL’ HL’. • The ability to formalize any logical system we use. • Can a computer with sensory input be self-aware in this sense? • Could it be that a computer with sensory input and the ability to see and think about itself, excels Turing machines?
Note that such sensing devices would be able not only to observe the machine M but also the sensing devices themselves.
Lucas’ view • Goedel's theorem must apply to cybernetical machines, because it is of the essence of being a machine, that it should be a concrete instantiation of a formal system. It follows that given any machine which is consistent and capable of doing simple arithmetic, there is a formula which it is incapable of producing as being true---i.e., the formula is unprovable-in-the-system-but which we can see to be true. It follows that no machine can be a complete or adequate model of the mind, that minds are essentially different from machines.
Lucas’view (cont’d) • Goedel's theorem seems to me to prove that Mechanism is false, that is, that minds cannot be explained as machines. So also has it seemed to many other people: almost every mathematical logician I have put the matter to has confessed to similar thoughts, but has felt reluctant to commit himself definitely until he could see the whole argument set out, with all objections fully stated and properly met.1 This I attempt to do.
For every machine there is a truth which it cannot produce as being true, but which a mind can. This shows that a machine cannot be a complete and adequate model of the mind. It cannot do everything that a mind can do, since however much it can do, there is always something which it cannot do, and a mind can.
The paradoxes of consciousness arise because a conscious being can be aware of itself, as well as of other things, and yet cannot really be construed as being divisible into parts. It means that a conscious being can deal with Goedelian questions in a way in which a machine cannot, because a conscious being can both consider itself and its performance and yet not be other than that which did the performance.
A machine can be made in a manner of speaking to "consider" its own performance, but it cannot take this "into account" without thereby becoming a different machine, namely the old machine with a "new part" added. But it is inherent in our idea of a conscious mind that it can reflect upon itself and criticize its own performances, and no extra part is required to do this: it is already complete, and has no Achilles' heel.
We can even begin to see how there could be room for morality, without its being necessary to abolish or even to circumscribe the province of science. Our argument has set no limits to scientific enquiry: it will still be possible to investigate the working of the brain. It will still be possible to produce mechanical models of the mind.
Only, now we can see that no mechanical model will be completely adequate, nor any explanations in purely mechanist terms. We can produce models and explanations, and they will be illuminating: but, however far they go, there will always remain more to be said. There is no arbitrary bound to scientific enquiry: but no scientific enquiry can ever exhaust the infinite variety of the human mind.12
Lucas’ view • The arguments I put forward in "Minds, Machines and Goedel" and then in Freedom of the Will have been much attacked. Although I put them forward with what I hope was becoming modesty and a certain degree of tentativeness, many of the replies have been lacking in either courtesy or caution. I must have touched a raw nerve.
In recent years I have been less zealous to defend myself, and often miss articles altogether. There may be some new decisive objection I have altogether overlooked. But the objections I have come across so far seem far from decisive.
Encyclopedia article • Roger Penrose claims that this (alleged) difference between "what can be mechanically proven" and "what can be seen to be true by humans" shows that human intelligence is not mechanical in nature. This view is not widely accepted, because as stated by Marvin Minsky, human intelligence is capable of error and of understanding statements which are in fact inconsistent or false.
However, Marvin Minsky has reported that Kurt Gödel told him personally that he believed that human beings had an intuitive, not just computational, way of arriving at truth and that therefore his theorem did not limit what can be known to be true by humans.
Penrose’s view • The famous "incompleteness" theorem of Gödel (illustrated by a particularly striking but elementary example of it known as Goodstein's theorem) tells us that human mathematical understanding cannot be encapsulated in any (knowably sound) computational procedure. This has the implication that there is something involved in human understanding that lies beyond the actions of any computer. Understanding is a particular manifestation of human consciousness, so it appears that it is conscious mentality that lies outside computational activity.
Why do I believe that consciousness involves noncomputable ingredients? The reason is Gödel's theorem. I sat in on a course when I was a research student at Cambridge, given by a logician who made the point about Gödel's theorem that the very way in which you show the formal unprovability of a certain proposition also exhibits the fact that it's true. I'd vaguely heard about Gödel's theorem — that you can produce statements that you can't prove using any system of rules you've laid down ahead of time.
But what was now being made clear to me was that as long as you believe in the rules you're using in the first place, then you must also believe in the truth of this proposition whose truth lies beyond those rules. This makes it clear that mathematical understanding is something you can't formulate in terms of rules. That's the view which, much later, I strongly put forward in my book The Emperor's New Mind.
Criticism of Penrose In The Emperor's New Mind [Penrose, 1989] and especially in Shadows of the Mind [Penrose, 1994], Roger Penrose argues against the “strong artificial intelligence thesis," contending that human reasoning cannot be captured by an artificial intellect because humans detect nontermination of programs in cases where digital machines do not. Penrose thus adapts the similar argumentation of Lucas [1961] which was based on Goedel's incompleteness results to one based instead on the undecidability of the halting problem, as shown by Turing [1936]. Penrose's conclusions have been roundly critiqued, for example, in [Avron, 1998; Chalmers, 1995a; LaForte et al., 1998; Putnam, 1995].
In a nutshell, Penrose's argument runs as follows: 1. Collect all current sound human knowledge about non-termination. 2. Reduce said knowledge to a computer program. 3. Create a self-referential version of said program. 4. Derive a contradiction. The conclusion (by reductio ad absurdum) is that the second step is invalid: A program cannot incorporate everything humans know! (The reasoning is that humans can know that a self-referential version of this program does not halt, but the computer program cannot know this.)
Human mathematical intuition Ramanujan had several extraordinary characteristics which set him apart from the majority of mathematicians. One was his lack of rigor. Very often he would simply state a result which, he would insist, had just come to him from a vague, intuitive source, far out of the realm of conscious probing. In fact, he often said that the goddess Namagiri inspired him in his dreams. This happened time and again, and what made it all the more mystifying -- perhaps even imbuing it with a certain mystical quality -- was the fact that many of his “intuition theorems” were wrong.
Mahalanobis: Now here is a problem for you. Ramanujan: What problem, tell me? I read out the question from the Strand Magazine. Ramanujan: Please take down the solution. (He dictated a continued fraction.) The first term was the solution I had obtained. Each successive term represented successive solutions for the same type of [problem] as the number of houses in the street would increase indefinitely. I was amazed. Mahalanobis: Did you get the solution in a flash? Ramanujan: Immediately I heard the problem, it was clear that that solution was obviously a continued fraction. I then thought, “Which continued fraction?” and the answer came to my mind. It was as simple as this.
Johann Martin Zacharias Dase, who lived from 1824 to 1861 and was employed by various European governments to perform computations, is an outstanding example. He not only could multiply two number each of 100 digits in his head; he also had an uncanny sense of quantity. That is, he could just “tell”, without counting, how many sheep were in a field, or words in a sentence, and so forth, up to about 30 … . Incidentally, Dase was not an idiot.