What is the correct halt status for an input to
a simulating termination analyzer that calls its
own termination analyzer?
typedef void (*ptr)();
int HHH(ptr P);
void DDD()
{
HHH(DDD);
}
int main()
{
HHH(DDD);
}
On 7/13/2024 12:25 PM, Richard Damon wrote:
On 7/13/24 12:48 PM, olcott wrote:
What is the correct halt status for an input to
a simulating termination analyzer that calls its
own termination analyzer?
typedef void (*ptr)();
int HHH(ptr P);
void DDD()
{
HHH(DDD);
}
int main()
{
HHH(DDD);
}
Halting.
Since HHH defined to be a termination analyzer, by that definition it
must return to its caller.
Since DDD has no inputs, its behavior isn't affected by any inputs,
and thus DDD will halt for ALL input conditions, so
You are stupidly saying that Infinite_Loop() will halt because
it has no inputs.
void Infinite_Loop()
{
HERE: goto HERE;
}
for HHH to be a correct termination analysizer it needs to return theYes
value to indicate Halting.
Your version
I am asking What is the correct halt status for HHH(DDD)
that at least one element of every possible pure function
HHH can provide.
can't do that, so either fails to be a proper decider, or gets the
wrong answer.
The Flibble version could get this correct, if the structure allows it
to properly detect that DDD is actually calling HHH, which puts us
outside of the Turing Equivalency rules, but can be done in that C code.
On 7/13/2024 12:25 PM, Richard Damon wrote:
On 7/13/24 12:48 PM, olcott wrote:
What is the correct halt status for an input to
a simulating termination analyzer that calls its
own termination analyzer?
typedef void (*ptr)();
int HHH(ptr P);
void DDD()
{
HHH(DDD);
}
int main()
{
HHH(DDD);
}
Halting.
Since HHH defined to be a termination analyzer, by that definition it
must return to its caller.
Since DDD has no inputs, its behavior isn't affected by any inputs,
and thus DDD will halt for ALL input conditions,
Stupidly false. Its behavior is not affected
by inputs because it has not inputs is the not
stupid way to say it.
On 7/13/2024 12:25 PM, Richard Damon wrote:
On 7/13/24 12:48 PM, olcott wrote:
What is the correct halt status for an input to
a simulating termination analyzer that calls its
own termination analyzer?
typedef void (*ptr)();
int HHH(ptr P);
void DDD()
{
HHH(DDD);
}
int main()
{
HHH(DDD);
}
Halting.
Since HHH defined to be a termination analyzer, by that definition it
must return to its caller.
Since DDD has no inputs, its behavior isn't affected by any inputs, and
thus DDD will halt for ALL input conditions, so
You are stupidly saying that Infinite_Loop() will halt because
it has no inputs.
void Infinite_Loop()
{
HERE: goto HERE;
}
On 7/14/2024 3:00 AM, Mikko wrote:
On 2024-07-13 18:15:35 +0000, olcott said:
On 7/13/2024 12:25 PM, Richard Damon wrote:
On 7/13/24 12:48 PM, olcott wrote:
What is the correct halt status for an input to
a simulating termination analyzer that calls its
own termination analyzer?
typedef void (*ptr)();
int HHH(ptr P);
void DDD()
{
HHH(DDD);
}
int main()
{
HHH(DDD);
}
Halting.
Since HHH defined to be a termination analyzer, by that definition it
must return to its caller.
Since DDD has no inputs, its behavior isn't affected by any inputs, and >>>> thus DDD will halt for ALL input conditions, so
You are stupidly saying that Infinite_Loop() will halt because
it has no inputs.
void Infinite_Loop()
{
HERE: goto HERE;
}
You are stupidly saying that Infinite loop is executed as a part of HHH.
Infinite_Loop() is emulated in its own process context.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 546 |
Nodes: | 16 (2 / 14) |
Uptime: | 19:08:51 |
Calls: | 10,389 |
Files: | 14,061 |
Messages: | 6,416,960 |