Ian, (01)
Before saying anything else, let me emphasize that I believe the work
on algorithms, complexity, and decidability by you and your colleagues
is very high quality and very important for computer science. (02)
But the sentences at the end of your note explain why *I hate OWL* : (03)
> In fact, it can be shown that query answering in OWL 2 RL [Rule Language]
> is possible in time that in the worst case increases only polynomially
> with the size of the data. In *this* sense, OWL 2 RL really is less
> (computationally) complex. However, as I mentioned above, the price
> users pay for this is an *increase* in syntactic or cognitive complexity. (04)
By syntactic complexity, I realize that you are talking about something
much more fundamental (and cognitively much harder for people to learn)
than the angle brackets. But knowledge acquisition has always been
the major bottleneck in AI and the SW. Anything that increases the
"cognitive complexity" is a bad step in the wrong direction. (05)
As Dean said, (06)
> I find that in the classes I do teach, the students are very concerned
> about complexity in the computational sense... (07)
But there are many ways of dealing with computational complexity while
actually *reducing* the cognitive complexity: (08)
1. Design patterns. Every programming language is undecidable, but no
programmer would ever ask for less expressive power. Instead, they
have developed *design patterns* for systematic ways of using their
languages in ways that are known to be safe and efficient. (09)
2. Hybrid systems. The original DLs were packaged as hybrids with
the DL component designed for efficient classification and a more
expressive language (rule-based, full FOL, or even arbitrary
procedures) were used to achieve the required expressive power.
And design patterns (or something similar) can be used for the
more expressive part of the hybrid. (The RL option of OWL doesn't
address the main reason why people use hybrids: they need more
expressive power, not less.) (010)
3. Dynamic algorithm selection. Cyc has developed the largest formal
ontology on the planet, but CycL imposes no restrictions on the
expressive power. Instead, they use dynamic methods for selecting
appropriate algorithm(s) for each problem or subproblem they
encounter. Similar strategies are also used for the systems that
compete on the Thousands of Problems for Theorem Provers (tptp.org). (011)
4. Knowledge compilers. For many applications, it's possible to do
a *static* selection of the algorithms: Map the very expressive
languages (such as CycL and others) via appropriate design patterns
to forms can be processed efficiently by known algorithms. (012)
I'm sure that you know the references for these methods, but for
other readers, I include some in the following article: (013)
http://www.jfsowa.com/pubs/fflogic.pdf
Fads and Fallacies About Logic (014)
At the ICCS 2010 conference, Boris Motik gave a good presentation
about adding finite graph models to OWL in order to broaden its
expressive power while preserving decidability. (015)
I certainly like the idea of supporting graphs, but not the idea
of adding more cognitive complexity to an already overstuffed
language. Instead of stuffing more into OWL, why don't you ask
some of your students to do research on methods such as #1 to #4
above to find ways of *reducing* the cognitive complexity? (016)
Other talks at ICCS described more efficient algorithms for
Formal Concept Analysis (FCA), which generates consistent lattices
from source data that is cognitively extremely simple. (017)
That would be another excellent topic for your students: design
hybrid systems that combine an FCA-style of hierarchy with automated
or semi-automated methods for supporting additional expressive power
at varying levels of complexity up to the level of CycL. (018)
Cognitive complexity is killing the Semantic Web. As a result,
people are building their own hybrids that add very scruffy methods
to OWL or RDFS or RDFa -- thereby destroying the decidability that
the OWL restrictions were designed to support. (019)
The four techniques above (or something similar) would be an
excellent way to support Tim B-L's project for "Web Science". (020)
John (021)
_________________________________________________________________
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/OntologySummit2011/
Community Wiki: http://ontolog.cim3.net/cgi-bin/wiki.pl?OntologySummit2011
Community Portal: http://ontolog.cim3.net/wiki/ (022)
|