ontology-summit
[Top] [All Lists]

Re: [ontology-summit] INCOSE Ontology Action Group, onto SysML/UML

To: ontology-summit@xxxxxxxxxxxxxxxx
From: "John F. Sowa" <sowa@xxxxxxxxxxx>
Date: Wed, 07 Mar 2012 15:04:35 -0500
Message-id: <4F57BF53.6000004@xxxxxxxxxxx>
Henson,    (01)

> John's principles and their application summarize the issue well for those
> who think that formal semantics, and formal ontology have great benefits for
> better models, improved collaboration, well-defined standards, and
> incorporating reasoning.    (02)

Thanks for the note of support.    (03)

I would also like to comment on a related point:  Applications have
always been the strongest driver of research.  It's no accident that
logic was most strongly developed in ancient Athens:  the primary
application was for arguing a case in a court of law:    (04)

  1. Ancient Greeks were as litigious as modern Americans.  But there was
     one major difference:  Nobody could hire a lawyer to plead the case.
     Both plaintiff and defendant had to speak for themselves in court.    (05)

  2. That gave the Sophists a lucrative source of income:  teach people
     how to prepare and present their cases in court.  This led to a
     rapid development in rhetoric and methods of argument.    (06)

  3. But Socrates and Plato condemned the Sophists for fallacies that
     "made the weaker case appear to be the stronger".  In his dialogs,
     Plato had Socrates ask leading questions to expose weaknesses in
     reasoning -- one could imagine that as common practice in court.    (07)

  4. As further evidence, note that before Aristotle, the primary sense
     of the word _kategoria_ was "an accusation in a court of law".    (08)

> For example the... practice of physics eventually had a strong
> impact on mathematics.    (09)

I'd replace the word 'eventually' with 'almost always'.  The Sumerian
and Babylonian astronomers made many contributions mathematics.  They
divided the circle in 360 degrees, and they also had tables of right-
angled triangles that indicated they knew the so-called theorem of
Pythagoras.  The yearly floods along the Nile led the Egyptians to
develop geometry -- and Pythagoras spent enough time in Egypt to be
initiated into the Egyptian priesthood before returning to Greece.    (010)

Both Newton and Leibniz developed calculus for applications to physics.
It took the mathematicians almost two centuries to prove that calculus
was sound.  Another example is the Dirac delta function, which the
physicists long used before mathematicians caught up.  Even more
recently, Abraham Robinson finally showed that infinitesimals, as
used by Newton and Leibniz, are sound -- and much easier to use
and to teach than epsilons and deltas.    (011)

> I mention the UML situation as it seems topical. First I watched the
> adoption of UML/SysML as the standard practice in an aerospace company. This
> took about 10 years. Initially there was immense resistance from engineers,
> system engineers couldn't see the need for anything beyond PowerPoint and
> Excel, and software engineers only wanted to do code. Managers came on board
> even more slowly as PowerPoint was the only thing they understood. They ways
> were the transition went wrong and what caused it to eventually work are
> very interesting but would take too long to spell out here.    (012)

Although modern logic was developed before UML, the practice of using
diagrams as aids to reasoning is ancient.  The most common UML diagram
is the type hierarchy, and that's a direct descendant of the Tree of
Porphyry from the 3rd century AD.  Every textbook on logic until the
early 20th century used it to illustrate Aristotle's categories and
syllogisms.  Even St. Augustine in the 5th century said that the
teachers were always "drawing figures in the dust".    (013)

> As many of you know PowerPoint design generally does not correspond
> to what the  design actually is.    (014)

Yes.  People joke about systems that are "implemented in PowerPoint".
The only way to ensure that the documentation is consistent with the
implementation is to *derive* it *from* the implementation.  You can
do that if you have formal mappings to and from the diagrams.    (015)

> One can by extending UML with some DL class constructions represent these
> assumptions and use automated inference to continually track evolving design
> consistency. I think there is good reason to believe that engineers will buy
> into this.    (016)

I consider the current tools to be an early stage of what can and should
be developed.  Note that UML started with 6 diagram types and later
expanded to 11 types.  I consider both 6 and 11 to be inadequate
approximations to infinity, and I consider the current suite of SW
logics to be inadequate representations of the full semantics.    (017)

Ideally, every aspect of system design should be specified in multiple
ways that can be automatically translated from one to another:    (018)

  1. A rich, formally defined and highly expressive version of logic.    (019)

  2. Subsets of logic that are specialized for efficient computation
     and implementation of various aspects of a system design and
     of the data it processes.    (020)

  3. Formally defined, but highly readable diagrams that are tailored
     to various aspects of the system.  These diagrams could be mapped
     to and from the subset logics (point #2) and/or the full logic (#1).    (021)

  4. Controlled natural language(s) that can be mapped to and from any
     of the notations above (#1, #2, and #3).  Some aspects are easier
     to see in diagrams and others are easier to explain in language.
     But we need both.    (022)

  5. Mappings of all the above notations to and from the implementation
     languages for procedures and data.  Those include procedural and
     declarative languages, and databases and data structures in any
     formats that are appropriate for any of the applications.    (023)

  6. Mappings of all of the above to and from annotations and comments
     nested in the data and program sources and/or in documentation
     that is keyed to the data and program sources.    (024)

  7. A open-ended suite of tools that support all of the above.    (025)

I don't expect every component to be implemented all at once. But the
formal logic in #1 must come first.  Having a solid foundation enables
developers to work independently on different pieces of the puzzle
while ensuring that the semantics of each piece is a proper subset
of the semantics of the entire system.    (026)

Note that I call this a framework for a semantic system.  I consider
the Semantic Web to be one important piece of the puzzle that focuses
on points #5, #6, and #7 for data in WWW formats.  But the formatting
that is efficient for one kind of application may be very inefficient
for some other application.  Points #1, #2, #3, and #4 should be
sufficiently general to accommodate an open ended variety of
applications.    (027)

For examples of how the design diagrams relate to the ontology
specifications, I'd like to mention the following slides by
Conrad Bock:    (028)

    http://conradbock.org/ontological-product-modeling-short-slides.pdf    (029)

The diagrams in these slides can be specified formally.  Incorporating
them in a framework such as the one above can go a long way toward
making formal semantics acceptable for practicing engineers -- and
that includes mechanical engineers, chemical engineers, and even
software engineers.    (030)

John    (031)

_________________________________________________________________
Msg Archives: http://ontolog.cim3.net/forum/ontology-summit/   
Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontology-summit/  
Unsubscribe: mailto:ontology-summit-leave@xxxxxxxxxxxxxxxx
Community Files: http://ontolog.cim3.net/file/work/OntologySummit2012/
Community Wiki: http://ontolog.cim3.net/cgi-bin/wiki.pl?OntologySummit2012  
Community Portal: http://ontolog.cim3.net/wiki/     (032)
<Prev in Thread] Current Thread [Next in Thread>