diff options
| author | RncLsn <rnc.lsn@gmail.com> | 2015-05-13 11:57:06 +0100 |
|---|---|---|
| committer | RncLsn <rnc.lsn@gmail.com> | 2015-05-13 11:57:06 +0100 |
| commit | 7e0ecc07285209e65f9d4d022065d06a4997fc86 (patch) | |
| tree | 3c3faa6684e49444c7078903d2e5762fc44bb3a6 /src/uk/ac/ox/cs/pagoda/tracking | |
| parent | 0c2726db44b562cbda9bfa87e76d829927c31ec8 (diff) | |
| download | ACQuA-7e0ecc07285209e65f9d4d022065d06a4997fc86.tar.gz ACQuA-7e0ecc07285209e65f9d4d022065d06a4997fc86.zip | |
Implementing Limited Skolemisation, in particular SkolemTermsDispenser.
Diffstat (limited to 'src/uk/ac/ox/cs/pagoda/tracking')
5 files changed, 35 insertions, 101 deletions
diff --git a/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisj.java b/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisj.java index cee829f..331ad12 100644 --- a/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisj.java +++ b/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisj.java | |||
| @@ -1,30 +1,14 @@ | |||
| 1 | package uk.ac.ox.cs.pagoda.tracking; | 1 | package uk.ac.ox.cs.pagoda.tracking; |
| 2 | 2 | ||
| 3 | import java.util.Collection; | 3 | import org.semanticweb.HermiT.model.*; |
| 4 | import java.util.Collections; | ||
| 5 | import java.util.HashMap; | ||
| 6 | import java.util.HashSet; | ||
| 7 | import java.util.Iterator; | ||
| 8 | import java.util.LinkedList; | ||
| 9 | import java.util.Map; | ||
| 10 | |||
| 11 | import org.semanticweb.HermiT.model.AnnotatedEquality; | ||
| 12 | import org.semanticweb.HermiT.model.AtLeastConcept; | ||
| 13 | import org.semanticweb.HermiT.model.Atom; | ||
| 14 | import org.semanticweb.HermiT.model.AtomicConcept; | ||
| 15 | import org.semanticweb.HermiT.model.AtomicRole; | ||
| 16 | import org.semanticweb.HermiT.model.DLClause; | ||
| 17 | import org.semanticweb.HermiT.model.DLPredicate; | ||
| 18 | import org.semanticweb.HermiT.model.Equality; | ||
| 19 | import org.semanticweb.HermiT.model.Individual; | ||
| 20 | import org.semanticweb.HermiT.model.Inequality; | ||
| 21 | |||
| 22 | import uk.ac.ox.cs.pagoda.hermit.DLClauseHelper; | 4 | import uk.ac.ox.cs.pagoda.hermit.DLClauseHelper; |
| 23 | import uk.ac.ox.cs.pagoda.reasoner.light.BasicQueryEngine; | 5 | import uk.ac.ox.cs.pagoda.reasoner.light.BasicQueryEngine; |
| 24 | import uk.ac.ox.cs.pagoda.rules.OverApproxExist; | ||
| 25 | import uk.ac.ox.cs.pagoda.rules.UpperDatalogProgram; | 6 | import uk.ac.ox.cs.pagoda.rules.UpperDatalogProgram; |
| 7 | import uk.ac.ox.cs.pagoda.rules.approximators.OverApproxExist; | ||
| 26 | import uk.ac.ox.cs.pagoda.util.Namespace; | 8 | import uk.ac.ox.cs.pagoda.util.Namespace; |
| 27 | 9 | ||
| 10 | import java.util.*; | ||
| 11 | |||
| 28 | public abstract class TrackingRuleEncoderDisj extends TrackingRuleEncoderWithGap { | 12 | public abstract class TrackingRuleEncoderDisj extends TrackingRuleEncoderWithGap { |
| 29 | 13 | ||
| 30 | public TrackingRuleEncoderDisj(UpperDatalogProgram program, BasicQueryEngine store) { | 14 | public TrackingRuleEncoderDisj(UpperDatalogProgram program, BasicQueryEngine store) { |
diff --git a/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisj1.java b/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisj1.java index e72ed96..d6b5e8b 100644 --- a/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisj1.java +++ b/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisj1.java | |||
| @@ -1,26 +1,14 @@ | |||
| 1 | package uk.ac.ox.cs.pagoda.tracking; | 1 | package uk.ac.ox.cs.pagoda.tracking; |
| 2 | 2 | ||
| 3 | import java.util.LinkedList; | 3 | import org.semanticweb.HermiT.model.*; |
| 4 | |||
| 5 | import org.semanticweb.HermiT.model.AtLeastConcept; | ||
| 6 | import org.semanticweb.HermiT.model.Atom; | ||
| 7 | import org.semanticweb.HermiT.model.AtomicConcept; | ||
| 8 | import org.semanticweb.HermiT.model.AtomicNegationConcept; | ||
| 9 | import org.semanticweb.HermiT.model.AtomicRole; | ||
| 10 | import org.semanticweb.HermiT.model.DLClause; | ||
| 11 | import org.semanticweb.HermiT.model.DLPredicate; | ||
| 12 | import org.semanticweb.HermiT.model.Individual; | ||
| 13 | import org.semanticweb.HermiT.model.Inequality; | ||
| 14 | import org.semanticweb.HermiT.model.InverseRole; | ||
| 15 | import org.semanticweb.HermiT.model.Term; | ||
| 16 | import org.semanticweb.HermiT.model.Variable; | ||
| 17 | |||
| 18 | import uk.ac.ox.cs.pagoda.MyPrefixes; | 4 | import uk.ac.ox.cs.pagoda.MyPrefixes; |
| 19 | import uk.ac.ox.cs.pagoda.hermit.DLClauseHelper; | 5 | import uk.ac.ox.cs.pagoda.hermit.DLClauseHelper; |
| 20 | import uk.ac.ox.cs.pagoda.multistage.Normalisation; | 6 | import uk.ac.ox.cs.pagoda.multistage.Normalisation; |
| 21 | import uk.ac.ox.cs.pagoda.reasoner.light.BasicQueryEngine; | 7 | import uk.ac.ox.cs.pagoda.reasoner.light.BasicQueryEngine; |
| 22 | import uk.ac.ox.cs.pagoda.rules.OverApproxExist; | ||
| 23 | import uk.ac.ox.cs.pagoda.rules.UpperDatalogProgram; | 8 | import uk.ac.ox.cs.pagoda.rules.UpperDatalogProgram; |
| 9 | import uk.ac.ox.cs.pagoda.rules.approximators.OverApproxExist; | ||
| 10 | |||
| 11 | import java.util.LinkedList; | ||
| 24 | 12 | ||
| 25 | public class TrackingRuleEncoderDisj1 extends TrackingRuleEncoderDisj { | 13 | public class TrackingRuleEncoderDisj1 extends TrackingRuleEncoderDisj { |
| 26 | 14 | ||
diff --git a/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisj2.java b/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisj2.java index 6cf239f..8d79090 100644 --- a/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisj2.java +++ b/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisj2.java | |||
| @@ -1,24 +1,12 @@ | |||
| 1 | package uk.ac.ox.cs.pagoda.tracking; | 1 | package uk.ac.ox.cs.pagoda.tracking; |
| 2 | 2 | ||
| 3 | import org.semanticweb.HermiT.model.AtLeastConcept; | 3 | import org.semanticweb.HermiT.model.*; |
| 4 | import org.semanticweb.HermiT.model.Atom; | ||
| 5 | import org.semanticweb.HermiT.model.AtomicConcept; | ||
| 6 | import org.semanticweb.HermiT.model.AtomicNegationConcept; | ||
| 7 | import org.semanticweb.HermiT.model.AtomicRole; | ||
| 8 | import org.semanticweb.HermiT.model.DLClause; | ||
| 9 | import org.semanticweb.HermiT.model.DLPredicate; | ||
| 10 | import org.semanticweb.HermiT.model.Individual; | ||
| 11 | import org.semanticweb.HermiT.model.Inequality; | ||
| 12 | import org.semanticweb.HermiT.model.InverseRole; | ||
| 13 | import org.semanticweb.HermiT.model.Term; | ||
| 14 | import org.semanticweb.HermiT.model.Variable; | ||
| 15 | |||
| 16 | import uk.ac.ox.cs.pagoda.MyPrefixes; | 4 | import uk.ac.ox.cs.pagoda.MyPrefixes; |
| 17 | import uk.ac.ox.cs.pagoda.multistage.Normalisation; | 5 | import uk.ac.ox.cs.pagoda.multistage.Normalisation; |
| 18 | import uk.ac.ox.cs.pagoda.query.QueryRecord; | 6 | import uk.ac.ox.cs.pagoda.query.QueryRecord; |
| 19 | import uk.ac.ox.cs.pagoda.reasoner.light.BasicQueryEngine; | 7 | import uk.ac.ox.cs.pagoda.reasoner.light.BasicQueryEngine; |
| 20 | import uk.ac.ox.cs.pagoda.rules.OverApproxExist; | ||
| 21 | import uk.ac.ox.cs.pagoda.rules.UpperDatalogProgram; | 8 | import uk.ac.ox.cs.pagoda.rules.UpperDatalogProgram; |
| 9 | import uk.ac.ox.cs.pagoda.rules.approximators.OverApproxExist; | ||
| 22 | 10 | ||
| 23 | public class TrackingRuleEncoderDisj2 extends TrackingRuleEncoderDisj { | 11 | public class TrackingRuleEncoderDisj2 extends TrackingRuleEncoderDisj { |
| 24 | 12 | ||
| @@ -56,7 +44,7 @@ public class TrackingRuleEncoderDisj2 extends TrackingRuleEncoderDisj { | |||
| 56 | 44 | ||
| 57 | @Override | 45 | @Override |
| 58 | protected DLPredicate generateAuxiliaryRule(AtLeastConcept p, DLClause original, Individual[] individuals) { | 46 | protected DLPredicate generateAuxiliaryRule(AtLeastConcept p, DLClause original, Individual[] individuals) { |
| 59 | DLPredicate ret = AtomicConcept.create(getTrackingPredicate(Normalisation.getAuxiliaryConcept4Disjunct((AtLeastConcept) p, individuals))); | 47 | DLPredicate ret = AtomicConcept.create(getTrackingPredicate(Normalisation.getAuxiliaryConcept4Disjunct(p, individuals))); |
| 60 | Atom[] headAtom = new Atom[] {Atom.create(ret, X)}; | 48 | Atom[] headAtom = new Atom[] {Atom.create(ret, X)}; |
| 61 | 49 | ||
| 62 | AtomicRole role = p.getOnRole() instanceof AtomicRole ? | 50 | AtomicRole role = p.getOnRole() instanceof AtomicRole ? |
diff --git a/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisjVar1.java b/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisjVar1.java index 37116d4..2143b03 100644 --- a/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisjVar1.java +++ b/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisjVar1.java | |||
| @@ -1,34 +1,20 @@ | |||
| 1 | package uk.ac.ox.cs.pagoda.tracking; | 1 | package uk.ac.ox.cs.pagoda.tracking; |
| 2 | 2 | ||
| 3 | import java.util.Collection; | 3 | import org.semanticweb.HermiT.model.*; |
| 4 | import java.util.HashSet; | ||
| 5 | import java.util.LinkedList; | ||
| 6 | import java.util.Set; | ||
| 7 | |||
| 8 | import org.semanticweb.HermiT.model.AnnotatedEquality; | ||
| 9 | import org.semanticweb.HermiT.model.AtLeast; | ||
| 10 | import org.semanticweb.HermiT.model.AtLeastConcept; | ||
| 11 | import org.semanticweb.HermiT.model.Atom; | ||
| 12 | import org.semanticweb.HermiT.model.AtomicConcept; | ||
| 13 | import org.semanticweb.HermiT.model.AtomicNegationConcept; | ||
| 14 | import org.semanticweb.HermiT.model.AtomicRole; | ||
| 15 | import org.semanticweb.HermiT.model.DLClause; | ||
| 16 | import org.semanticweb.HermiT.model.DLPredicate; | ||
| 17 | import org.semanticweb.HermiT.model.DatatypeRestriction; | ||
| 18 | import org.semanticweb.HermiT.model.Equality; | ||
| 19 | import org.semanticweb.HermiT.model.Inequality; | ||
| 20 | import org.semanticweb.HermiT.model.InverseRole; | ||
| 21 | import org.semanticweb.HermiT.model.Variable; | ||
| 22 | |||
| 23 | import uk.ac.ox.cs.pagoda.MyPrefixes; | 4 | import uk.ac.ox.cs.pagoda.MyPrefixes; |
| 24 | import uk.ac.ox.cs.pagoda.hermit.DLClauseHelper; | 5 | import uk.ac.ox.cs.pagoda.hermit.DLClauseHelper; |
| 25 | import uk.ac.ox.cs.pagoda.multistage.Normalisation; | 6 | import uk.ac.ox.cs.pagoda.multistage.Normalisation; |
| 26 | import uk.ac.ox.cs.pagoda.reasoner.light.BasicQueryEngine; | 7 | import uk.ac.ox.cs.pagoda.reasoner.light.BasicQueryEngine; |
| 27 | import uk.ac.ox.cs.pagoda.rules.OverApproxExist; | ||
| 28 | import uk.ac.ox.cs.pagoda.rules.UpperDatalogProgram; | 8 | import uk.ac.ox.cs.pagoda.rules.UpperDatalogProgram; |
| 9 | import uk.ac.ox.cs.pagoda.rules.approximators.OverApproxExist; | ||
| 29 | import uk.ac.ox.cs.pagoda.util.Namespace; | 10 | import uk.ac.ox.cs.pagoda.util.Namespace; |
| 30 | import uk.ac.ox.cs.pagoda.util.Utility; | 11 | import uk.ac.ox.cs.pagoda.util.Utility; |
| 31 | 12 | ||
| 13 | import java.util.Collection; | ||
| 14 | import java.util.HashSet; | ||
| 15 | import java.util.LinkedList; | ||
| 16 | import java.util.Set; | ||
| 17 | |||
| 32 | public class TrackingRuleEncoderDisjVar1 extends TrackingRuleEncoderWithGap { | 18 | public class TrackingRuleEncoderDisjVar1 extends TrackingRuleEncoderWithGap { |
| 33 | 19 | ||
| 34 | public TrackingRuleEncoderDisjVar1(UpperDatalogProgram program, BasicQueryEngine store) { | 20 | public TrackingRuleEncoderDisjVar1(UpperDatalogProgram program, BasicQueryEngine store) { |
| @@ -96,13 +82,13 @@ public class TrackingRuleEncoderDisjVar1 extends TrackingRuleEncoderWithGap { | |||
| 96 | return Atom.create(getTrackingDLPredicate(AtomicConcept.create(Normalisation.getAuxiliaryConcept4Disjunct((AtLeastConcept) p))), headAtom.getArgument(0)); | 82 | return Atom.create(getTrackingDLPredicate(AtomicConcept.create(Normalisation.getAuxiliaryConcept4Disjunct((AtLeastConcept) p))), headAtom.getArgument(0)); |
| 97 | } | 83 | } |
| 98 | if (p instanceof AtomicConcept) | 84 | if (p instanceof AtomicConcept) |
| 99 | return Atom.create(getTrackingDLPredicate((AtomicConcept) p), headAtom.getArgument(0)); | 85 | return Atom.create(getTrackingDLPredicate(p), headAtom.getArgument(0)); |
| 100 | if (p instanceof AtomicRole) | 86 | if (p instanceof AtomicRole) |
| 101 | return Atom.create(getTrackingDLPredicate((AtomicRole) p), headAtom.getArgument(0), headAtom.getArgument(1)); | 87 | return Atom.create(getTrackingDLPredicate(p), headAtom.getArgument(0), headAtom.getArgument(1)); |
| 102 | if (p instanceof Equality || p instanceof AnnotatedEquality) | 88 | if (p instanceof Equality || p instanceof AnnotatedEquality) |
| 103 | return Atom.create(getTrackingDLPredicate(Equality.INSTANCE), headAtom.getArgument(0), headAtom.getArgument(1)); | 89 | return Atom.create(getTrackingDLPredicate(Equality.INSTANCE), headAtom.getArgument(0), headAtom.getArgument(1)); |
| 104 | if (p instanceof Inequality) | 90 | if (p instanceof Inequality) |
| 105 | return Atom.create(getTrackingDLPredicate((Inequality) p), headAtom.getArgument(0), headAtom.getArgument(1)); | 91 | return Atom.create(getTrackingDLPredicate(p), headAtom.getArgument(0), headAtom.getArgument(1)); |
| 106 | 92 | ||
| 107 | return null; | 93 | return null; |
| 108 | } | 94 | } |
| @@ -114,15 +100,15 @@ public class TrackingRuleEncoderDisjVar1 extends TrackingRuleEncoderWithGap { | |||
| 114 | return Atom.create(getGapDLPredicate(AtomicConcept.create(Normalisation.getAuxiliaryConcept4Disjunct((AtLeastConcept) p))), headAtom.getArgument(0)); | 100 | return Atom.create(getGapDLPredicate(AtomicConcept.create(Normalisation.getAuxiliaryConcept4Disjunct((AtLeastConcept) p))), headAtom.getArgument(0)); |
| 115 | } | 101 | } |
| 116 | if (p instanceof AtomicConcept) | 102 | if (p instanceof AtomicConcept) |
| 117 | return Atom.create(getGapDLPredicate((AtomicConcept) p), headAtom.getArgument(0)); | 103 | return Atom.create(getGapDLPredicate(p), headAtom.getArgument(0)); |
| 118 | if (p instanceof AtomicRole) | 104 | if (p instanceof AtomicRole) |
| 119 | return Atom.create(getGapDLPredicate((AtomicRole) p), headAtom.getArgument(0), headAtom.getArgument(1)); | 105 | return Atom.create(getGapDLPredicate(p), headAtom.getArgument(0), headAtom.getArgument(1)); |
| 120 | if (p instanceof Equality || p instanceof AnnotatedEquality) | 106 | if (p instanceof Equality || p instanceof AnnotatedEquality) |
| 121 | return Atom.create(getGapDLPredicate(Equality.INSTANCE), headAtom.getArgument(0), headAtom.getArgument(1)); | 107 | return Atom.create(getGapDLPredicate(Equality.INSTANCE), headAtom.getArgument(0), headAtom.getArgument(1)); |
| 122 | if (p instanceof Inequality) | 108 | if (p instanceof Inequality) |
| 123 | return Atom.create(getGapDLPredicate((Inequality) p), headAtom.getArgument(0), headAtom.getArgument(1)); | 109 | return Atom.create(getGapDLPredicate(p), headAtom.getArgument(0), headAtom.getArgument(1)); |
| 124 | if (p instanceof DatatypeRestriction) | 110 | if (p instanceof DatatypeRestriction) |
| 125 | return Atom.create(getGapDLPredicate((DatatypeRestriction) p), headAtom.getArgument(0)); | 111 | return Atom.create(getGapDLPredicate(p), headAtom.getArgument(0)); |
| 126 | Utility.logError(p + " is not recognised."); | 112 | Utility.logError(p + " is not recognised."); |
| 127 | return null; | 113 | return null; |
| 128 | } | 114 | } |
diff --git a/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisjVar2.java b/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisjVar2.java index d257de3..7311a86 100644 --- a/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisjVar2.java +++ b/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderDisjVar2.java | |||
| @@ -1,31 +1,19 @@ | |||
| 1 | package uk.ac.ox.cs.pagoda.tracking; | 1 | package uk.ac.ox.cs.pagoda.tracking; |
| 2 | 2 | ||
| 3 | import java.util.Collection; | 3 | import org.semanticweb.HermiT.model.*; |
| 4 | import java.util.HashSet; | ||
| 5 | import java.util.LinkedList; | ||
| 6 | import java.util.Set; | ||
| 7 | |||
| 8 | import org.semanticweb.HermiT.model.AnnotatedEquality; | ||
| 9 | import org.semanticweb.HermiT.model.AtLeastConcept; | ||
| 10 | import org.semanticweb.HermiT.model.Atom; | ||
| 11 | import org.semanticweb.HermiT.model.AtomicConcept; | ||
| 12 | import org.semanticweb.HermiT.model.AtomicNegationConcept; | ||
| 13 | import org.semanticweb.HermiT.model.AtomicRole; | ||
| 14 | import org.semanticweb.HermiT.model.DLClause; | ||
| 15 | import org.semanticweb.HermiT.model.DLPredicate; | ||
| 16 | import org.semanticweb.HermiT.model.Equality; | ||
| 17 | import org.semanticweb.HermiT.model.Inequality; | ||
| 18 | import org.semanticweb.HermiT.model.InverseRole; | ||
| 19 | import org.semanticweb.HermiT.model.Variable; | ||
| 20 | |||
| 21 | import uk.ac.ox.cs.pagoda.hermit.DLClauseHelper; | 4 | import uk.ac.ox.cs.pagoda.hermit.DLClauseHelper; |
| 22 | import uk.ac.ox.cs.pagoda.multistage.Normalisation; | 5 | import uk.ac.ox.cs.pagoda.multistage.Normalisation; |
| 23 | import uk.ac.ox.cs.pagoda.query.QueryRecord; | 6 | import uk.ac.ox.cs.pagoda.query.QueryRecord; |
| 24 | import uk.ac.ox.cs.pagoda.reasoner.light.BasicQueryEngine; | 7 | import uk.ac.ox.cs.pagoda.reasoner.light.BasicQueryEngine; |
| 25 | import uk.ac.ox.cs.pagoda.rules.OverApproxExist; | ||
| 26 | import uk.ac.ox.cs.pagoda.rules.UpperDatalogProgram; | 8 | import uk.ac.ox.cs.pagoda.rules.UpperDatalogProgram; |
| 9 | import uk.ac.ox.cs.pagoda.rules.approximators.OverApproxExist; | ||
| 27 | import uk.ac.ox.cs.pagoda.util.Namespace; | 10 | import uk.ac.ox.cs.pagoda.util.Namespace; |
| 28 | 11 | ||
| 12 | import java.util.Collection; | ||
| 13 | import java.util.HashSet; | ||
| 14 | import java.util.LinkedList; | ||
| 15 | import java.util.Set; | ||
| 16 | |||
| 29 | public class TrackingRuleEncoderDisjVar2 extends TrackingRuleEncoderWithGap { | 17 | public class TrackingRuleEncoderDisjVar2 extends TrackingRuleEncoderWithGap { |
| 30 | 18 | ||
| 31 | public TrackingRuleEncoderDisjVar2(UpperDatalogProgram program, BasicQueryEngine store) { | 19 | public TrackingRuleEncoderDisjVar2(UpperDatalogProgram program, BasicQueryEngine store) { |
| @@ -91,13 +79,13 @@ public class TrackingRuleEncoderDisjVar2 extends TrackingRuleEncoderWithGap { | |||
| 91 | return Atom.create(getGapDLPredicate(AtomicConcept.create(Normalisation.getAuxiliaryConcept4Disjunct((AtLeastConcept) p))), headAtom.getArgument(0)); | 79 | return Atom.create(getGapDLPredicate(AtomicConcept.create(Normalisation.getAuxiliaryConcept4Disjunct((AtLeastConcept) p))), headAtom.getArgument(0)); |
| 92 | } | 80 | } |
| 93 | if (p instanceof AtomicConcept) | 81 | if (p instanceof AtomicConcept) |
| 94 | return Atom.create(getGapDLPredicate((AtomicConcept) p), headAtom.getArgument(0)); | 82 | return Atom.create(getGapDLPredicate(p), headAtom.getArgument(0)); |
| 95 | if (p instanceof AtomicRole) | 83 | if (p instanceof AtomicRole) |
| 96 | return Atom.create(getGapDLPredicate((AtomicRole) p), headAtom.getArgument(0), headAtom.getArgument(1)); | 84 | return Atom.create(getGapDLPredicate(p), headAtom.getArgument(0), headAtom.getArgument(1)); |
| 97 | if (p instanceof Equality || p instanceof AnnotatedEquality) | 85 | if (p instanceof Equality || p instanceof AnnotatedEquality) |
| 98 | return Atom.create(getGapDLPredicate(Equality.INSTANCE), headAtom.getArgument(0), headAtom.getArgument(1)); | 86 | return Atom.create(getGapDLPredicate(Equality.INSTANCE), headAtom.getArgument(0), headAtom.getArgument(1)); |
| 99 | if (p instanceof Inequality) | 87 | if (p instanceof Inequality) |
| 100 | return Atom.create(getGapDLPredicate((Inequality) p), headAtom.getArgument(0), headAtom.getArgument(1)); | 88 | return Atom.create(getGapDLPredicate(p), headAtom.getArgument(0), headAtom.getArgument(1)); |
| 101 | 89 | ||
| 102 | return null; | 90 | return null; |
| 103 | } | 91 | } |
