[Top] [All Lists]

Re: [ontolog-forum] Webby objects

To: ontolog-forum@xxxxxxxxxxxxxxxx
From: John F Sowa <sowa@xxxxxxxxxxx>
Date: Tue, 20 Nov 2012 12:35:42 -0500
Message-id: <50ABBF6E.8000401@xxxxxxxxxxx>
Ed, Chris, Amanda, Doug, and Rich,    (01)

I'll start by emphasizing that I have no objection to anyone
developing or using any tools or notations they find useful.  My
primary objection to what became of the Semantic Web is the loss
of most of the goals stated in Tim B-L's original DAML proposal.    (02)

The three terms Tim emphasized were diversity, heterogeneity, and
interoperability.  All of them disappeared from the final DAML report.
Even tools that had been developed to use RDF and OWL, such as SWRL
and RuleML, were omitted or deprecated.    (03)

The letter A in DAML is for Agents.  To express messages among
heterogeneous agents, Tim proposed SWeLL (Semantic Web Logic Language)
as a superset of propositional, first-order, and higher-order logic.
SWeLL required high expressive power to accommodate everything that
could be expressed in any or all of the languages and systems cited.    (04)

The insistence on decidability is incompatible with heterogeneity.
But some of the most efficient implementations translate OWL to Prolog,
which is undecidable.  Some people may claim that Prolog includes
procedural features that are outside logic.  But there are many other
logic-based approaches that have been ignored.  For example, see    (05)

    A Sorted-Graph Unification Approach to the Semantic Web    (06)

What I am arguing *for* is the diversity that Tim emphasized and
cited in his original proposal, the diversity among the 22 groups
that were supposedly included in the DAML project, the wide range
of R & D that has been done since 2005, and *most* importantly,
seamless integration with the tools and notations of mainstream IT.    (07)

>> Note that a procedure can be decidable for some data, but
>> undecidable for other data.    (08)

> Right.  So a desirable procedure should be decidable on all the data
> it will be asked to process.  No one cares whether one can write
> undecidable programs in the language.    (09)

Yes, but I'd add some qualifications.  FOL has a large number of
complexity classes, many of which can be distinguished by simple
syntactic checks on the data and/or the axioms about the data.  Cyc,
for example, perform such checks to see which procedure(s) to use.    (010)

Since most systems today have multiple CPUs, some systems start
a "horse race" among several procedures, pick the one(s) that
finish early, and stop the others.  IBM's Watson with 2880 CPUs
uses this approach heavily.    (011)

> Industry has been using logics for the (b)/(c) cases for at least 25
> years, and we now know a lot about the relationships between reasoning
> algorithms, base theories, and decidability and computational bounding.
> Almost all of the logics used for (b)/(c) are constrained FOLs or "not
> FOL", and almost all of the algorithms used with these logics are
> computationally bounded.  That is why they are commonly used in industry.    (012)

There are many complex reasons, and they keep changing with the kinds
of technology available.  My main point is that any one-size-fits-all
solution is going to be wrong for many important applications.    (013)

> The problem of not knowing the relationship between input
> data -- the sets of valid sentences -- and the "not determinable"
> result is what causes industry to shy away from FOL reasoners.    (014)

> We devised a system that could guarantee that the combined algorithm
> would produce a valid answer when that answer was needed (a variable
> amount of time with a minimum value), but could normally calculate a
> better answer through heuristic calculations.    (015)

I also cite the paper by Bill Andersen et al., in which they developed
a knowledge compiler that translates axioms expressed in CycL (a highly
expressive superset of FOL) into Horn-clause rules for an inference
engine and into SQL constraints for a relational DB.  That was the
R & D that led them to found OntologyWorks (now HighFleet).  For
discussion of that approach (and others), see page 6 of    (016)

    http://www.jfsowa.com/pubs/fflogic.pdf    (017)

OntologyWorks took a while to build up the business, but HighFleet
now gets more business than they can handle.    (018)

> I just want to point out that Ian Horrocks has developed reasoners
> such as FaCT which count as application programs. His group develops
> the HermiT and ELK reasoners which we use every day in the development
> of the Gene Ontology (as well as numerous other biological ontologies).    (019)

