On 29/05/2022 03:43, olcott wrote:The correct x86 emulation of the input to H(P,P) by H never reaches the
On 5/28/2022 7:22 PM, Mike Terry wrote:
On 27/05/2022 22:32, Richard Damon wrote:
On 5/27/22 5:21 PM, André G. Isaak wrote:
On 2022-05-27 14:38, olcott wrote:
On 5/27/2022 3:06 PM, André G. Isaak wrote:
On 2022-05-27 13:41, olcott wrote:
On 5/27/2022 2:10 PM, André G. Isaak wrote:
On 2022-05-27 13:01, olcott wrote:
On 5/27/2022 1:57 PM, Richard Damon wrote:
The input to H is NOT a "sequence of configuratios", but the >>>>>>>>>>> representation of an algorithm and its input.
The finite string inputs to a halt decider specify (rather >>>>>>>>>> then merely represent) a sequence of configurations that may >>>>>>>>>> or may not reach their own final state.
I really don't think you have any idea what terms like
'represent', 'specify', or 'sequence of configurations' mean. >>>>>>>>> Richard is perfectly correct. You, as usual, are not.
The distinction that I make between represent and specify is
that the x86 source-code for P represents P(P) whereas the
actual correct x86 emulation of the input to H(P,P) specifies
the actual behavior of this input. This is not the same behavior >>>>>>>> as the behavior specified by P(P).
A sequence of configurations means a list of x86 program steps >>>>>>>> executed or emulated in the order that their source-code specifies. >>>>>>>>
Likewise with a TM or the UTM simulation of a TM description
specifies a sequence of state transitions.
And this decidedly is *not* what a halt decider is given as its
input. It is not given a sequence of state transitions. It is
given a representation of a computation.
No it is not and you know that it is not. A halt decider is given
a finite string TM description that specifies a sequence of
configurations.
A TM description and a sequence of configurations are entirely
different things (and the former certainly does not 'specify' the
latter). It's given either one or the other. Make up your mind.
André
Well, a TM description, and a description of an input to that TM,
does specify a "sequence of configurations" based on what running
that TM on that input would do.
"Specify" is not the word I'd use. (If I write a shopping list I
specify what I'm going to get when I go shopping: one loaf of bread
and 4oz jar of strawberry jam. I don't write various clues which can
together be used to generate what I want by applying some algorithm.)
For your scenario, "determine" seems accurate. But PO also says that
P(P) "specifies non-halting behaviour", and that computation halts.
I think that this use just means "matches PO's abort test".
I never said that: "P(P) specifies non-halting behaviour".
Your term "determine" is better than my term "specify".
The input to H(P,P) determines the sequence of x86 instructions of the
correct x86 emulation of P by H. This sequence never reaches the "ret"
instruction of P.
Obviously H never gets to emulate the final ret of P - because it aborts
the emulation before it gets there. Duh! Not seeing the final ret /because you gave up and stopped emulating/ does not mean the
computation P(P) never halts, or that "never halts" is "the correct
answer" for H to return for input (P,P). That's some gibberish idea
you've come up with in your confusion.
If UTM emulates the P(P) computation, it will see all the EXACT SAME
config steps that H emulated, except that where H gave up due to
spotting some pattern, UTM carries on and sees the P(P) steps after H
gave up, INCLUDING THE FINAL RET OF P.
On 5/29/2022 12:04 PM, Mike Terry wrote:
On 29/05/2022 03:43, olcott wrote:The correct x86 emulation of the input to H(P,P) by H never reaches the
On 5/28/2022 7:22 PM, Mike Terry wrote:
On 27/05/2022 22:32, Richard Damon wrote:
On 5/27/22 5:21 PM, André G. Isaak wrote:
On 2022-05-27 14:38, olcott wrote:
On 5/27/2022 3:06 PM, André G. Isaak wrote:
On 2022-05-27 13:41, olcott wrote:
On 5/27/2022 2:10 PM, André G. Isaak wrote:
On 2022-05-27 13:01, olcott wrote:
On 5/27/2022 1:57 PM, Richard Damon wrote:
The input to H is NOT a "sequence of configuratios", but the >>>>>>>>>>>> representation of an algorithm and its input.
The finite string inputs to a halt decider specify (rather >>>>>>>>>>> then merely represent) a sequence of configurations that may >>>>>>>>>>> or may not reach their own final state.
I really don't think you have any idea what terms like
'represent', 'specify', or 'sequence of configurations' mean. >>>>>>>>>> Richard is perfectly correct. You, as usual, are not.
The distinction that I make between represent and specify is >>>>>>>>> that the x86 source-code for P represents P(P) whereas the
actual correct x86 emulation of the input to H(P,P) specifies >>>>>>>>> the actual behavior of this input. This is not the same
behavior as the behavior specified by P(P).
A sequence of configurations means a list of x86 program steps >>>>>>>>> executed or emulated in the order that their source-code
specifies.
Likewise with a TM or the UTM simulation of a TM description >>>>>>>>> specifies a sequence of state transitions.
And this decidedly is *not* what a halt decider is given as its >>>>>>>> input. It is not given a sequence of state transitions. It is
given a representation of a computation.
No it is not and you know that it is not. A halt decider is given >>>>>>> a finite string TM description that specifies a sequence of
configurations.
A TM description and a sequence of configurations are entirely
different things (and the former certainly does not 'specify' the
latter). It's given either one or the other. Make up your mind.
André
Well, a TM description, and a description of an input to that TM,
does specify a "sequence of configurations" based on what running
that TM on that input would do.
"Specify" is not the word I'd use. (If I write a shopping list I
specify what I'm going to get when I go shopping: one loaf of bread
and 4oz jar of strawberry jam. I don't write various clues which
can together be used to generate what I want by applying some
algorithm.)
For your scenario, "determine" seems accurate. But PO also says
that P(P) "specifies non-halting behaviour", and that computation
halts. I think that this use just means "matches PO's abort test".
I never said that: "P(P) specifies non-halting behaviour".
Your term "determine" is better than my term "specify".
The input to H(P,P) determines the sequence of x86 instructions of
the correct x86 emulation of P by H. This sequence never reaches the
"ret" instruction of P.
Obviously H never gets to emulate the final ret of P - because it
aborts the emulation before it gets there. Duh! Not seeing the final
ret /because you gave up and stopped emulating/ does not mean the
computation P(P) never halts, or that "never halts" is "the correct
answer" for H to return for input (P,P). That's some gibberish idea
you've come up with in your confusion.
If UTM emulates the P(P) computation, it will see all the EXACT SAME
config steps that H emulated, except that where H gave up due to
spotting some pattern, UTM carries on and sees the P(P) steps after H
gave up, INCLUDING THE FINAL RET OF P.
"ret" instruction of P in 1 to ∞ emulated steps.
Honest reviewers can very easily verify the truth of this by simply reverse-engineering the execution trace of the sequence of instructions
of P when the input to H(P,P) is correctly emulated by H.
Honest reviewers that are not stupid will also know that when H(P,P)
aborts the simulation of its input that this does not magically cause P
to leap to its "ret" instruction.
_P()
[00001352](01) 55 push ebp
[00001353](02) 8bec mov ebp,esp
[00001355](03) 8b4508 mov eax,[ebp+08]
[00001358](01) 50 push eax // push P [00001359](03) 8b4d08 mov ecx,[ebp+08]
[0000135c](01) 51 push ecx // push P [0000135d](05) e840feffff call 000011a2 // call H [00001362](03) 83c408 add esp,+08
[00001365](02) 85c0 test eax,eax
[00001367](02) 7402 jz 0000136b
[00001369](02) ebfe jmp 00001369
[0000136b](01) 5d pop ebp
[0000136c](01) c3 ret
Size in bytes:(0027) [0000136c]
On 5/29/2022 12:39 PM, Richard Damon wrote:
On 5/29/22 1:19 PM, olcott wrote:
On 5/29/2022 12:04 PM, Mike Terry wrote:
On 29/05/2022 03:43, olcott wrote:The correct x86 emulation of the input to H(P,P) by H never reaches
On 5/28/2022 7:22 PM, Mike Terry wrote:
On 27/05/2022 22:32, Richard Damon wrote:
On 5/27/22 5:21 PM, André G. Isaak wrote:
On 2022-05-27 14:38, olcott wrote:
On 5/27/2022 3:06 PM, André G. Isaak wrote:
On 2022-05-27 13:41, olcott wrote:
On 5/27/2022 2:10 PM, André G. Isaak wrote:
On 2022-05-27 13:01, olcott wrote:
On 5/27/2022 1:57 PM, Richard Damon wrote:
The input to H is NOT a "sequence of configuratios", but >>>>>>>>>>>>>> the representation of an algorithm and its input.
The finite string inputs to a halt decider specify (rather >>>>>>>>>>>>> then merely represent) a sequence of configurations that >>>>>>>>>>>>> may or may not reach their own final state.
I really don't think you have any idea what terms like >>>>>>>>>>>> 'represent', 'specify', or 'sequence of configurations' >>>>>>>>>>>> mean. Richard is perfectly correct. You, as usual, are not. >>>>>>>>>>>>
The distinction that I make between represent and specify is >>>>>>>>>>> that the x86 source-code for P represents P(P) whereas the >>>>>>>>>>> actual correct x86 emulation of the input to H(P,P) specifies >>>>>>>>>>> the actual behavior of this input. This is not the same
behavior as the behavior specified by P(P).
A sequence of configurations means a list of x86 program >>>>>>>>>>> steps executed or emulated in the order that their
source-code specifies.
Likewise with a TM or the UTM simulation of a TM description >>>>>>>>>>> specifies a sequence of state transitions.
And this decidedly is *not* what a halt decider is given as >>>>>>>>>> its input. It is not given a sequence of state transitions. It >>>>>>>>>> is given a representation of a computation.
No it is not and you know that it is not. A halt decider is
given a finite string TM description that specifies a sequence >>>>>>>>> of configurations.
A TM description and a sequence of configurations are entirely >>>>>>>> different things (and the former certainly does not 'specify'
the latter). It's given either one or the other. Make up your mind. >>>>>>>>
André
Well, a TM description, and a description of an input to that TM, >>>>>>> does specify a "sequence of configurations" based on what running >>>>>>> that TM on that input would do.
"Specify" is not the word I'd use. (If I write a shopping list I >>>>>> specify what I'm going to get when I go shopping: one loaf of
bread and 4oz jar of strawberry jam. I don't write various clues >>>>>> which can together be used to generate what I want by applying
some algorithm.)
For your scenario, "determine" seems accurate. But PO also says
that P(P) "specifies non-halting behaviour", and that computation
halts. I think that this use just means "matches PO's abort test". >>>>>>
I never said that: "P(P) specifies non-halting behaviour".
Your term "determine" is better than my term "specify".
The input to H(P,P) determines the sequence of x86 instructions of
the correct x86 emulation of P by H. This sequence never reaches
the "ret" instruction of P.
Obviously H never gets to emulate the final ret of P - because it
aborts the emulation before it gets there. Duh! Not seeing the
final ret /because you gave up and stopped emulating/ does not mean
the computation P(P) never halts, or that "never halts" is "the
correct answer" for H to return for input (P,P). That's some
gibberish idea you've come up with in your confusion.
If UTM emulates the P(P) computation, it will see all the EXACT SAME
config steps that H emulated, except that where H gave up due to
spotting some pattern, UTM carries on and sees the P(P) steps after
H gave up, INCLUDING THE FINAL RET OF P.
the "ret" instruction of P in 1 to ∞ emulated steps.
No, H will abort it at whatever number of steps would abort that input.
Remember, H is a FIXED algorithm (or needs to be to be a decider) and
thus has DEFINITE behavior for a given input.
Your arguement isn't about a given H, but confounds the behavior of
different members of a whole class of them,
Yes, that is how categorically exhaustive reasoning** works.
** Reasoning that cannot possibly have any gaps.
The alternative method that you suggest is to test each element of an infinite set one-at-a-time.
each generating a DIFFERENT input, and thus not making an actual
arguement about any of the input.
The literal string of machine code bytes is the only actual input.
_P()
[00001352](01) 55 push ebp
[00001353](02) 8bec mov ebp,esp
[00001355](03) 8b4508 mov eax,[ebp+08]
[00001358](01) 50 push eax // push P [00001359](03) 8b4d08 mov ecx,[ebp+08]
[0000135c](01) 51 push ecx // push P [0000135d](05) e840feffff call 000011a2 // call H [00001362](03) 83c408 add esp,+08
[00001365](02) 85c0 test eax,eax
[00001367](02) 7402 jz 0000136b
[00001369](02) ebfe jmp 00001369
[0000136b](01) 5d pop ebp
[0000136c](01) c3 ret
Size in bytes:(0027) [0000136c]
H is defined to be at machine address 000011a2.
This is the fallacy of your notation. Your H keeps on being shown to
not be a definite algorithm, so it can't be a Halt Decider.
There are only two possible ways that H can be defined:
(a) H that aborts its simulation after some fixed number of emulated steps.
(b) H that does not abort its simulation after some fixed number of
emulated steps.
In neither of these categorically exhaustive cases does the correctly emulated input to H(P,P) ever reach its "ret" instruction.
On 5/29/22 1:19 PM, olcott wrote:
On 5/29/2022 12:04 PM, Mike Terry wrote:
On 29/05/2022 03:43, olcott wrote:The correct x86 emulation of the input to H(P,P) by H never reaches
On 5/28/2022 7:22 PM, Mike Terry wrote:
On 27/05/2022 22:32, Richard Damon wrote:
On 5/27/22 5:21 PM, André G. Isaak wrote:
On 2022-05-27 14:38, olcott wrote:
On 5/27/2022 3:06 PM, André G. Isaak wrote:
On 2022-05-27 13:41, olcott wrote:
On 5/27/2022 2:10 PM, André G. Isaak wrote:
On 2022-05-27 13:01, olcott wrote:
On 5/27/2022 1:57 PM, Richard Damon wrote:
The input to H is NOT a "sequence of configuratios", but >>>>>>>>>>>>> the representation of an algorithm and its input.
The finite string inputs to a halt decider specify (rather >>>>>>>>>>>> then merely represent) a sequence of configurations that may >>>>>>>>>>>> or may not reach their own final state.
I really don't think you have any idea what terms like
'represent', 'specify', or 'sequence of configurations' mean. >>>>>>>>>>> Richard is perfectly correct. You, as usual, are not.
The distinction that I make between represent and specify is >>>>>>>>>> that the x86 source-code for P represents P(P) whereas the >>>>>>>>>> actual correct x86 emulation of the input to H(P,P) specifies >>>>>>>>>> the actual behavior of this input. This is not the same
behavior as the behavior specified by P(P).
A sequence of configurations means a list of x86 program steps >>>>>>>>>> executed or emulated in the order that their source-code
specifies.
Likewise with a TM or the UTM simulation of a TM description >>>>>>>>>> specifies a sequence of state transitions.
And this decidedly is *not* what a halt decider is given as its >>>>>>>>> input. It is not given a sequence of state transitions. It is >>>>>>>>> given a representation of a computation.
No it is not and you know that it is not. A halt decider is
given a finite string TM description that specifies a sequence >>>>>>>> of configurations.
A TM description and a sequence of configurations are entirely
different things (and the former certainly does not 'specify' the >>>>>>> latter). It's given either one or the other. Make up your mind.
André
Well, a TM description, and a description of an input to that TM,
does specify a "sequence of configurations" based on what running
that TM on that input would do.
"Specify" is not the word I'd use. (If I write a shopping list I
specify what I'm going to get when I go shopping: one loaf of bread
and 4oz jar of strawberry jam. I don't write various clues which
can together be used to generate what I want by applying some
algorithm.)
For your scenario, "determine" seems accurate. But PO also says
that P(P) "specifies non-halting behaviour", and that computation
halts. I think that this use just means "matches PO's abort test".
I never said that: "P(P) specifies non-halting behaviour".
Your term "determine" is better than my term "specify".
The input to H(P,P) determines the sequence of x86 instructions of
the correct x86 emulation of P by H. This sequence never reaches the
"ret" instruction of P.
Obviously H never gets to emulate the final ret of P - because it
aborts the emulation before it gets there. Duh! Not seeing the
final ret /because you gave up and stopped emulating/ does not mean
the computation P(P) never halts, or that "never halts" is "the
correct answer" for H to return for input (P,P). That's some
gibberish idea you've come up with in your confusion.
If UTM emulates the P(P) computation, it will see all the EXACT SAME
config steps that H emulated, except that where H gave up due to
spotting some pattern, UTM carries on and sees the P(P) steps after H
gave up, INCLUDING THE FINAL RET OF P.
the "ret" instruction of P in 1 to ∞ emulated steps.
No, H will abort it at whatever number of steps would abort that input.
Remember, H is a FIXED algorithm (or needs to be to be a decider) and
thus has DEFINITE behavior for a given input.
Your arguement isn't about a given H, but confounds the behavior of
different members of a whole class of them,
each generating a DIFFERENT
input, and thus not making an actual arguement about any of the input.
This is the fallacy of your notation. Your H keeps on being shown to not
be a definite algorithm, so it can't be a Halt Decider.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 443 |
Nodes: | 16 (2 / 14) |
Uptime: | 91:00:46 |
Calls: | 9,197 |
Calls today: | 3 |
Files: | 13,480 |
Messages: | 6,054,619 |