Enables to check conditions in the value produced by ZPure If the condition is not satisfied, it fails with NoSuchElementException this provide the syntax sugar in for-comprehension: for { (i, j) <- zpure1 positive <- zpure2 if positive > 0 } yield ()