add set operations: difference, union, intersection