@Override public Set<Set<OWLAxiom>> getAllSOSForInconsistentClass(OWLClassExpression cls) throws OWLException { Set<OWLAxiom> firstMups = getSOSForInconsistentClass(cls); if (firstMups.isEmpty()) { return Collections.emptySet(); } Set<Set<OWLAxiom>> allMups = new HashSet<>(); allMups.add(firstMups); Set<Set<OWLAxiom>> satPaths = new HashSet<>(); Set<OWLAxiom> currentPathContents = new HashSet<>(); constructHittingSetTree(firstMups, allMups, satPaths, currentPathContents); return allMups; }
public Set<Set<OWLAxiom>> getAllSOSForIncosistentClass(OWLClassExpression cls) throws OWLException { Set<OWLAxiom> firstMups = getSOSForIncosistentClass(cls); if (firstMups.isEmpty()) { return Collections.emptySet(); } Set<Set<OWLAxiom>> allMups = new HashSet<Set<OWLAxiom>>(); allMups.add(firstMups); Set<Set<OWLAxiom>> satPaths = new HashSet<Set<OWLAxiom>>(); Set<OWLAxiom> currentPathContents = new HashSet<OWLAxiom>(); constructHittingSetTree(firstMups, allMups, satPaths, currentPathContents); return allMups; }
@Override public Set<Set<OWLAxiom>> getAllSOSForInconsistentClass(OWLClassExpression cls) throws OWLException { Set<OWLAxiom> firstMups = getSOSForInconsistentClass(cls); if (firstMups.isEmpty()) { return Collections.emptySet(); } Set<Set<OWLAxiom>> allMups = new HashSet<>(); allMups.add(firstMups); Set<Set<OWLAxiom>> satPaths = new HashSet<>(); Set<OWLAxiom> currentPathContents = new HashSet<>(); constructHittingSetTree(firstMups, allMups, satPaths, currentPathContents); return allMups; }
@Override public Set<Set<OWLAxiom>> getAllSOSForInconsistentClass(OWLClassExpression cls) throws OWLException { Set<OWLAxiom> firstMups = getSOSForInconsistentClass(cls); if (firstMups.isEmpty()) { return Collections.emptySet(); } Set<Set<OWLAxiom>> allMups = new HashSet<>(); allMups.add(firstMups); Set<Set<OWLAxiom>> satPaths = new HashSet<>(); Set<OWLAxiom> currentPathContents = new HashSet<>(); constructHittingSetTree(firstMups, allMups, satPaths, currentPathContents); return allMups; }
@Override public Set<Set<OWLAxiom>> getAllSOSForInconsistentClass(OWLClassExpression cls) throws OWLException { Set<OWLAxiom> firstMups = getSOSForInconsistentClass(cls); if (firstMups.isEmpty()) { return Collections.emptySet(); } Set<Set<OWLAxiom>> allMups = new HashSet<>(); allMups.add(firstMups); Set<Set<OWLAxiom>> satPaths = new HashSet<>(); Set<OWLAxiom> currentPathContents = new HashSet<>(); constructHittingSetTree(firstMups, allMups, satPaths, currentPathContents); return allMups; }
protected void handleLateTermination(Set<Set<OWLAxiom>> allMups, Set<Set<OWLAxiom>> satPaths, Set<OWLAxiom> currentPathContents, boolean earlyTermination) throws OWLException { if (!earlyTermination) { // Generate a new node - i.e. a new justification set Set<OWLAxiom> newMUPS = getSOSForInconsistentClass(getCurrentClass()); if (!newMUPS.isEmpty()) { // We have a new justification set, and a new node if (!allMups.contains(newMUPS)) { // Entirely new justification set allMups.add(newMUPS); constructHittingSetTree(newMUPS, allMups, satPaths, currentPathContents); } } else { // End of current path - add it to the list of paths satPaths.add(new HashSet<>(currentPathContents)); } } } }
protected void handleLateTermination(Set<Set<OWLAxiom>> allMups, Set<Set<OWLAxiom>> satPaths, Set<OWLAxiom> currentPathContents, boolean earlyTermination) throws OWLException { if (!earlyTermination) { // Generate a new node - i.e. a new justification set Set<OWLAxiom> newMUPS = getSOSForInconsistentClass(getCurrentClass()); if (!newMUPS.isEmpty()) { // We have a new justification set, and a new node if (!allMups.contains(newMUPS)) { // Entirely new justification set allMups.add(newMUPS); constructHittingSetTree(newMUPS, allMups, satPaths, currentPathContents); } } else { // End of current path - add it to the list of paths satPaths.add(new HashSet<>(currentPathContents)); } } } }
protected void handleLateTermination(Set<Set<OWLAxiom>> allMups, Set<Set<OWLAxiom>> satPaths, Set<OWLAxiom> currentPathContents, boolean earlyTermination) throws OWLException { if (!earlyTermination) { // Generate a new node - i.e. a new justification set Set<OWLAxiom> newMUPS = getSOSForInconsistentClass(getCurrentClass()); if (!newMUPS.isEmpty()) { // We have a new justification set, and a new node if (!allMups.contains(newMUPS)) { // Entirely new justification set allMups.add(newMUPS); constructHittingSetTree(newMUPS, allMups, satPaths, currentPathContents); } } else { // End of current path - add it to the list of paths satPaths.add(new HashSet<>(currentPathContents)); } } } }
protected void handleLateTermination(Set<Set<OWLAxiom>> allMups, Set<Set<OWLAxiom>> satPaths, Set<OWLAxiom> currentPathContents, boolean earlyTermination) throws OWLException { if (!earlyTermination) { // Generate a new node - i.e. a new justification set Set<OWLAxiom> newMUPS = getSOSForInconsistentClass(getCurrentClass()); if (!newMUPS.isEmpty()) { // We have a new justification set, and a new node if (!allMups.contains(newMUPS)) { // Entirely new justification set allMups.add(newMUPS); constructHittingSetTree(newMUPS, allMups, satPaths, currentPathContents); } } else { // End of current path - add it to the list of paths satPaths.add(new HashSet<>(currentPathContents)); } } } }
constructHittingSetTree(newMUPS, allMups, satPaths, currentPathContents);