(self, other)
return ProductSet(a.intersect(b)
                for a, b in zip(self.sets, other.sets))
This function should only be used internally

        See Set._intersect for docstring
This function should only be used internally
This function should only be used internally
def _intersect(self, other):
        """
        This function should only be used internally

        See Set._intersect for docstring
        """
        if not other.is_ProductSet:
            return None
        if len(other.args) != len(self.args):
            return S.EmptySet
        return ProductSet(a.intersect(b)
                for a, b in zip(self.sets, other.sets))
def _intersect ( self , other ) : if not other . is_ProductSet : return None if len ( other . args ) != len ( self . args ) : return S . EmptySet return ProductSet ( a . intersect ( b ) for a , b in zip ( self . sets , other . sets ) )