Alex, Gary, Dan B.
Before writing any detailed comments, I want to emphasize three points: (1) Major
software systems survive in one form or another for 40 years or more. Few, if any precise
definitions from the early days remain unchanged for more than a tiny fraction of that
time. As an example, IBM developed the first Airline reservation system for American
Airlines in the 1960s to run on the IBM 7094. An updated version of that became IBM's
airline reservation system running on System/360. The ontology and terminology of that
system became the industry-wide basis for all reservations for hotels, cars, and any kind
of services that travelers might need. The ontology and choice of word definitions that
IBM adopted in collaboration with American Airlines has become the universal world-wide
standard. The formal definitions change with every update, but the choice of words and
their translations from English to other languages do not change.
(2) The researchers and programmers working on the details of any system may understand
the formal details, but the top-level managers, the great majority of the users, and the
investors who have money will never see or understand the details of those definitions.
They will interpret the terminology according to the way those words are used in everyday
life. If the formal definitions diverge too far from common usage, the result will be
confusion and repeated errors.
(3) Any attempt to edict an official, precise definition for all terms will guarantee
that whatever system uses those terms exactly as defined will become obsolete within a few
years. Please note that the manuals for every product -- from a refrigerator to a
programming language -- will have a new manual with new definitions of key terms for every
update.
IBM used the term 'functionally stabilized' for any hardware or software system
whose terminology would never change. That term was a synonym for "obsolete".
IBM would continue to sell those obsolete systems to customers who could not afford to
update their systems to accommodate the new products. Microsoft, for example, just
recently stopped producing and delivering updates for System/95 (wjocj was introduced in
1995)..
Alex> Is there a chance to have one world wide dictionary for every science and
technology?
You can define it, if you like, but it is guaranteed to become obsolete with the first new
discovery in science or new development in engineering. And even if you define it,
99.999% of the people in the world would never use more than a tiny percentage of the
words as defined.
Alex> AI is first of all summa technologiae, each with its own glossary.
There is no universal glossary of AI. New terms are constantly being defined by people
who never read or understood similar terms that had been defined and published before. AI
terminology changes very rapidly because many AI people never read anything that is more
than five years old.
Alex> Why is the theory of directed graphs with composition of arrows called category
theory?
For historical reasons. Mathematicians, unlike Ai people, cite publications of any date
and make updates compatible with the original definitions.
Alex> Why did the DBMS guys call their company Oracle?
Because it answered questions, like an oracle. There are many horror stories about
compatibility in DB systems, but they developed in different ways than AI for different
reasons -- mostly bad: preserving incompatibility. Preserving incompatibility was also
one of the worst reasons for Windows 95. But that is another story.
Dan> In general, ML-AI terminology is a mess. Eg Labelled/unlabelled data,
unsupervised/supervised learning, giving way (thankfully) to the otherwise wordy
“self-supervised”. And the word “inference” is used in ways that might make some
ontolog-forum readers splutter their coffee.
That's a good answer to Alex's questions.
Gary> One may leverage results from prior efforts with best practices but often we
don't have the vision or time or temperament to do this.
That's a good explanation for the points by Alex and Dan.
In summary, most people who need to know something about Ai technology (users and funding
agencies, for example) will not know or remember the detail of a formal definition, Even
if they read the definition, it will be easier to understand and remember if the words are
used in ways that are consistent with common usage -- as codified in common dictionaries.
An example of a bad choice is the term 'fundamental model'. Both words are
commonly used, but that combination does not give any hint of what the term means. But
the terms 'functional pattern' and 'structural pattern' use common words
that give an approximate idea of the meaning. That makes them easier to learn, easier to
remember and easier to use by everybody -- programmers, managers, funding agencies, and
intelligent outsiders who want to know what is happening.
John