# [om] semantics of n-ary xor?

Andreas Strotmann Strotmann at rrz.uni-koeln.de
Wed Sep 17 13:07:27 CEST 2003

     What exactly is the semantics of an n-ary xor?

I'm not kidding -- I really don't know. Let me explain why.

At first glance, an obvious definition is  xor(a,b,c):=xor(a,xor(b,c))
-- i.e. n-ary xor is something like a parity predicate.

It struck me that for infinite index sets I,  xor_{i\in I}(P(i)) is
always undefined and thus not very useful, which of course bugged me
since I was the one who brought up the topic of "big" versions of n-ary
operators, and I fell to wondering if the "obvious" semantics of n-ary
xor is really the correct one.

And I realized that textbooks tend to explain the meaning of binary xor
as "either...or...(but not both)" -- and that the n-ary version of that
phrase (either ... or... or... or...) does *not* mean parity -- it means
"only one of these choices".  Thus, a "natural" (as opposed to
"obvious") semantics of n-ary xor is "true if exactly one of the
arguments is true, false otherwise" -- which very nicely generalizes to
a well-known "big-xor" operator, namely the "exists-uniquely"
quanitifier, which I suspect retains a well-defined semantics even in
arbitrary transfinite contexts.

Now I ask you:  what exactly *is* the meaning of n-ary xor in MathML (or
OpenMath, for that matter)?

-- Andreas
--
om at openmath.org  -  general discussion on OpenMath
Post public announcements to om-announce at openmath.org
Automatic list maintenance software at majordomo at openmath.org
Mail om-owner at openmath.org for assistance with any problems