8413 and 8373 related changes

See #8413 and #8373 

- [x] check coverage, especially the handling of duplicate args by Xor and Equivalent

(If anybody would like to take this over, that would be fine with me.)
Is it worth a public interface?

We have only one invocation of this function in the simplify helper.  Maybe, it should go to the canonical property?