That’s one way of distinguishing between the logical or (and/or) and xor (either or/er), because xor is much more intuitive to those of us who have to make value judgments on a regular basis. “Do I want X or Y?” translates to X xor Y in philosospeak.
This begs the question why logicians didn’t use the more intuitive form in the first place, especially since it matches the colloquial use of the term. Were they trying to be difficult? Did they think it made them look smarter?
The only thing I can think of is that xor might be unable to express other logical functions in terms of itself and the “and” operator (hereafter shown as “+”). So I’m going to think out loud for a bit on the expressibility of xor (hereafter “/”), because that sounds like more fun than simply reading up on the subject.
(Coincidentally, I just noticed that “hereafter” is the perfect modifier for value assignments in an English-based logical language. E.g. “Int x := 3;” becomes “The integer x is hereafter 3.”)
Well, I got bored of trying to brute force the idea, so I looked it up. Turns out,
Although the operators (conjunction) and (disjunction) are very useful in logic systems, they fail a more generalizable structure in the following way:The systems and are monoids. This unfortunately prevents the combination of these two systems into larger structures, such as a mathematical ring.However, the system using exclusive or is an abelian group. The combination of operators and over elements produce the well-known field . This field can represent any logic obtainable with the system and has the added benefit of the arsenal of algebraic analysis tools for fields.More specifically, if one associates with 0 and with 1, one can interpret the logical “AND” operation as multiplication on and the “XOR” operation as addition on :Using this basis to describe a boolean system is referred to as algebraic normal form
I think it would be far better to use “and” and “or” (exclusive), seeing as the colloquial “X and/or Y” just means “(X and Y) or (X or Y)”.