On 10/17/2024 5:07 AM, joes wrote:
Am Wed, 16 Oct 2024 15:06:01 -0500 schrieb olcott:
On 10/16/2024 3:02 PM, joes wrote:Only because they aren't simulated. But they are still terminating
Am Wed, 16 Oct 2024 14:39:37 -0500 schrieb olcott:They would not all abort when you pay close attention to ALL of the
On 10/16/2024 2:33 PM, joes wrote:Then HHH should report itself as halting, when they would all abort.
Am Wed, 16 Oct 2024 13:59:58 -0500 schrieb olcott:In other words you continue to fail to understand that unless the
On 10/16/2024 1:47 PM, joes wrote:Exactly, because your nested HHHs do not abort.
Am Wed, 16 Oct 2024 13:35:01 -0500 schrieb olcott:Which totally does not matter to the slightest degree when you have >>>>>>> the discipline to stay within the precisely designated scope of the >>>>>>> exact words that I am saying.
On 10/16/2024 1:06 PM, joes wrote:In practice you programmed H impurely.
Am Wed, 16 Oct 2024 12:46:01 -0500 schrieb olcott:
On 10/16/2024 12:27 PM, joes wrote:
Am Wed, 16 Oct 2024 10:39:21 -0500 schrieb olcott:
On 10/16/2024 9:45 AM, joes wrote:
Am Wed, 16 Oct 2024 09:11:22 -0500 schrieb olcott: >>>>>>>>>>>>>>> On 10/16/2024 9:01 AM, joes wrote:
Am Wed, 16 Oct 2024 08:31:43 -0500 schrieb olcott: >>>>>>>>>>>>>>>>> On 10/16/2024 1:33 AM, joes wrote:
In theory this seems true when ignoring or failing to comprehend >>>>>>>>> key details.And if the first one does, all of them do.If the first HHH to meet its abort criteria does not act on this >>>>>>>>>>> criteria then none of them do.HHH is correctly emulating (not simulating) the x86 language >>>>>>>>>>>>> finite string of DDD including emulating the finite string of >>>>>>>>>>>>> itself emulating the finite string of DDD up until the point >>>>>>>>>>>>> where the emulated emulated DDD would call HHH(DDD) again. >>>>>>>>>>>> Whereupon the simulated HHH would abort, if it weren't >>>>>>>>>>>> unnecessarily aborted.You are not simulating the given program, but a version that >>>>>>>>>>>>>> differs in the abort check.THIS IS ALSO THE INDUSTRY STANDARD DEFINITION It is >>>>>>>>>>>>>>> stipulated that *correct_x86_emulation* means that a finite >>>>>>>>>>>>>>> string of x86 instructions is emulated according to the >>>>>>>>>>>>>>> semantics of the x86 language beginning with the first bytes >>>>>>>>>>>>>>> of this string.Terminating C functions must reach their "return" >>>>>>>>>>>>>>>>> statement.Which DDD does.
When HHH is an x86 emulation based termination analyzer then each >>>>>>> DDD *correctly_emulated_by* any HHH that it calls cannot possibly >>>>>>> return no matter what this HHH does.
first one aborts then none of them can possibly abort because they all >>>>> have the exact same code.
details. It is utterly impossible for any of them besides the outermost
one to abort because it aborts before any of the rest of them see their
abort criteria has been met.
programs. An infinite loop is still non-halting even if I never run it.
This is just over your head.
_DDD()
[00002172] 55 push ebp ; housekeeping
[00002173] 8bec mov ebp,esp ; housekeeping
[00002175] 6872210000 push 00002172 ; push DDD
[0000217a] e853f4ffff call 000015d2 ; call HHH(DDD)
[0000217f] 83c404 add esp,+04
[00002182] 5d pop ebp
[00002183] c3 ret
Size in bytes:(0018) [00002183]
When DDD is correctly emulated by HHH according
to the semantics of the x86 language DDD cannot
possibly reach its own machine address [00002183]
no matter what HHH does.
On 10/17/2024 5:07 AM, joes wrote:
Am Wed, 16 Oct 2024 15:06:01 -0500 schrieb olcott:
On 10/16/2024 3:02 PM, joes wrote:Only because they aren't simulated. But they are still terminating
Am Wed, 16 Oct 2024 14:39:37 -0500 schrieb olcott:They would not all abort when you pay close attention to ALL of the
On 10/16/2024 2:33 PM, joes wrote:Then HHH should report itself as halting, when they would all abort.
Am Wed, 16 Oct 2024 13:59:58 -0500 schrieb olcott:In other words you continue to fail to understand that unless the
On 10/16/2024 1:47 PM, joes wrote:Exactly, because your nested HHHs do not abort.
Am Wed, 16 Oct 2024 13:35:01 -0500 schrieb olcott:Which totally does not matter to the slightest degree when you
On 10/16/2024 1:06 PM, joes wrote:In practice you programmed H impurely.
Am Wed, 16 Oct 2024 12:46:01 -0500 schrieb olcott:
On 10/16/2024 12:27 PM, joes wrote:
Am Wed, 16 Oct 2024 10:39:21 -0500 schrieb olcott:
On 10/16/2024 9:45 AM, joes wrote:
Am Wed, 16 Oct 2024 09:11:22 -0500 schrieb olcott: >>>>>>>>>>>>>>> On 10/16/2024 9:01 AM, joes wrote:
Am Wed, 16 Oct 2024 08:31:43 -0500 schrieb olcott: >>>>>>>>>>>>>>>>> On 10/16/2024 1:33 AM, joes wrote:
In theory this seems true when ignoring or failing to comprehend >>>>>>>>> key details.And if the first one does, all of them do.If the first HHH to meet its abort criteria does not act on >>>>>>>>>>> this criteria then none of them do.Whereupon the simulated HHH would abort, if it weren't >>>>>>>>>>>> unnecessarily aborted.HHH is correctly emulating (not simulating) the x86 language >>>>>>>>>>>>> finite string of DDD including emulating the finite string >>>>>>>>>>>>> of itself emulating the finite string of DDD up until the >>>>>>>>>>>>> point where the emulated emulated DDD would call HHH(DDD) >>>>>>>>>>>>> again.You are not simulating the given program, but a version >>>>>>>>>>>>>> that differs in the abort check.THIS IS ALSO THE INDUSTRY STANDARD DEFINITION It is >>>>>>>>>>>>>>> stipulated that *correct_x86_emulation* means that a >>>>>>>>>>>>>>> finite string of x86 instructions is emulated according to >>>>>>>>>>>>>>> the semantics of the x86 language beginning with the first >>>>>>>>>>>>>>> bytes of this string.Terminating C functions must reach their "return" >>>>>>>>>>>>>>>>> statement.Which DDD does.
have the discipline to stay within the precisely designated scope >>>>>>> of the exact words that I am saying.
When HHH is an x86 emulation based termination analyzer then each >>>>>>> DDD *correctly_emulated_by* any HHH that it calls cannot possibly >>>>>>> return no matter what this HHH does.
first one aborts then none of them can possibly abort because they
all have the exact same code.
details. It is utterly impossible for any of them besides the
outermost one to abort because it aborts before any of the rest of
them see their abort criteria has been met.
programs. An infinite loop is still non-halting even if I never run it. [topic change ignored]
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 546 |
Nodes: | 16 (2 / 14) |
Uptime: | 154:40:36 |
Calls: | 10,383 |
Files: | 14,054 |
Messages: | 6,417,848 |