View difference between Paste ID: rRJimeyg and 0zBEXZD2
SHOW: | | - or go back to the newest paste.
1
Though.. lets use a skolem:
2
3
fact1-  i:myCar rdf:type c:HondaCivic .
4
fact2-  c:HondaCivic rdfs:subClassOf c:PassengerVehicle .
5
fact3-  c:PassengerVehicle rdfs:subClassOf c:ThingThatCanBeInsured .
6
rule1-  (forall ?i ?c ?se  { ?c rdfs:subClassOf ?sc.  ?i rdf:type ?c . }) ->  (exists ?r { ?r rdfs:subProperty rdf:type }-> {?i ?r ?sc. }). 
7
rule2-  (forall ?c ?sc  { ?c rdfs:subClassOf ?sc. }->   (exists ?r { ?c rdfs:subClassOf ?sc. ?sc rdfs:subClassOf ?ssc.} -> { ?c ?r ?ssc.  ?r rdfs:subProperty  rdfs:subClassOf}))
8
9
result1>   ?WHAT = c:PassengerVehicle, 
10
      
11
   proof>
12
      rule1-             (forall ?i ?c ?se  { ?c rdfs:subClassOf ?sc.  ?i rdf:type ?c . }) ->  (exists ?r { ?r rdfs:subProperty rdf:type }-> {?i ?r ?sc. }). 
13
      fact1-              i:myCar rdf:type c:HondaCivic .
14
      fact2-              c:HondaCivic rdfs:subClassOf c:PassengerVehicle .
15
      ded1-               { _:R+ rdfs:subProperty rdf:type }  -> {i:myCar _:R+ c:PassengerVehicle . }). 
16
      ded2-               { _:R_{i:myCar rdf:type c:HondaCivic, c:HondaCivic rdfs:subClassOf c:PassengerVehicle} rdfs:subProperty rdf:type } 
17
      ded3-               { i:myCar  _:R+{i:myCar rdf:type c:HondaCivic, c:HondaCivic rdfs:subClassOf c:PassengerVehicle}  c:PassengerVehicle  } 
18
      ded4-            -> i:myCar _:R+ c:PassengerVehicle 
19
20
21
result2>    ?WHAT = c:ThingThatCanBeInsured, 
22
23
   proof>
24
      rule1-             (forall ?i ?c ?se  { ?c rdfs:subClassOf ?sc.  ?i rdf:type ?c . }) ->  (exists ?r { ?r rdfs:subProperty rdf:type }-> {?i ?r ?sc. }). 
25
      fact1-              i:myCar rdf:type c:HondaCivic .
26
      fact2-              c:HondaCivic rdfs:subClassOf c:PassengerVehicle .
27
      ded1-               { _:R+ rdfs:subProperty rdf:type }  -> {i:myCar _:R+ c:ThingThatCanBeInsured }). 
28
      ded2-               { _:R+{i:myCar rdf:type c:HondaCivic, c:HondaCivic rdfs:subClassOf c:PassengerVehicle, c:PassengerVehicle rdfs:subClassOf  c:ThingThatCanBeInsured} rdfs:subProperty rdf:type } 
29
      ded3-            -> { i:myCar  _:R+{i:myCar rdf:type c:HondaCivic, c:HondaCivic rdfs:subClassOf c:PassengerVehicle, c:PassengerVehicle rdfs:subClassOf  c:ThingThatCanBeInsured}  c:ThingThatCanBeInsured  } 
30
      ded4-            -> i:myCar _:R+ c:ThingThatCanBeInsured