SmallCheck has three different kinds of quantifications for properties: existential, universal and unique existential. Perhaps it would be interesting to support existential quantification alongside the current universal quantification(?)
API would follow naturally from the current Property type:
exists( Type ).given( a → Bool).satisfy( a → Bool )
We'd have to gather use-cases of where existential quantification is desirable, however. While this is rather easy to add, it should be only added if the use-cases justify the increased complexity in the API.
SmallCheck has three different kinds of quantifications for properties: existential, universal and unique existential. Perhaps it would be interesting to support existential quantification alongside the current universal quantification(?)
API would follow naturally from the current Property type:
We'd have to gather use-cases of where existential quantification is desirable, however. While this is rather easy to add, it should be only added if the use-cases justify the increased complexity in the API.