_strategy.getABox().setClash(Clash.minMax(x, ds)); return;
_strategy.getABox().setClash(Clash.minMax(x, ds)); return;
public boolean checkMaxClash(final ATermAppl normalizedMax, final DependencySet maxDepends) { final ATermAppl maxCard = (ATermAppl) normalizedMax.getArgument(0); final Role maxR = _abox.getRole(maxCard.getArgument(0)); if (maxR == null) return false; final int max = ((ATermInt) maxCard.getArgument(1)).getInt() - 1; final ATermAppl maxC = (ATermAppl) maxCard.getArgument(2); for (final ATermAppl minCard : _types[MIN]) { final Role minR = _abox.getRole(minCard.getArgument(0)); if (minR == null) return false; final int min = ((ATermInt) minCard.getArgument(1)).getInt(); final ATermAppl minC = (ATermAppl) minCard.getArgument(2); if (max < min && minC.equals(maxC) && minR.isSubRoleOf(maxR)) { final DependencySet minDepends = getDepends(minCard); final DependencySet subDepends = maxR.getExplainSub(minR.getName()); final DependencySet ds = minDepends.union(maxDepends, _abox.doExplanation()).union(subDepends, _abox.doExplanation()); _abox.setClash(Clash.minMax(this, ds)); return true; } } return false; }
public boolean checkMaxClash(final ATermAppl normalizedMax, final DependencySet maxDepends) { final ATermAppl maxCard = (ATermAppl) normalizedMax.getArgument(0); final Role maxR = _abox.getRole(maxCard.getArgument(0)); if (maxR == null) return false; final int max = ((ATermInt) maxCard.getArgument(1)).getInt() - 1; final ATermAppl maxC = (ATermAppl) maxCard.getArgument(2); for (final ATermAppl minCard : _types[MIN]) { final Role minR = _abox.getRole(minCard.getArgument(0)); if (minR == null) return false; final int min = ((ATermInt) minCard.getArgument(1)).getInt(); final ATermAppl minC = (ATermAppl) minCard.getArgument(2); if (max < min && minC.equals(maxC) && minR.isSubRoleOf(maxR)) { final DependencySet minDepends = getDepends(minCard); final DependencySet subDepends = maxR.getExplainSub(minR.getName()); final DependencySet ds = minDepends.union(maxDepends, _abox.doExplanation()).union(subDepends, _abox.doExplanation()); _abox.setClash(Clash.minMax(this, ds)); return true; } } return false; }