From: Peter Olcott on

"Jens Auer" <jens.auer-news(a)betaversion.net> wrote in message
news:453bea20(a)news.ish.de...
> Peter Olcott wrote:
>> "Jens Auer" <jens.auer-news(a)betaversion.net> wrote in message
>> news:453bdcc4(a)news.ish.de...
>>> Peter Olcott wrote:
>>>> int MalignantSelfReference(SourceCode, InputData) {
>>>> if ( IsSourceCode(InputData) )
>>>> if ( MatchSelfReferencePattern(SourceCode, InputData) )
>>>> if ( DetectedSelfReferenceTogglesTheReturnValue(SourceCode,
>>>> InputData) )
>>>> return TRUE;
>>>> return FALSE;
>>>> }
>>>>
>>>> For all the examples provided so far Matching the pattern has not been
>>>> shown to be impossible. There might be constructions whereby the first
>>>> step must be removed to be comprehensive.
>>> // Let f be some terminating function
>>> bool f(p,x) {
>>> // implementation does not matter, eg
>>> // return length(p) > length(x)
>>> }
>>>
>>> bool g(s) {
>>> if f(s,s) == TRUE
>>> return FALSE;
>>> else
>>> return TRUE;
>>> }
>>> // g clearly terminates
>>>
>>> What's the result of MalignantSelfReference(g,g)?
>>> If it returns FALSE, how can it distinguish g from WillHalt? If it returns
>>> TRUE, WillHalt(g) gives a wrong result.
>>
>> Your question is not precisely correct, the basis for comparison is
>> LoopIfHalts(LoopIfHalts), not WillHalt() please try and re-formulate your
>> question, I can't tell exactly where you are plugging g into the prior
>> example from what you have said. Please be 100% explicit, and modify the code
>> below to indicate exactly what you mean.
> The question is: What is the result of MalignantSelfReference(g,g)? Is it Yes
> or No? How can this question be not precisely correct?!?
> And following from that, what is the result of WillHalt(g)?

What is the result of MalignantSelfReference(g,g) FALSE
what is the result of WillHalt(g, g) TRUE

WillHalt(), LoopIfHalts() and g() all have different execution traces.

>
>>
>> void LoopIfHalts(string SourceCode) {
>> if ( WillHalt(SourceCode, SourceCode) == TRUE )
>> while (TRUE) // loop forever
>> ;
>> else
>> return;
>> }
>>
>> int WillHalt(string SourceCode, string InputData) {
>> if (MalignantSelfReference(SourceCode, InputData))
>> return MALIGNANT_SELF_REFERENCE;
>> if ( TheProgramWillHalt(SourceCode, InputData) )
>> return TRUE;
>> else
>> return FALSE;
>> }
>>
>> LoopIfHalts(LoopIfHalts);


From: Frank Ch. Eigler on

"Peter Olcott" <NoSpam(a)SeeScreen.com> writes:

> No this is not what I said. If you feed LoopIfHalts2() to
> WillHalt(), then WillHalt'() sees the MALIGNANT_SELF_REFERENCE to
> itself.

Malignant self reference appears to be the kind of disorder that makes
you want to re-humiliate yourself every few years. Have you already
forgotten summer of 2004?

http://groups.google.com/group/comp.theory/msg/802adc0adb837521?hl=en&

- FChE
From: The Ghost In The Machine on
In sci.logic, Frank Ch. Eigler
<fche(a)redhat.com>
wrote
on 22 Oct 2006 20:32:41 -0400
<y0mlkn7vpli.fsf(a)ton.toronto.redhat.com>:
>
> "Peter Olcott" <NoSpam(a)SeeScreen.com> writes:
>
>> No this is not what I said. If you feed LoopIfHalts2() to
>> WillHalt(), then WillHalt'() sees the MALIGNANT_SELF_REFERENCE to
>> itself.
>
> Malignant self reference appears to be the kind of disorder that makes
> you want to re-humiliate yourself every few years. Have you already
> forgotten summer of 2004?
>
> http://groups.google.com/group/comp.theory/msg/802adc0adb837521?hl=en&
>
> - FChE

