Folks,
I've posted my summary of the reasons we had for our original consensus
to use first order logic for the ontolog effort. I've also included the
text below. (01)
<http://ontolog.cim3.net/cgi-bin/wiki.pl?Methodology> (bottom of the page) (02)
Adam (03)
* The issue about whether to create a formal ontology in first order
logic seems to have resurfaced. This is an attempt to summarize our reasons
for our earlier consensus on using first order logic. (--AdamPease /
2003-07-31) (0112) (04)
o There were several reasons for the earlier consensus to use
KIF but foremost among them was the stated purpose of this effort - to
formalize the content in the UBL, rather than leaving definitions in
English. If we create the ontology in Protege, we'll be left with stating
definitions in English. We could state axioms in the comment fields, but
Protege can't make any use of those axioms, and the tool does not contain
even the most basic functions like hyperlinking the terms in a pseudo-axiom
comment. (--AdamPease / 2003-07-31) (0110) (05)
o Protege is a good way to get one's feet wet in ontology. It's
very easy to use. But it has to be seen as a mere stepping stone to our
objective. If we linger too long with it, the resulting model will reflect
Protege's representational capabilities. For those of us who are
programmers, I'm sure we all will have an anecdote about another programmer
who "writes Fortran in C" or who "writes C in C++". In order to create code
that is idiomatic in a given language one needs to write in that language
at the very least, and make use of its facilities over time, while one
develops proficiency. (--AdamPease / 2003-07-31) (0108) (06)
o Frame representations have the limitation of not being able to
represent three-way (or higher number) relations. One has to divide any
three-way relation into three binary relations with a new "relation ID"
term. This is very awkward both for representation and reasoning. So
(between A B C) becomes (between1 A gensym1) (between2 B gensym1) (between3
C gensym1). (0114) (07)
o Another problem with frames is in the representation of
negation. In logic we can simply enclose any formula in (not ...) to negate
it so (likes Mary Bill) can become (not (likes Mary Bill). With a frame
system we have to create the opposite version of the predicate, say
"dislikes". That results in doubling the number of relations, since every
predicate must have an opposite. Maybe that wouldn't be so bad, but one
would still be limited to negating individual statements, rather than
abitrary formulas (which a frame system can't represent anyway). The list
of things a frame system can't handle is extensive. (0115) (08)
o If we stick with a frame representation for long, we'll wind
up recreating a lot of the content of SUMO, simply because frames can't
handle the content that already exists. (0116) (09)
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Subscribe/Unsubscribe/Config:
http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx (010)
|