moved isSubset to ideal.lib