forAll package:constraints

This module uses a trick to provide quantification over constraints.
A representation of the quantified constraint forall a. p (f a).
A representation of the quantified constraint forall f a. p (t f a).
A representation of the quantified constraint forall a1 a2 ... an . p a1 a2 ... an, supporting a variable number of parameters.