Determine if XNOR is distributive over addition XNORa b is 1
Solution
Think about it...
sa = 1 ca = 1
 sb = 1 cb = 1
 a = sa + ca = 2
 b = sb + cb = 2
(a | b) = 2
 (a & b) = 2
 (sa | sb) + (ca | cb) = (1 | 1) + (1 | 1) = 1 + 1 = 2 # Correct or Coincidence?
 (sa & sb) + (ca & cb) = (1 & 1) + (1 & 1) = 1 + 1 = 2 # Correct or Coincidence?
 Let\'s try some other values:
sa = 1001 ca = 1 # Binary
 sb = 0100 cb = 1
 a = sa + ca = 1010
 b = sb + cb = 0101
 (a | b) = 1111
 (a & b) = 0000
 (sa | sb) + (ca | cb) = (1001 | 0101) + (1 | 1) = 1101 + 1 = 1110 # Oh dear!
 (sa & sb) + (ca & cb) = (1001 & 0101) + (1 & 1) = 0001 + 1 = 2 # Oh dear!
So, its proof by 4-bit counter example that you cannot distribute AND or OR over addition.
What about \'>>>\' (unsigned or logical right shift). Using the last example values, and r = 1:
sa = 1001
 ca = 0001
 sa >>> 1 = 0101
 ca >>> 1 = 0000
 (sa >>> 1) + (ca >>> 1) = 0101 + 0000 = 0101
 (sa + ca) >>> 1 = (1001 + 0001) >>> 1 = 1010 >>> 1 = 0101 # Coincidence?
 Let\'s see whether that is coincidence too:
sa = 1011
 ca = 0001
 sa >>> 1 = 0101
 ca >>> 1 = 0000
 (sa >>> 1) + (ca >>> 1) = 0101 + 0000 = 0101
 (sa + ca) >>> 1 = (1011 + 0001) >>> 1 = 1100 >>> 1 = 0110 # Oh dear!
 Proof by counter-example again.
So logical right shift is not distributive over addition either.
![Determine, if XNOR is distributive over addition. [XNOR(a, b) is 1 when both a and b are 1 or both a and b are 0.]SolutionThink about it... sa = 1 ca = 1 sb =   Determine, if XNOR is distributive over addition. [XNOR(a, b) is 1 when both a and b are 1 or both a and b are 0.]SolutionThink about it... sa = 1 ca = 1 sb =](/WebImages/38/determine-if-xnor-is-distributive-over-addition-xnora-b-is-1-1116152-1761592922-0.webp)
