Liste des Groupes | Revenir à c theory |
On 2024-06-02 13:46:30 +0000, olcott said:Nothing can override any fact without lying.
On 6/2/2024 2:56 AM, Mikko wrote:You need to keep your own terminology consistent and well defined.On 2024-06-01 14:44:50 +0000, olcott said:>
>On 6/1/2024 2:56 AM, Mikko wrote:>On 2024-05-31 14:25:40 +0000, olcott said:>
>On 5/31/2024 2:50 AM, Fred. Zwarts wrote:>Op 31.mei.2024 om 00:01 schreef olcott:>On 5/30/2024 4:54 PM, joes wrote:>Am Thu, 30 May 2024 09:55:24 -0500 schrieb olcott:>
>typedef int (*ptr)(); // ptr is pointer to int function in CYeah, of course not, if H doesn’t halt.
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 left hand-side are line numbers of correct C code.
This code does compile and does conform to c17.
>
Everyone with sufficient knowledge of C can easily determine that D
correctly emulated by any *pure function* H (using an x86 emulator)
cannot possibly reach its own simulated final state at line 06 and halt.
>
To actually understand my words (as in an actual honest dialogue)
you must pay careful attention to every single word. Maybe you
had no idea that *pure functions* must always halt.
>
Or maybe you did not know that every computation that never reaches
its own final state *DOES NOT HALT* even if it stops running because
it is no longer simulated.
Since the claim is that H is also a computation, it holds for H, as well. That means that H *DOES NOT HALT* even if it stops running because it is no longer simulated.
>
*pure function H definitely halts you are confused*
A pure function does not halt (in C that means that a pure function
does not call exit). A pure function returns.
>
When a pure function returns this is the equivalent of the theory
of computation halting.
In ceratin sense, yes. But the term "pure function" is mainly used
in a different context where the word "halting" has a more specific
meaning.
>
I need to maintain a constant mapping between theory of computation
terminology and software engineering terminology.
If possible try to avoid terms that have different meanings in
the two areas.
Computable Function(comp sci) <is equivalent to> Pure function(SE)If you want to write to software engineers you need to define all
I want it to be easy for software engineers to understand my proof.
terms that are not software engneers terms or do not mean what
they mean in oftware engineering or do not have the same meaning
to all software engineers. Software engineers borrow terms from
their application areas and tool providers which result term
conflicts as application areas and tool providers are not the same
for all software engineers.
Only software engineers will understand that DD correctly simulatedA relevant dogma always overrides an irrelevant fact.
by HH had different behavior than DD(DD). Comp Sci people allow Comp Sci
dogma to overrule verified facts.
The input to HH(DD,DD) specifies non-halting behavior.When I pinned Richard down on this he simply said that he does not care that DD correctly simulated by HH has different behavior than DD(DD).Those behaviour are obiously different as only the latter has
a specified input. But why would anybody care?
DD correctly emulated by any HH that can possibly exist DOES NOT HALTIt turns out that DD correctly simulated by HH <is> the behavior thatIt does not turn out. Input does not specify. Problem statements specify.
the input to HH(DD,DD) specifies. Deciders are ONLY accountable for
their actual inputs. Deciders compute the mapping FROM THEIR INPUTS...
Specifications and contracts specify or at least try to specify. Inputs
are something that can mentioned and considered in specifications.
Les messages affichés proviennent d'usenet.