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 17Apr09, 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 (ntuples
>>> 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/ontologforum/
> Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontologforum/
> Unsubscribe: mailto:ontologforumleave@xxxxxxxxxxxxxxxx
> Shared Files: http://ontolog.cim3.net/file/
> Community Wiki: http://ontolog.cim3.net/wiki/
> To join: http://ontolog.cim3.net/cgibin/wiki.pl?WikiHomePage#nid1J
> To Post: mailto:ontologforum@xxxxxxxxxxxxxxxx
> (04)
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontologforum/
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontologforum/
Unsubscribe: mailto:ontologforumleave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To join: http://ontolog.cim3.net/cgibin/wiki.pl?WikiHomePage#nid1J
To Post: mailto:ontologforum@xxxxxxxxxxxxxxxx (05)
