subsets and sigma types