as_logical<T>::type r = logical_xor(x,y) I suppose