I was reading over a resource https://www.mi.mun.ca/users/cchaulk/misc/boolean.htm and I noticed the xnor
simplification seems to have mixed outputs.
15a
, 15b
, 15c
are all focusing on xnor
but only 15b
seems to be correct when I attempt to check.
For reference:
15a = (X + Y) • '(X • Y)
15b = 'X'Y + XY
15c = (X + Y) • ('X + 'Y)
The expected truth table for all of them are:
x | y | output |
---|---|---|
0 | 0 | true |
0 | 1 | false |
1 | 0 | false |
1 | 1 | true |
But only 15b is giving that as the truth table.
Am I solving 15a,15c incorrectly or is the resource incorrect?
15b is the definition of XNOR in conjunctive normal form. 15c is the negation of XNOR (i.e., XOR) in disjunctive normal form. You can derive this using De Morgan's laws, which state
'(XY) == 'X + 'Y
'(X + Y) == 'X'Y
Using these laws, we can first write 15b
'X'Y + XY = '('('X'Y)'(XY))
= '((X + Y)('X + 'Y))
to get the negation of 15c. Using it again, we get the negation of 15a.
= '(X + Y) + '('X + 'Y)
= '(X + Y) + XY
= '((X+Y) '(XY))