ProductSet(single_set) == single_set
ProductSet._union joins equal args if at top or bottom

     ProductSet(a, b, c) + ProductSet(a, d, e)
->   ProductSet(a, ProductSet(b, c) + ProductSet(d, e))
un-XFAIL boundary-line test