ontolog-forum
[Top] [All Lists]

Re: [ontolog-forum] What words mean

To: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: "John F. Sowa" <sowa@xxxxxxxxxxx>
Date: Sat, 23 Feb 2008 11:58:14 -0500
Message-id: <47C050A6.6010208@xxxxxxxxxxx>
Azamat,    (01)

Your list is a good example of the way trees have been used,
but I'd like to add a few caveats.  One reason why trees
are so widely used is that they are easy to represent with
simple notations and process with simple algorithms.    (02)

In general, simplicity is good.  But people often get stuck
with simple implementations that are difficult or impossible
to extend to cover all the exceptions.    (03)

> 1. in order theory and set theory, the tree structure makes
 > a special kind of partial order;    (04)

I agree.  But as you know, the subset relation over sets defines
a lattice.  So we have to accommodate multiple kinds of relations
at the same time, and it's good to have a general way of doing so.    (05)

> 2. in graph theory, it makes a connected acyclic graph, undirected
 > or directed;    (06)

I also agree.  But people often start with a tree and later discover
that there are exceptions that require a more general partial order.    (07)

> 3. in knowledge representation, it reflects all taxonomic knowledge;    (08)

I strongly disagree with the word 'all'.  The biological taxonomy
produces a very impressive tree.  But the original tree proposed by
Linnaeus has been revised by the modern theory of cladistics.    (09)

> 4. in family, it represents phylogenetic family trees, cladograms;    (010)

The cladograms are also trees, and there is a mapping from the old
trees to the new ones.  But there are many exceptions along the way.
A common one is hybrids, which create new links that do not conform
to the tree structure.    (011)

Some hybrids, such as mules, are not fertile, but others are.
At the more primitive level of bacteria, there is a lot of gene
sharing, which makes any kind of tree structure oversimplified.
And now biologists are discovering that genetic material of
various kinds can be shared even at the highest levels.  They
used to think that the process of cell division preserved the
genetic structure.  But they now realize it is a highly error
prone operation, which requires continuous fixing to keep it
from disintegrating -- and the fixes don't always work.    (012)

> 5. in society, any hierarchical social structure;    (013)

Yes, but *every* hierarchical social structure has numerous
exceptions.  In business, for example, managers like to enforce
a strict hierarchy, but there are all sorts of "dotted line"
connections that cross the strict lines of the tree -- and those
lines, which are supposed to be temporary, can become very complex,
entangled, and as permanent as any others.    (014)

> 6. in linguistics, syntactic phrasal structure as S -> NP VP;    (015)

That's another example of an attempt to force a tree structure
over something that has an open-ended number of exceptions.
In the artificial languages of computer science, the programmer
has complete control over the language.  But after the original
design has been completed, people add all kinds of patches to
handle exceptions.  For natural languages, nobody has ever been
able to define a complete and stable tree structure for the
grammar of any language.  (And anybody who claims to have such
a structure has never tested a parser on any natural language
as people actually use it -- one page is usually enough to
break any parser.  This email note is a good example.)    (016)

> 7. in library science, Dewey Decimal System;    (017)

Yes, but every librarian admits that *every* tree structure that
has ever been proposed has an incredible number of exceptions.
The software or the bookshelves enforce a tree structure, but
the final placement of most books in the hierarchy is seldom
easy to determine and often highly arbitrary.    (018)

> 8. in internet and Telecommunications, root nodes servers,
 > domain servers, etc;    (019)

The syntax of the naming scheme defines a tree structure, but
cross links of many different kinds create numerous exceptions.
There are many different proposals that generate arbitrary
networks with dynamically changeable interconnections.  In 2002,
I proposed such a system, called the Flexible Modular Framework:    (020)

    http://www.jfsowa.com/pubs/arch.htm
    Architectures for Intelligent Systems    (021)

At VivoMind, we have implemented a version of the FMF based on
that article that is very efficient and flexible.  (Disclaimer:
this is not an advertisement for VivoMind, but for the idea that
a strict tree is too limited for many important applications.)    (022)

> 9. in web, Yahoo subject index, OPD, the arrangement of web pages
 > in a web site    (023)

Again, see the comments in points #7 and #8 above.    (024)

> 10. in computing, tree data structure.    (025)

I want to stress several points about computing:    (026)

  1. Linear sequences, such as strings and vectors, are very good for
     many applications.  But for many structures, such as languages,
     strings must be supplemented with mechanisms for exceptions, such
     as parentheses, section headings, and cross references.    (027)

  2. Trees can handle everything that strings can represent, but they
     can also accommodate the section headings and parenthesized
     substructures.  However, they still require more structure to
     handle cross references.    (028)

  3. General graph structures include all the above cases in a more
     systematic way.  But graphs also require ways of encapsulating
     closely related components in order to reduce the number of nodes
     that must be processed at any level.  But as soon as you start
     to encapsulate some group of nodes, you discover a need for ways
     to support references that cross the boundaries of the capsules.    (029)

Then we must remember that all those data structures are designed
to be programmed on a *digital* computer.  The brain of any animal,
from a worm on up, supports continuously variable processes that
may be chemical, electrical, or biological (whatever that means).    (030)

And even though neurons look graph-like, the interconnections are
much more complex than the pointers that connect a graph, and they
have continuously variable strengths that change continuously as
they are used (or not).  Unlike the nodes of a graph, every neuron,
by itself, might be as complex as a Turing machine -- but nobody
really knows.    (031)

 > Re synonyms... synonymity is the semantic relation marked by
 > transitivity, as other semantic relationships:  hypernymy,
 > hyponymy, holonymy and meronymy.    (032)

Those are more terms that look nice in a mathematical theory,
but in practice, the exceptions often overwhelm the cases that
fit the theory.  Many linguists claim that there are no true
synonyms in the sense that you can replace one word X with
another word Y in every sentence without any change in meaning.    (033)

Very few, if any, of the words in the so-called synsets of WordNet
can satisfy that criterion of synonymy.  It would be more accurate
to say that the WordNet synsets represent clouds or clusters of
related words that can sometimes replace one another with small
changes of meaning.    (034)

In summary, I am completely in favor of using elegant mathematical
structures in our programs.  Systems that don't use appropriate
theories of logic and mathematics usually break more often than
ones that do, and they break in more unpredictable ways.  But I
want to emphasize that we have *no* theories that can be applied
without exceptions.  And people who try to dismiss or ignore the
exceptions do so at their own peril -- even worse, at the peril
of people other than the guilty ones.    (035)

John    (036)


_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/  
Subscribe/Config: 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 Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx    (037)

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