added divisibility predicates