predicate updates