You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求协助:用布尔代数证明((m xor a) xor (m and a))=(m or a)

布尔代数推导((m xor a) xor (m and a)) = (m or a)

别担心,我来一步步带你用布尔代数推导出这个等式——核心就是把异或拆解成基础的与、或、非运算,再结合布尔代数的常用定律化简就行!

首先,先明确布尔代数里的几个基础定义和定律:

  • 异或的定义:x xor y = x·¬y + ¬x·y(其中·表示与,+表示或,¬表示非)
  • 德摩根定律:¬(x·y) = ¬x + ¬y,¬(x+y) = ¬x·¬y
  • 互补律:x + ¬x = 1,x·¬x = 0
  • 同一律:x·1 = x,x + 0 = x
  • 分配律:x·(y+z) = x·y + x·z,x+(y·z) = (x+y)·(x+z)

步骤1:展开最内层的异或

先处理等式左边的m xor a,根据异或定义:

m xor a = m·¬a + ¬m·a

步骤2:代入原式,展开外层异或

把上面的结果代入左边的完整表达式(m xor a) xor (m and a),设X = m·¬a + ¬m·a,Y = m·a,那么外层异或可以展开为:

X xor Y = X·¬Y + ¬X·Y

子步骤2.1:计算X·¬Y

首先用德摩根定律化简¬Y:¬(m·a) = ¬m + ¬a,然后代入展开:

X·¬Y = (m·¬a + ¬m·a) · (¬m + ¬a)

用分配律展开每一项:

= m·¬a·¬m + m·¬a·¬a + ¬m·a·¬m + ¬m·a·¬a

结合互补律和同一律化简:

  • m·¬m = 0 → 第一项为0
  • ¬a·¬a = ¬a → 第二项为m·¬a
  • ¬m·¬m = ¬m → 第三项为¬m·a
  • a·¬a = 0 → 第四项为0
    所以最终:
X·¬Y = m·¬a + ¬m·a

子步骤2.2:计算¬X·Y

先对X取反,用德摩根定律:

¬X = ¬(m·¬a + ¬m·a) = ¬(m·¬a) · ¬(¬m·a) = (¬m + a) · (m + ¬a)

展开这个表达式:

= ¬m·m + ¬m·¬a + a·m + a·¬a

化简:

  • ¬m·m = 0,a·¬a = 0 → 剩下¬m·¬a + m·a
    然后乘以Y = m·a:
¬X·Y = (¬m·¬a + m·a) · m·a

分配律展开:

= ¬m·¬a·m·a + m·a·m·a

化简:

  • ¬m·m = 0 → 第一项为0
  • m·m = m,a·a = a → 第二项为m·a
    所以最终:
¬X·Y = m·a

步骤3:合并结果并化简

把X·¬Y和¬X·Y相加,得到左边的完整表达式:

左边 = (m·¬a + ¬m·a) + m·a

合并同类项¬m·a + m·a,用分配律和互补律:

¬m·a + m·a = a·(¬m + m) = a·1 = a

代入后左边变为:

左边 = m·¬a + a

再用分配律和互补律化简:

m·¬a + a = (m + a)·(¬a + a) = (m + a)·1 = m + a

而m + a就是m or a,也就是等式的右边!

这样就完成了布尔代数的推导,和真值表的结果一致啦~

内容的提问来源于stack exchange,提问作者Omid Barkhordarian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 15:47:54