W3C home > Mailing lists > Public > www-math@w3.org > September 2003

semantics of n-ary xor?

From: Andreas Strotmann <Strotmann@rrz.uni-koeln.de>
Date: Wed, 17 Sep 2003 13:07:27 +0200
Message-ID: <3F68406F.4000803@rrz.uni-koeln.de>
To: www-math@w3.org, om@openmath.org

     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
Received on Wednesday, 17 September 2003 07:08:50 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Saturday, 20 February 2010 06:12:55 GMT