- From: <jos.deroo@agfa.com>
- Date: Tue, 20 Sep 2005 11:51:09 +0200
- To: franconi@inf.unibz.it
- Cc: Pat Hayes <phayes@ihmc.us>, RDF Data Access Working Group <public-rdf-dawg@w3.org>, public-rdf-dawg-request@w3.org
[...]
> (Referring to <http://lists.w3.org/Archives/Public/www-archive/
> 2005Sep/0009>, the query and its proof doesn't capture the main idea
> behind the "worker example". In fact, the graph in the message
> doesn't implies that :Andrea is an instance of :EMPLOYEE, so the
> tuple (:Paul :Andrea :Caroline) cannot be in the answer of the given
> query. Most likely, the theorem prover didn't consider the certain
> answers (those true in every model) but possible answers (as those
> true in at least one model). The only variable in the SELECT should
> be ?X, then the query returns :Paul because of reasoning by case on
> all the possible models of the graph.)
True; those were indeed not certain answers :)
I now understand (and tested my understanding with proof engines)
that
{ :Paul a :WORKER.
:Paul :has-friend ?Y.
?Y a :EMPLOYEE.
?Y :has-friend ?Z.
?Z a :MANAGER }
is entailed
whereas
{ :Paul a :WORKER.
:Paul :has-friend :Andrea.
:Andrea a :EMPLOYEE.
:Andrea :has-friend ?Z.
?Z a :MANAGER }
is *not* entailed.
--
Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/
Received on Tuesday, 20 September 2005 09:52:02 UTC