I am trying to define a Odd Parity Function that takes three 1 bit inputs and will output a 1 if the 3 bits are odd as a Boolean function.1 1 0 = 01 0 0 = 10 0 0 = 01 1 1 = 1I understand this has a relationship to XOR as I can define this with 2 parameter as X xor Y = (XY')+(X'Y)My assumption is the function will look like this(X xor Y) xor Z = (((XY')+(X'Y))Z')+(((XY')+(X'Y))'Z)Can this function be simplifed?
Odd Parity Function
logic;boolean algebra;xor
Your question is addressed (for the parity of $n$ bits) by Troy Lee, who shows in his paper The formula size of PARITY that the (optimal) formula size (number of literals) of parity on $n = 2^\ell + k$ bits (where $0 \leq k < 2^\ell$) is $2^\ell (2^\ell + 3k)$. In your particular case, $\ell = k = 1$ and so the formula size is $10$, matching your formula, and showing that it is tight under this complexity measure.