Deutsch   English   Français   Italiano  
<v2qgu1$2dpfr$1@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: olcott <polcott333@gmail.com>
Newsgroups: comp.lang.c++,comp.lang.c
Subject: Re: Can you see that D correctly simulated by H remains stuck in
 recursive simulation?
Date: Fri, 24 May 2024 11:57:36 -0500
Organization: A noiseless patient Spider
Lines: 67
Message-ID: <v2qgu1$2dpfr$1@dont-email.me>
References: <v2ns85$1rd65$1@dont-email.me> <v2qa4r$2ch5g$2@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Fri, 24 May 2024 18:57:38 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="853a48eea7a3e841565c364baea8e5bf";
	logging-data="2549243"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX18zDsyJLxIGM4J9US9mfS+C"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:Ii+Vyc6uNvVNogDnwwViqEQ2mnU=
In-Reply-To: <v2qa4r$2ch5g$2@dont-email.me>
Content-Language: en-US
Bytes: 3636

On 5/24/2024 10:01 AM, Fred. Zwarts wrote:
> Op 23.mei.2024 om 18:52 schreef olcott:
>> typedef int (*ptr)();  // ptr is pointer to int function in C
>> 00       int H(ptr p, ptr i);
>> 01       int D(ptr p)
>> 02       {
>> 03         int Halt_Status = H(p, p);
>> 04         if (Halt_Status)
>> 05           HERE: goto HERE;
>> 06         return Halt_Status;
>> 07       }
>> 08
>> 09       int main()
>> 10       {
>> 11         H(D,D);
>> 12         return 0;
>> 13       }
>>
>> The above template refers to an infinite set of H/D pairs where D is
>> correctly simulated by pure function H. This was done because many
>> reviewers used the shell game ploy to endlessly switch which H/D was
>> being referred to.
>>
>> *Correct Simulation Defined*
>> This is provided because every reviewer had a different notion of
>> correct simulation that diverges from this notion.
>>
>> In the above case a simulator is an x86 emulator that correctly emulates
>> at least one of the x86 instructions of D in the order specified by the
>> x86 instructions of D.
>>
>> This may include correctly emulating the x86 instructions of H in the
>> order specified by the x86 instructions of H thus calling H(D,D) in
>> recursive simulation.
>>
>> *Execution Trace*
>> Line 11: main() invokes H(D,D); H(D,D) simulates lines 01, 02, and 03 of
>> D. This invokes H(D,D) again to repeat the process in endless recursive
>> simulation.
> 
> The case can be simplified even more (D is not needed):
> 

We are ONLY asking about whether D correctly simulated by pure function 
H can possibly reach its own final state at line 06 and halt.

Because H is a pure function we know that H halts.
https://en.wikipedia.org/wiki/Pure_function#
Every H of the above H/D pairs returns the meaningless value of 56.


> typedef int (*ptr)();  // ptr is pointer to int function in C
> 00       int H(ptr p, ptr i);
> 01       int main()
> 02       {
> 03         H(H,H);
> 04         return 0;
> 05       }
> 
> If olcott's claim is true, then also main will never reach line 04. This 
> would prove that H is non-halting. This would prove that a simulating 
> halt-decider cannot be used as a halt-decider, because it does not halt.

-- 
Copyright 2024 Olcott "Talent hits a target no one else can hit; Genius
hits a target no one else can see." Arthur Schopenhauer