@Override public boolean isSubsumedBy(Restriction other) { if (other instanceof CompositeRestriction) { return isSubsumedBy((CompositeRestriction) other); } for (Restriction r : restrictions) { if (!r.isSubsumedBy(other)) { return false; } } return true; }