I'm glad that Ian is doing something useful. But a reasoner, by itself,
is not an application program.    (020)

FOL is actually easier for humans to read and write than OWL DL.
And it can be stated in controlled NLs.  A knowledge compiler can
translate FOL to whatever format is needed for whatever reasoning
engine and database is used.    (021)

> The real valuable work comes from identifying logic languages and procedures
> that maximize expressiveness, usability, and reasoning within the domain
> of statements and tasks the user needs. That is more complex and subtle.
> There are lots of ways to design systems to either disallow certain
> statements (IMHO, better done semantically than via unusably counter-
> intuitive or restricted syntax), or decline to process certain reasoning
> patters that have a high rabbit-hole risk, or cut out after a certain time,
> or use other techniques to tune performance. The line between decidable and
> undecidable systems is not a sweet spot for this.    (022)

I very strongly agree.    (023)

> Constraint propagation is another example of something you can't usually
> do in a program with a tree structured design; it requires that the
> program investigate constraint sets that are cross coupled.  Constraints
> that are not cross coupled are not very useful    (024)

Yes.  That is another problem with OWL.  No OWL ontology can specify
any structure that is not tree.  You can't specify the constraints
of a triangle or a bridge truss built up of multiple triangles.    (025)

> ... by "a guaranteed finite-time result," I meant "a result guaranteed
> to come with an unknown, but finite, amount of time.  That's the guarantee
> that comes with "decidable" and is of little-to-no value in deployed
> applications.    (026)

Yes, indeed.  NP complete algorithms are decidable, but they can take
more time than the age of the universe.  That's not useful.    (027)

> John Sowa originally wrote that no user asks for decidability, users
> always ask for more expressiveness.  I have yet to hear a user ask for
> either.  Industry users are interested in capability and performance.    (028)

I was quoting Bob MacGregor.  His users were familiar with DL systems,
since PowerLOOM included a DL reasoner as one component.   But I agree
with the final sentence.    (029)

>> The line between decidable and undecidable systems is not
>> a sweet spot for this.    (030)

> But the line between DLs and FOLs *is* a sweet spot for this.    (031)

No. The sweet spot for OWL is the subset used by GoodRelations and
adopted by Schema.org.  They ignored all other features of OWL.    (032)

For that subset, there are superfast algorithms that can generate
a consistent type hierarchy (actually a lattice) automatically.
For example, see the home page for Formal Concept Analysis (FCA):    (033)

    http://www.upriss.org.uk/fca/fca.html    (034)

In fact, FCA tools are also used to check an OWL hierarchy for
consistency or even to generate the OWL hierarchy automatically.
For details, type "FCA OWL concept" to your favorite search engine.    (035)

> A multiple-method system is often the best performer. The overwhelming
> majority of systems I see, read about, or hear about attempt to use a
> single reasoning method to solving all problems. Whatever that method is,
> it may perform well on some of the problems within the domain of use; it
> often performs poorly on many others, or even rules out addressing them at
> all.    (036)

I very strongly agree.    (037)

Recommendations:    (038)

  1. Support the original DAML proposal for message passing in a highly
     expressive logic among multiple heterogeneous.    (039)

  2. Don't reject any tools or notations that anyone has found useful.
     That includes all current SW tools.  But even more important are
     all the legacy systems of mainstream IT and all the newly emerging
     research projects that may become the future mainstream.    (040)

  3. Promote R & D on simplifying the interfaces and techniques for
     knowledge representation, acquisition, and use.  We need tools
     with better human factors and with automatic generation of the
     formats required for reasoning.  Better graphics, controlled
     natural languages, FCA, and knowledge compilation are examples.    (041)

  4. A smooth migration path from the tools and methodologies of
     mainstream IT to the new technology is essential.  UML diagrams,
     for example, are already integrated with mainstream IT.  They
     can be added to the Schema.org vocabularies to support a superset
     of what can be specified in OWL, but in a humanly readable form
     that is already familiar to most programmers.    (042)

Much more can be said, but this would be a good start.  It would
support much more of Tim's original vision for the SW, and it
would help bring ontologies into the mainstream.    (043)

John    (044)

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    (045)

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