- From: Ken Baclawski <kenb@ccs.neu.edu>
- Date: Sat, 14 Apr 2001 10:40:30 -0400 (EDT)
- To: Dan Connolly <connolly@w3.org>
- cc: www-rdf-logic@w3.org
On Fri, 13 Apr 2001, Dan Connolly wrote: > Ken Baclawski wrote: > > > > The UBOT project has been examining the consistency of the > > DAML+OIL axiomatic semantics. Using an automated theorem > > prover, Richard Waldinger found an inconsistency due to > > Axiom 8. This axiom is the following: > > > > Ax8. (<=> (Type ?fp FunctionalProperty) > > (and (Type ?fp Property) > > (=> (and (PropertyValue ?fp ?s ?v1) > > (PropertyValue ?fp ?s ?v2)) > > (= ?v1 ?v2)))) > > > > >From this axiom one can conclude that every property is > > functional. > > Oops! > > > As there are many properties that are not > > functional (such as type), this leads quickly to logical > > inconsistencies in the axiomatic semantics. > > > > We suggest that this axiom be changed to: > > > > Ax8. (<=> (Type ?fp FunctionalProperty) > > (and (Type ?fp Property) > > (forall (?s ?v1 ?v2) > > (=> (and (PropertyValue ?fp ?s ?v1) > > (PropertyValue ?fp ?s ?v2)) > > (= ?v1 ?v2))))) > > Yup... I think that's what we meant. > > I'm interested in more details about the technology > you used to find this bug. Where can I read more > about it? We are using several technologies. The ConsVISor tool integrates model-checking and theorem-proving. It is one of the tools in the UBOT toolset. The theorem prover used by ConsVISor is SNARK. For information about SNARK see <www.ai.sri.com/~stickel/snark.html>. The UBOT Web site is <ubot.lockheedmartin.com>. > How did you get the axioms into the prover? does > it read KIF? Yes, it does read KIF. > I was hoping we'd provide the KIF stuff in raw > form, but we didn't get around to it. > Did you extract them manually? Did you have > to translate them to some other syntax? It was extracted manually. We added names to the axioms to make them more readable during theorem proving (see below). We also added a number of "obvious" missing axioms such as the fact that Alt is a Class. Here is the refutation of Axiom 8. SNARK very quickly deduced that type is a functional property and that Alt is both a Class and a Resource, contradicting the fact that type is functional. Notice the KIF notation in the refutation. (Refutation (Row type-is-property-Ax16.6 (Type type Property) assertion) (Row alt-is-classProblems-Document.10 (Type Alt Class) assertion) (Row properties-are-not-classes-Ax7.21 (or (not (Type ?Element Property)) (not (Type ?Element Class))) assertion) (Row type-vs-propertyvalue-Ax1.29-48 (or (not (Type ?Element ?Element1)) (PropertyValue type ?Element ?Element1)) assertion) (Row definition-of-functional-property-Ax8.19-49 (or (Type ?Element FunctionalProperty) (not (= ?Element1 ?Element2))) assertion) (Row definition-of-functional-property-Ax8.19-52 (or (not (Type ?Element FunctionalProperty)) (not (Type ?Element Property)) (not (PropertyValue ?Element ?Element1 ?Element2)) (not (PropertyValue ?Element ?Element1 ?Element3)) (= ?Element2 ?Element3)) assertion) (Row arguments-of-type-Ax17.5-61 (or (not (Type ?Element ?Element1)) (Type ?Element Resource)) assertion) (Row 70 (not (Type type Class)) (resolve properties-are-not-classes-Ax7.21 type-is-property-Ax16.6)) (Row 92 (Type ?Element FunctionalProperty) (resolve definition-of-functional-property-Ax8.19-49 code-for-=)) (Row 93 (or (not (Type ?Element Property)) (not (PropertyValue ?Element ?Element1 ?Element2)) (not (PropertyValue ?Element ?Element1 ?Element3)) (= ?Element2 ?Element3)) (rewrite definition-of-functional-property-Ax8.19-52 92)) (Row 120 (PropertyValue type Alt Class) (resolve type-vs-propertyvalue-Ax1.29-48 alt-is-classProblems-Document.10)) (Row 394 (Type ?Element Resource) (resolve arguments-of-type-Ax17.5-61 92)) (Row 406 (PropertyValue type ?Element Resource) (resolve type-vs-propertyvalue-Ax1.29-48 394)) (Row 407 (or (not (PropertyValue type Alt ?Element)) (= Class ?Element)) (rewrite (resolve 93 120) type-is-property-Ax16.6)) (Row 604 (= Class Resource) (resolve 407 406)) (Row 637 false (rewrite (paramodulate 70 604) 394)) ) Ken Baclawski UBOT Project College of Computer Science Northeastern University
Received on Saturday, 14 April 2001 10:40:34 UTC