【问题标题】:Simplify boolean xy + xy’z + x’yz简化布尔 xy + xy'z + x'yz
【发布时间】:2026-01-25 16:20:02
【问题描述】:

我试图证明 XYZ + XYZ' + XY'Z + X'YZ = XY+ XZ + YZ

到目前为止,我认为。我不知道我是否走在正确的轨道上,但是当我最终得到这个 xy + xy'z + x'yz 时,我一直卡住......

这是我所做的:

F(X,Y,Z) = XYZ + XYZ'+XY'Z + X'YZ

XYZ + XYZ' + ZXY' + XYX'(可交换)

XY(Z) + XY(Z') + ZXY' + ZYX'(联想)

XY(Z+Z') + ZXY' + ZYX'(分配式)

XY(1) + ZXY' + ZYX'(逆)

XY + ZXY' + ZYX'(身份)

如你所见...我被困在这里...因为我需要 XY + ZX + ZY 但我无法摆脱最后两个底片..

【问题讨论】:

  • 我投票结束这个问题,因为它是关于数学(布尔代数),而不是编程。

标签: boolean boolean-expression simplify


【解决方案1】:

我建议:

XYZ + XYZ' + XY'Z + X'YZ
= (XYZ + XYZ + XYZ) + XYZ' + XY'Z + X'YZ
= (XYZ + XYZ') + (XYZ + XY'Z) + (XYZ + X'YZ)
= XY(Z + Z') + X(Y + Y')Z + (X + X')YZ
= XY + XZ + YZ

【讨论】:

  • 又好又甜。非正式的也很明显:“三个都对,或者两个对一个假”与“这三个中至少有两个必须是真的”是一样的。
  • 你是怎么得到第一行的???其余的很有意义,非常感谢,但我不知道如何再添加两个 xyz?我只是想知道未来,这样我就可以知道我哪里出错了。
  • @tiinkx:对于任何 foofoo = foo + foo。或者,如果您愿意,foo = foo · 1 = foo · (1 + 1) = foo · 1 + foo · 1 = foo + foo.
  • 这算不算法律?? @ruakh
  • @tiinkx:我不确定“法律”这个词是否正确,但是——是的。 + 被定义为 0 + 0 = 0 和 1 + 1 = 1。由于 0 和 1 是仅有的两个可能值,我们有 foo + foo = foo 用于两个可能的值。