ontolog-forum
[Top] [All Lists]

Re: [ontolog-forum] web-syllogism-and-worldview

To: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
Cc: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: Duane Nickull <dnickull@xxxxxxxxx>
Date: Fri, 17 Apr 2009 14:06:10 -0700
Message-id: <16B88C97-4B30-4012-9520-356D2503B9DD@xxxxxxxxx>
I have to agree with chris here. I can terminate both a runtime and a  
program. I find this statement confusing. Caveat:  maybe I missed  
something.    (01)

Sent from my iPhone    (02)

On 17-Apr-09, at 15:36, "Christopher Menzel" <cmenzel@xxxxxxxx> wrote:    (03)

>> CM > I am not understanding some of your terminology here.  As
>> standardly
>>> (and pretty much universally) defined in logic, syllogisms are
>>> arguments with two premises and a conclusion satisfying a certain
>>> general form in which the notion of recursion plays no role whatever
>>
>> Sorry Chris, I should have referenced the following threads better:
>>
>> AW >> The problem with the "syllogisms will never work" argument
>>>> is that, if you allow them to be recursive, they have Turing
>>>> machine power.  That means that they can compute anything that
>>>> can be computed.
>>
>> JFS > Every major programming language (e.g., FORTRAN, COBOL, LISP,
>>> ALGOL, PL/I, C, C++, C#, Ada, Java, Python, Ruby, PHP, etc.)
>>> has the following two properties:
>>>
>>> 1. They have the power of a Turing machine.
>>>
>>> 2. It's undecidable whether an arbitrary program written in
>>>  any of those languages will terminate.
>>
>> My response was to the argument that if we allow syllogisms to be
>> recursive, they will become useless.  JFS's point, I believe, was  
>> that
>> this since programming language constructs are based on turing
>> machines, which are recursive, there's no issue here.
>
> If I can restate: Your claim was that if, in a logical framework
> capable of expressing syllogisms, syllogisms are allowed to be
> recursive, then the resulting framework will be useless because it
> will have the expressive power of a (universal) Turing machine.
> John's response is that all programming languages have that power and
> are, obviously, useful.  John's response therefore seems to be a
> counterexample to your claim.
>
>> My point was, apologies for not stating it clearly, this would rid
>> of completeness, for example in FOL.
>
> I'm afraid I still do not understand.  It is just a fact that FOL is
> complete.  There's nothing you can do such that it would no longer be
> a fact.
>
>> CM> Second, what do you mean by a "proper recursive function"?  A
>>> recursive function is simply a mathematical function from (n-tuples
>>> of) natural numbers to natural numbers..... A "stop condition" (if
>>> I'm understanding you) is a programming construct that has nothing  
>>> to
>>> do with functions per se.
>>
>> I meant it as a purely programming construct. Some of the original
>> arguments about syllogisms, I felt, were not always applicable to
>> implementation. I mentioned that ontologies are practical things for
>> us to use. The same goes for programming languages.  So if we can get
>> around the unsatifiability of turing machines in programming
>> languages, why not ontologies.
>
> Again a terminological issue.  What do you mean by "the
> unsatisfiability of Turing machines in programming languages"?  Every
> (standard) programming language is capable of expressing exactly the
> functions calculated by a Turing machine.
>
>> CM>For this appears to mean that,
>>> for any recursive function, a program that calculates that function
>>> has to terminate when executed.  And that, of course, is false.
>>
>> You're correct.  I wasn't referring to the a program that calculates
>> any recursive function, satisfiable or not.  Here, a "proper  
>> recursive
>> function" is one that does terminates, and the calling program will
>> terminate, or not terminate for an "improper function" accordingly.
>
>
> Well, I think your terminology here will lead you to be
> misunderstood.  The idea of a *function* terminating or not is a
> category mistake; *programs* terminate (on this or that input).  If
> program P expresses a function F, then P terminates on input
> representing the number n if and only if F is *defined* on n; that is,
> if and only if F(n) has a value.  A recursive function that is defined
> on every natural number is said to be *total*; one that is defined
> only on a subset of the natural numbers is said to be *partial*.  I
> think your "proper" and "improper" terminology is problematic.
>
> -chris
>
>
>
> _________________________________________________________________
> Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
> Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
> Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
> Shared Files: http://ontolog.cim3.net/file/
> Community Wiki: http://ontolog.cim3.net/wiki/
> To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J
> To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx
>    (04)

_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/  
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/  
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/ 
To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx    (05)

<Prev in Thread] Current Thread [Next in Thread>