Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83 (MC840302); site klipper.UUCP Path: utzoo!watmath!clyde!cbosgd!ihnp4!houxm!whuxl!whuxlm!akgua!gatech!seismo!mcvax!vu44!botter!klipper!victor From: victor@klipper.UUCP (L. Victor Allis) Newsgroups: net.ai,net.philosophy Subject: Re: A halting problem Message-ID: <531@klipper.UUCP> Date: Sun, 12-Jan-86 09:59:46 EST Article-I.D.: klipper.531 Posted: Sun Jan 12 09:59:46 1986 Date-Received: Tue, 14-Jan-86 06:06:33 EST References: <2175@aecom.UUCP> Reply-To: victor@klipper.UUCP (L. Victor Allis) Distribution: net Organization: VU Informatica, Amsterdam Lines: 31 Xref: watmath net.ai:3166 net.philosophy:3745 In article <2175@aecom.UUCP> berger@aecom.UUCP (Micha Berger) writes: > The human mind, on the other hand, given enough time an >practice, can find an endless loop in any procedure. (You doubt this?) Try this one. I am very interested in a termination proof of the procedurecall Fermat(1, 1, 1, 1) : procedure Fermat(x, y, z, n : integer); begin if power(x, n) + power(y, n) = power(z, n) then writeln('Eureka') else begin repeat AssignNextValues(x, y, z, n) until n > 2; Fermat(x, y, z, n) end end; where 'power' is a function returning the obvious, and AssignNextValues is a function which takes four parameters and assigns the next four values to these parameters with respect to some ordering of the set of all ordered 4-tupels of natural numbers, which has a smallest element, (1, 1, 1, 1) in that ordering. L. Victor Allis Free University of Amsterdam The Netherlands.