Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: Mikko Newsgroups: sci.logic Subject: Re: Mathematical incompleteness has always been a misconception --- Tarski Date: Wed, 26 Feb 2025 11:12:37 +0200 Organization: - Lines: 69 Message-ID: References: <7e532aaf77653daac5ca2b70bf26d0a3bc515abf@i2pn2.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Wed, 26 Feb 2025 10:12:38 +0100 (CET) Injection-Info: dont-email.me; posting-host="4125783ded271e1b1bd8769efb7241cf"; logging-data="2634048"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18r1gKB4w4LrFFVVtZv7/ps" User-Agent: Unison/2.2 Cancel-Lock: sha1:sY1GkXhQnDGtiPb16/wCxRJMvHQ= Bytes: 4339 On 2025-02-25 21:07:31 +0000, olcott said: > On 2/25/2025 9:27 AM, Mikko wrote: >> On 2025-02-24 21:31:26 +0000, olcott said: >> >>> On 2/24/2025 2:51 AM, Mikko wrote: >>>> On 2025-02-22 17:24:59 +0000, olcott said: >>>> >>>>> On 2/22/2025 3:12 AM, Mikko wrote: >>>>>> On 2025-02-21 23:22:23 +0000, olcott said: >>>>>> >>>>>>> On 2/20/2025 3:01 AM, Mikko wrote: >>>>>>>> On 2025-02-18 13:50:22 +0000, olcott said: >>>>>>>> >>>>>>>>> There is nothing like that in the following concrete example: >>>>>>>>> LP := ~True(LP) >>>>>>>>> >>>>>>>>> In other words you are saying the Prolog is incorrect >>>>>>>>> to reject the Liar Paradox. >>>>>>>>> >>>>>>>>> Above translated to Prolog >>>>>>>>> >>>>>>>>> ?- LP = not(true(LP)). >>>>>>>>> LP = not(true(LP)). >>>>>>>> >>>>>>>> According to Prolog rules LP = not(true(LP)) is permitted to fail. >>>>>>>> If it succeeds the operations using LP may misbehave. A memory >>>>>>>> leak is also possible. >>>>>>>> >>>>>>>>> ?- unify_with_occurs_check(LP, not(true(LP))). >>>>>>>>> false >>>>>>>> >>>>>>>> This merely means that the result of unification would be that LP conains >>>>>>>> itself. It could be a selmantically valid result but is not in the scope >>>>>>>> of Prolog language. >>>>>>>> >>>>>>> >>>>>>> It does not mean that. You are wrong. >>>>>> >>>>>> It does in the context where it was presented. More generally, >>>>>> unify_with_occurs_check also fails if the arguments are not >>>>>> unfiable. But this possibility is already excluded by their >>>>>> successfull unification. >>>>> >>>>> IT CANNOT POSSIBLY BE SEMANTICALLY VALID >>>> >>>> Of course it is. Its semantics is well defined by the Prolog standard. >>> >>> Go freaking read the Clocksin and Mellish. >>> an "infinite term" means NOT SEMANTICALLY VALID. >> >> Prolog does not define any semantics other than the execution semantics >> of a prolog program. Therefore no data structure has any own semantics. >> >> The result of the exectution of an instruction like LP == not(true(LP)) >> is not fully defined by the standard so we may say that that instruction >> is semantically invalid. >> > > When we ask for Prolog to determine whether an expression > in Prolog is true according to its facts and rules and the > evaluation of the expression gets stuck in an infinite loop > then this expression IS SEMANTICALLY INCORRECT. Which is not done anywhere above. -- Mikko