diff options
| author | RncLsn <rnc.lsn@gmail.com> | 2015-05-11 18:00:57 +0100 |
|---|---|---|
| committer | RncLsn <rnc.lsn@gmail.com> | 2015-05-11 18:00:57 +0100 |
| commit | 4fe4ca32d8f45807ab881b6fb8e814842dad0ec6 (patch) | |
| tree | 024d11d748efc24494a28fdfb7efda3db5231ac4 /src/uk/ac/ox/cs/pagoda/rules/OverApproxExist.java | |
| parent | 870eb35e38f746ed73f233070dcf3bdaf4687e02 (diff) | |
| download | ACQuA-4fe4ca32d8f45807ab881b6fb8e814842dad0ec6.tar.gz ACQuA-4fe4ca32d8f45807ab881b6fb8e814842dad0ec6.zip | |
Adding (not completed) a new upper bound technique, namely Limited Skolemisation.
Diffstat (limited to 'src/uk/ac/ox/cs/pagoda/rules/OverApproxExist.java')
| -rw-r--r-- | src/uk/ac/ox/cs/pagoda/rules/OverApproxExist.java | 26 |
1 files changed, 4 insertions, 22 deletions
diff --git a/src/uk/ac/ox/cs/pagoda/rules/OverApproxExist.java b/src/uk/ac/ox/cs/pagoda/rules/OverApproxExist.java index 7e66411..2ff1673 100644 --- a/src/uk/ac/ox/cs/pagoda/rules/OverApproxExist.java +++ b/src/uk/ac/ox/cs/pagoda/rules/OverApproxExist.java | |||
| @@ -1,30 +1,11 @@ | |||
| 1 | package uk.ac.ox.cs.pagoda.rules; | 1 | package uk.ac.ox.cs.pagoda.rules; |
| 2 | 2 | ||
| 3 | import java.util.Collection; | 3 | import org.semanticweb.HermiT.model.*; |
| 4 | import java.util.HashMap; | ||
| 5 | import java.util.Iterator; | ||
| 6 | import java.util.LinkedList; | ||
| 7 | import java.util.Map; | ||
| 8 | |||
| 9 | import org.semanticweb.HermiT.model.AtLeast; | ||
| 10 | import org.semanticweb.HermiT.model.AtLeastConcept; | ||
| 11 | import org.semanticweb.HermiT.model.AtLeastDataRange; | ||
| 12 | import org.semanticweb.HermiT.model.Atom; | ||
| 13 | import org.semanticweb.HermiT.model.AtomicConcept; | ||
| 14 | import org.semanticweb.HermiT.model.AtomicNegationConcept; | ||
| 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.Individual; | ||
| 19 | import org.semanticweb.HermiT.model.Inequality; | ||
| 20 | import org.semanticweb.HermiT.model.InverseRole; | ||
| 21 | import org.semanticweb.HermiT.model.LiteralConcept; | ||
| 22 | import org.semanticweb.HermiT.model.Role; | ||
| 23 | import org.semanticweb.HermiT.model.Term; | ||
| 24 | import org.semanticweb.HermiT.model.Variable; | ||
| 25 | import uk.ac.ox.cs.pagoda.hermit.DLClauseHelper; | 4 | import uk.ac.ox.cs.pagoda.hermit.DLClauseHelper; |
| 26 | import uk.ac.ox.cs.pagoda.util.Namespace; | 5 | import uk.ac.ox.cs.pagoda.util.Namespace; |
| 27 | 6 | ||
| 7 | import java.util.*; | ||
| 8 | |||
| 28 | public class OverApproxExist implements Approximator { | 9 | public class OverApproxExist implements Approximator { |
| 29 | 10 | ||
| 30 | @Override | 11 | @Override |
| @@ -142,6 +123,7 @@ public class OverApproxExist implements Approximator { | |||
| 142 | AtomicConcept atomicConcept = null; | 123 | AtomicConcept atomicConcept = null; |
| 143 | 124 | ||
| 144 | if (concept instanceof AtomicNegationConcept) { | 125 | if (concept instanceof AtomicNegationConcept) { |
| 126 | // is this already in MultiStageUpperProgram? | ||
| 145 | Atom atom1 = Atom.create(atomicConcept = ((AtomicNegationConcept) concept).getNegatedAtomicConcept(), X); | 127 | Atom atom1 = Atom.create(atomicConcept = ((AtomicNegationConcept) concept).getNegatedAtomicConcept(), X); |
| 146 | Atom atom2 = Atom.create(atomicConcept = getNegationConcept(atomicConcept), X); | 128 | Atom atom2 = Atom.create(atomicConcept = getNegationConcept(atomicConcept), X); |
| 147 | ret.add(DLClause.create(new Atom[0], new Atom[] {atom1, atom2})); | 129 | ret.add(DLClause.create(new Atom[0], new Atom[] {atom1, atom2})); |
