fixed bug with isZero predicate