[Top] [All Lists]

Re: [ontolog-forum] Re Foundation ontology, CYC, and Mapping

To: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: "John F. Sowa" <sowa@xxxxxxxxxxx>
Date: Sun, 28 Mar 2010 21:32:35 -0500
Message-id: <4BB01143.1090307@xxxxxxxxxxx>
Kevin and Pavithra,    (01)

KDK> I think we have a different view of what is "simpler".    (02)

Yes, indeed!    (03)

KDK> If you start with only FOL, then you need to define arithmetic
 > before you can move on to defining what is a valid financial report.    (04)

No!  If you start with FOL, you have 120 years worth of very well
documented definitions.  In fact, the Mathematica system has defined
practically every function and mathematical system that is used in
any branch of science, engineering, statistics, and other fields.
And most of those definitions are available for free download.    (05)

If you use the CLIF dialect, you do arithmetic by writing (+ x y),
(* x y), and (/ x y).  If you are using a dialect with infix notation,
you can write x+y, x*y, and x/y.    (06)

There are two styles of writing logical expressions:  functional style,
as in many languages such as ML, Haskell, etc.; or relational style,
as in Prolog, Datalog, and other logic programming languages.    (07)

Learn Mathematica.  Learn Prolog.  Learn functional programming.
All those techniques have been defined, implemented, and used
for over 30 years.  And anything you can do with those languages
is acceptable in FOL.    (08)

KDK> As far as I can see, the problem is not the formalisms, it's
 > the content.    (09)

Yes, indeed!  That's why there is no need to define new kinds
of languages.  The hard work has been done, and you can focus
on the content.    (010)

PK> ... find  using logic and axioms explicitly  too linear.
 > Too many statements, to say one thing.   We were taught to use
 > theory in an implicit manner to prove the design..    (011)

Proving program correctness is hard to do, and that's not what
I've been recommending.    (012)

I suggest that you learn functional programming, logic programming,
and Mathematica.  All three of those styles are applicable to logic,
and each of them has certain advantages over the others for certain
kinds of applications.  For any algorithm you can program in Java,
one of those three styles will enable you to write the same thing
in fewer lines of code and sometimes a tiny fraction of the number
of lines of code.    (013)

PK> Is it always necessary to give the detail explanation in linear
 > way?   To me, axioms and logic feels that way.    (014)

Try using Prolog and Mathematica.  It will be a revelation.    (015)

John    (016)

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    (017)

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