exists quantors for use in analysis parts of contracts
These quantors can be used to check that predicates hold for at least one
value of one or several specific types.
NYI: If open generics could be passed as actual generic arguments, we no
longer need this code duplication here:
exists<A...>(f Function<bool, A>) bool is intrinsic