Все логические операции можно получить из двух, например, из `not` и `and`. Именно поэтому, во многих языках реализованы лишь несколько операций.
Формулу можно найти в Википедии в статье "exclusive or".
Если переменные уже приведены к `bool`, то `xor` это то же самое, что не равно, то есть, `!=`.