Path: utzoo!attcan!uunet!husc6!cmcl2!nrl-cmf!ames!pasteur!ucbvax!decwrl!labrea!sri-unix!garth!smryan
From: smryan@garth.UUCP (Steven Ryan)
Newsgroups: comp.lang.c
Subject: Re: Safe optimization
Summary: On (in)formally undecidable assumptions.
Message-ID: <798@garth.UUCP>
Date: 24 Jun 88 23:16:14 GMT
References: <16271@brl-adm.ARPA>
Reply-To: smryan@garth.UUCP (Steven Ryan)
Organization: INTERGRAPH (APD) -- Palo Alto, CA
Lines: 43
Church: Our Lady of Reluctant Software.

In article <16271@brl-adm.ARPA> dsill@nswc-oas.arpa (Dave Sill) writes:
>>> You are implying that programmers can solve unsolvable problems but
>>> that programs cannot, which is simply not true.
>>
>>Actually, you should keep your referents straight.  I might be
>>implying that humans can solve problems that are unsolvable by
>>COMPUTERS.  The truth of that is a matter of conjecture.
>
>You're absolutely right.  I *have* been assuming that the
>computational power of the human brain is subject to the Church-Turing
>[hypo-]Thesis.  I have no reason to believe that that is an incorrect
>assumption.

I have reason to believe that is an incorrect assumption, and I have no
reason to believe it's a correct assumption. No proof of course.

Dear friends, not everybody assumes this. So puleeeease, don't hold compilers
up to this possible/impossible standard. If you want something everybody
can accept, deal with the existing technology rather than building castles
in the air.

>Yes, we've been through all this before.  Your example is ....

Before another round of examples and counterexamples, are you prepared to
write a total recursive predicate that can verify all practical cases of
aliassing? (Not all possible cases--a sufficiently large set of practical
cases will do.) Given the modern technology, can you guarentee a compiler
could recognise the predicate?

>	assert (i != j);

Actually on Vax or Cyber 180, words need not be on word boundaries, so you
need
	assert(abs(i-j)>=word_separation)

The real issue is not whether this can be detected, but what is the
cost/risk tradeoff? Is it so risky we might as well use assembly?
Is it so costly we have to use assembly?

-----------------------------------
Neurotics build castles in the air.
Psychotics live in them.
Psychiatrists collect the rent.