if (dr.containsAtLeast(inequalityCount(ne, i) + 1)) if (dr.isFinite() && dr.isEnumerable() && !dr.containsAtLeast(2)) if (dr.containsAtLeast(min))
if (dr.containsAtLeast(inequalityCount(ne, i) + 1)) if (dr.isFinite() && dr.isEnumerable() && !dr.containsAtLeast(2)) if (dr.containsAtLeast(min))
@Override public boolean containsAtLeast(final int n, final Collection<ATermAppl> ranges) throws UnrecognizedDatatypeException, InvalidConstrainingFacetException, InvalidLiteralException { final ATermAppl and = ATermUtils.makeAnd(ATermUtils.makeList(ranges)); final ATermAppl dnf = DNF.dnf(expander.expand(and, namedDataRanges)); if (ATermUtils.isOr(dnf)) { final List<DataRange<?>> disjuncts = new ArrayList<>(); for (ATermList l = (ATermList) dnf.getArgument(0); !l.isEmpty(); l = l.getNext()) { final DataRange<?> dr = normalizeVarRanges((ATermAppl) l.getFirst()); if (!dr.isEmpty()) disjuncts.add(dr); } return getDisjunction(disjuncts).containsAtLeast(n); } else return normalizeVarRanges(dnf).containsAtLeast(n); }
@Override public boolean containsAtLeast(final int n, final Collection<ATermAppl> ranges) throws UnrecognizedDatatypeException, InvalidConstrainingFacetException, InvalidLiteralException { final ATermAppl and = ATermUtils.makeAnd(ATermUtils.makeList(ranges)); final ATermAppl dnf = DNF.dnf(expander.expand(and, namedDataRanges)); if (ATermUtils.isOr(dnf)) { final List<DataRange<?>> disjuncts = new ArrayList<>(); for (ATermList l = (ATermList) dnf.getArgument(0); !l.isEmpty(); l = l.getNext()) { final DataRange<?> dr = normalizeVarRanges((ATermAppl) l.getFirst()); if (!dr.isEmpty()) disjuncts.add(dr); } return getDisjunction(disjuncts).containsAtLeast(n); } else return normalizeVarRanges(dnf).containsAtLeast(n); }