SCOOPING THE LOOP SNOOPER
A proof that the Halting Problem is undecidable
Geoffrey K. Pullum
(School of Philosophy, Psychology and Language Sciences, University of Edinburgh)
No general procedure for bug checks succeeds.
Now, I won’t just assert that, I’ll show where it leads:
I will prove that although you might work till you drop,
you cannot tell if computation will stop.
For imagine we have a procedure called P
that for specified input permits you to see
whether specified source code, with all of its faults,
defines a routine that eventually halts.
Now, I won’t just assert that, I’ll show where it leads:
I will prove that although you might work till you drop,
you cannot tell if computation will stop.
For imagine we have a procedure called P
that for specified input permits you to see
whether specified source code, with all of its faults,
defines a routine that eventually halts.
You feed in your program, with suitable data,
and P gets to work, and a little while later
(in finite compute time) correctly infers
whether infinite looping behavior occurs.
If there will be no looping, then P prints out `Good.’
That means work on this input will halt, as it should.
But if it detects an unstoppable loop,
then P reports `Bad!’ — which means you’re in the soup.
Well, the truth is that P cannot possibly be,
because if you wrote it and gave it to me,
I could use it to set up a logical bind
that would shatter your reason and scramble your mind.
Here’s the trick that I’ll use — and it’s simple to do.
I’ll define a procedure, which I will call Q,
that will use P‘s predictions of halting success
to stir up a terrible logical mess.
For a specified program, say A, one supplies,
the first step of this program called Q I devise
is to find out from P what’s the right thing to say
of the looping behavior of A run on A.
If P‘s answer is `Bad!’, Q will suddenly stop.
But otherwise, Q will go back to the top,
and start off again, looping endlessly back,
till the universe dies and turns frozen and black.
And this program called Q wouldn’t stay on the shelf;
I would ask it to forecast its run on itself.
When it reads its own source code, just what will it do?
What’s the looping behavior of Q run on Q?
If P warns of infinite loops, Q will quit;
yet P is supposed to speak truly of it!
And if Q‘s going to quit, then P should say `Good’
— which makes Q start to loop! (P denied that it would.)
No matter how P might perform, Q will scoop it:
Q uses P‘s output to make P look stupid.
Whatever P says, it cannot predict Q:
P is right when it’s wrong, and is false when it’s true!
I’ve created a paradox, neat as can be —
and simply by using your putative P.
When you posited P you stepped into a snare;
Your assumption has led you right into my lair.
So where can this argument possibly go?
I don’t have to tell you; I’m sure you must know.
By reductio, there cannot possibly be
a procedure that acts like the mythical P.
You can never find general mechanical means
for predicting the acts of computing machines.
It’s something that cannot be done. So we users
must find our own bugs. Our computers are losers!
and P gets to work, and a little while later
(in finite compute time) correctly infers
whether infinite looping behavior occurs.
If there will be no looping, then P prints out `Good.’
That means work on this input will halt, as it should.
But if it detects an unstoppable loop,
then P reports `Bad!’ — which means you’re in the soup.
Well, the truth is that P cannot possibly be,
because if you wrote it and gave it to me,
I could use it to set up a logical bind
that would shatter your reason and scramble your mind.
Here’s the trick that I’ll use — and it’s simple to do.
I’ll define a procedure, which I will call Q,
that will use P‘s predictions of halting success
to stir up a terrible logical mess.
For a specified program, say A, one supplies,
the first step of this program called Q I devise
is to find out from P what’s the right thing to say
of the looping behavior of A run on A.
If P‘s answer is `Bad!’, Q will suddenly stop.
But otherwise, Q will go back to the top,
and start off again, looping endlessly back,
till the universe dies and turns frozen and black.
And this program called Q wouldn’t stay on the shelf;
I would ask it to forecast its run on itself.
When it reads its own source code, just what will it do?
What’s the looping behavior of Q run on Q?
If P warns of infinite loops, Q will quit;
yet P is supposed to speak truly of it!
And if Q‘s going to quit, then P should say `Good’
— which makes Q start to loop! (P denied that it would.)
No matter how P might perform, Q will scoop it:
Q uses P‘s output to make P look stupid.
Whatever P says, it cannot predict Q:
P is right when it’s wrong, and is false when it’s true!
I’ve created a paradox, neat as can be —
and simply by using your putative P.
When you posited P you stepped into a snare;
Your assumption has led you right into my lair.
So where can this argument possibly go?
I don’t have to tell you; I’m sure you must know.
By reductio, there cannot possibly be
a procedure that acts like the mythical P.
You can never find general mechanical means
for predicting the acts of computing machines.
It’s something that cannot be done. So we users
must find our own bugs. Our computers are losers!
-_,- 计算理论刚挂掉的飘过
(School of Philosophy, Psychology and Language Sciences, University of Edinburgh)
这个背景的作者居然能明白halting problems以及那么多计算技术语,佩服佩服。。
to LS:更重要的是他能把它写成诗歌…
最后一句话经典…把计算机科学的本质说出来了…
嚯哟~~你这里也有看到诗的时候~~这个好强~~
t
不知道有没有人想把它改成Rap……
我们学校的。。。要re一下 很强大
i like~
飘过……话说3月13又是黑色星期五
膜拜!
Hey there,
What if instead of wasting your time on ChatGPT…
You could launch your Own app like ChatGPT and charge people for it?
Here’s your chance to do the same:
Click here to create your own version of ChatGPT and begin charging people for access.
===>> https://bit.ly/chtbees
You see, people are frustrated when ChatGPT faces outages..
And this has opened up a massive opportunity for internet marketers..
There’s a new app called Chat Bees, and it lets you create a ChatGPT like app, but with ZERO outages.
People are willing to pay handsomely for zero outages.
So, you can either create your Chat GPT-like app and se1l it to other businesses and make m0ney from it…
OR, you can start your content creation agency.
It Has All The Same Powerful Features Of ChatGPT, And Even More:
✅ Write engaging, high quality content for blogs, scripts, emails, newsletters, ebooks literally anything
✅ 100% unique content with no plagiarism
✅ Generate the best AI designs that put 99% of graphic designers to shame, in just seconds
✅ It can proofread and edit your contents
✅ It can fix grammar and other errors
✅ Translate your writing to multiple languages and pr0fit
✅ It can provide a transcription of your audio and video files in seconds
✅ Boost your team’s performance by tracking their progress and assigning tasks
✅ Supports different Open AI models.
And much more…
And you can offer this service to people, and easily rake in 5-10k per month..
Best Regards,
Souryal T.
93, S.N Road.
WB 700055
INDIA
=====
Click here to unsubscribe
https://bit.ly/stop69