Amit Saha added the comment:
I think the only change I am suggesting is the description of the ^ operator to be something like this:
set ^ other ^ .. Return a new set with elements from the sets which are not present in more than one set
I do understand that this is not really what the operator and the corresponding operation symmetric_difference() allows semantically. But it does make it consistent with the description of operators such as the | or &, but then their operation allows multiple sets semantically.
Hmm may be it is fine as it is..