Arbitrary predicates with tasks determining success