Not to mention that a self-reference is in fact impossible in this
problem. The code is passed in as a *string* [*]; while it is possible to
pass in a modified copy of WillHalt that's hardly a self-reference,
malignant or otherwise.

[*] one could construe it as an array of codons, but the two aren't
all that different, and one can also contemplate a machine whose
operations and operands are all ASCII characters.

--
#191, ewill3(a)earthlink.net
"640K ought to be enough for anybody."
- allegedly said by Bill Gates, 1981, but somebody had to make this up!

--
Posted via a free Usenet account from http://www.teranews.com

From: Peter Olcott on

"Frank Ch. Eigler" <fche(a)redhat.com> wrote in message
news:y0mlkn7vpli.fsf(a)ton.toronto.redhat.com...
>
> "Peter Olcott" <NoSpam(a)SeeScreen.com> writes:
>
>> No this is not what I said. If you feed LoopIfHalts2() to
>> WillHalt(), then WillHalt'() sees the MALIGNANT_SELF_REFERENCE to
>> itself.
>
> Malignant self reference appears to be the kind of disorder that makes
> you want to re-humiliate yourself every few years. Have you already
> forgotten summer of 2004?
>
> http://groups.google.com/group/comp.theory/msg/802adc0adb837521?hl=en&
>
> - FChE

If you can prove me wrong then simply do so. It might only take a single valid
counter-example, otherwise a single valid counter-example might not exist.


From: Peter Olcott on

"The Ghost In The Machine" <ewill(a)sirius.tg00suus7038.net> wrote in message
news:j7ht04-ghv.ln1(a)sirius.tg00suus7038.net...
> In sci.logic, Frank Ch. Eigler
> <fche(a)redhat.com>
> wrote
> on 22 Oct 2006 20:32:41 -0400
> <y0mlkn7vpli.fsf(a)ton.toronto.redhat.com>:
>>
>> "Peter Olcott" <NoSpam(a)SeeScreen.com> writes:
>>
>>> No this is not what I said. If you feed LoopIfHalts2() to
>>> WillHalt(), then WillHalt'() sees the MALIGNANT_SELF_REFERENCE to
>>> itself.
>>
>> Malignant self reference appears to be the kind of disorder that makes
>> you want to re-humiliate yourself every few years. Have you already
>> forgotten summer of 2004?
>>
>> http://groups.google.com/group/comp.theory/msg/802adc0adb837521?hl=en&
>>
>> - FChE
>
> Not to mention that a self-reference is in fact impossible in this
> problem. The code is passed in as a *string* [*]; while it is possible to
> pass in a modified copy of WillHalt that's hardly a self-reference,
> malignant or otherwise.

The WillHalt() function obviously performs a simulated execution trace, there is
no problem with doing this on the basis of source-code.

void LoopIfHalts(string SourceCode) {
if ( WillHalt(SourceCode, SourceCode) == TRUE )
while (TRUE) // loop forever
;
else
return;
}

int WillHalt(string SourceCode, string InputData) {
if (MalignantSelfReference(SourceCode, InputData))
return MALIGNANT_SELF_REFERENCE;
if ( TheProgramWillHalt(SourceCode, InputData) )
return TRUE;
else
return FALSE;
}

Hypothesis: There does not exist any possible set of SourceCode, InputData,
whereby detection of MALIGNANT_SELF_REFERENCE can be shown to be impossible. A
single valid counter-example is all that is required to correctly refute this
hypothesis.




>
> [*] one could construe it as an array of codons, but the two aren't
> all that different, and one can also contemplate a machine whose
> operations and operands are all ASCII characters.
>
> --
> #191, ewill3(a)earthlink.net
> "640K ought to be enough for anybody."
> - allegedly said by Bill Gates, 1981, but somebody had to make this up!
>
> --
> Posted via a free Usenet account from http://www.teranews.com
>