changed exists to implement forall