This reduces the set of types a type variable can assume. This implementation is not complete yet, so it may yield type sets that are too large.
This reduces the set of types a type variable can assume. This implementation is not complete yet, so it may yield type sets that are too large.