Pat, (01)
Some fundamental principles: (02)
1. A computer cannot do anything with "intended meanings" in the
head of some programmer or some human being who runs the program. (03)
2. The only meanings that are relevant to the computer are the ones
that are embodied in the programs that the computer runs. (04)
3. Those meanings must be derived from some kind of specifications,
which are translated into executable machine code either by a
human programmer or by some compiler that automatically translates
a formal specification into executable code. (05)
4. If we want to use an ontology to ensure interoperability those
specifications must be so precisely defined that any two coders
(human or machine) will generate equivalent machine code. (06)
5. Words like 'primitive' are so vaguely defined that they provide
little or no guidance to programmers. Pat H. and I have been
trying to explain the formal relationships between specifications
and machine code. Arguments over the meanings of words like
'primitive' are irrelevant. (07)
PC> Given these two interpretations of "primitive" in a **mathematical**
> theory, it seems that the "meanings" of terms (including primitive
> terms) in a mathematical theory have little resemblance to the
> meanings of terms in a computational ontology that is intended to
> serve some useful purpose... (08)
The useful purpose we are talking about is translating a specification
into machine code. Any "intended meanings" that aren't in the formal
spec's aren't going to end up in the executable code. (09)
PC> ... the meanings of the terms in the ontology do not depend solely
> on the total sum of all the inferences derivable from the logic, but
> on the **intended meanings**, which do or at least should control
> the way the elements are used in applications. (010)
That is sheer nonsense. If those intended meanings aren't in the
spec's, they won't get into the machine code. And if the spec's
aren't precise, different programmers will write incompatible codes,
which won't be interoperable. (011)
PC> The intended meanings can be understood by human programmers not
> only from the relations on the ontology elements, but also from the
> linguistic documentation, which may reiterate in less formal terms
> the direct assertions on each element, but may also include additional
> clarification and examples of included or excluded instances. (012)
I agree that programmers often do things like that. But the result is
incompatible implementations that can't interoperate. The whole purpose
of a formal ontology is to support interoperability. (013)
What you're suggesting is that we should abandon all hope of ever
using precise specifications of any kind. (014)
PC> It seems quite clear to me that it is a mistake to assume that
> the interpretation of "meaning" or "primitive" in a mathematical
> theorem is the same as the way that "meaning" and "primitive" are
> used in practical computational ontologies. (015)
The standards of precision of mathematics have been adopted by
engineers in high-tech industries for years. In fact, engineers
and scientists have used such levels of precision since the 19th
century. What you're suggesting is that we should abandon 150
years of engineering practice. (016)
There is no point in continuing this discussion. (017)
John (018)
_________________________________________________________________
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 (019)
|