We can do without domain of discourse predicates: (s.t. means such that)
Exists x s.t. P(x): Q(x)
=
!! Exists x s.t. P(x): Q(x)
=
! ForAll x s.t. P(x): !Q(x)
Compare with
!! Exists x:  P(x) and Q(x)
=
! ForAll x: !P(x) or !Q(x)
=
! ForAll x: P(x)=>!Q(x)
Domain of discourse predicates can be translated into standard formulas. The rule we conclude:
Exists needs and: Exists x s.t. P(x): Q(x) = Exists x: P(x) and (Q(x)
ForAll needs implies: ForAll x s.t. P(x): Q(x) = ForAll x: P(x)=>Q(x)