简化 xnor 的正确方法是什么

问题描述

我正在阅读资源 https://www.mi.mun.ca/users/cchaulk/misc/boolean.htm,我注意到 xnor 简化似乎有混合输出

15a15b15c 都专注于 xnor 但当我尝试检查时似乎只有 15b 是正确的。

供参考:

15a = (X + Y) • '(X • Y)

15b = 'X'Y + XY

15c =  (X + Y) • ('X + 'Y)

所有这些的预期真值表是:

x y 输出
0 0 真实
0 1
1 0
1 1 真实

但只有 15b 给出了它作为真值表。

我是否错误解决了 15a,15c 或资源不正确?

解决方法

15b 是 XNOR 在联合范式中的定义。 15c 是析取范式中XNOR(即XOR)的否定。您可以使用 De Morgan's laws 推导出该状态

  • '(XY) == 'X + 'Y
  • '(X + Y) == 'X'Y

利用这些定律,我们可以先写出 15b

'X'Y + XY = '('('X'Y)'(XY))
          = '((X + Y)('X + 'Y))

得到 15c 的否定。再次使用它,我们得到 15a 的否定。

          = '(X + Y) + '('X + 'Y)
          = '(X + Y) + XY
          = '((X+Y) '(XY))