范式

2024 年 8 月 28 日 | 阅读 2 分钟

规范形式有两种类型

  1. 析取范式或积之和或 (SOP)。
  2. 合取范式或和之积或 (POS)。

析取范式或积之和或 (SOP)

如果一个布尔表达式在 ({0, 1}, ∨,∧,') 上是最小项的并集,则称其为析取范式

示例: (x1'∧x2'∧x3')∨( x1'∧x2∧x3' )∨(x1∧x2∧x3) 是析取范式中的一个布尔表达式。

因为有三个最小项 x1'∧x2'∧x3',x1'∧x2∧x3 和 x1∧x2∧x3

最大项: 如果一个布尔表达式 n 个变量 x1,x2,....xn 的形式为 x1∨x2∨..........∨xn,则称其为最大项

其中 xi 用于表示 xi 或 xi'。

合取范式或和之积或 (POS)

如果一个布尔表达式在 ({0, 1}, ∨,∧,') 上是最大项的交集,则称其为析取范式

示例

        (x1∨x2∨x3)∧( x1∨x2∨x3 )∧(x1∨x2∨x3 )∧(x1'∨x2∨x3' )∧(x1'∧x2'∧x3)

是合取范式中的一个布尔表达式,由五个最大项组成。

获得析取范式

考虑一个从 {0, 1}n 到 {0, 1} 的函数。 可以通过为每个函数值为 1 的 0 和 1 的有序 n 元组分配一个最小项,从而获得与此函数对应的析取范式中的布尔表达式。

获得合取范式

考虑一个从 {0, 1}n 到 {0, 1} 的函数。 可以通过为每个函数值为 0 的 0 和 1 的有序 n 元组分配一个最大项,从而获得与此函数对应的合取范式中的布尔表达式。

示例: 在以下函数中表达

  1. 析取范式
  2. 合取范式
ff
(0, 0, 0)1(1, 0, 0)0
(0, 0, 1)0(1, 0, 1)1
(0, 1, 0)1(1, 1, 0)0
(0, 1, 1)0(1, 1, 1)1

解决方案

  1. (x1'∧ x2' ∧ x3') ∨(x1'∧x2∧ x3' )∨(x1∧x2'∧x3 )∨(x1∧x2∧x3)
  2. (x1'∨x2'∨x3')∧( x1'∨x2∨x3 )∧(x1∨x2'∨x3' )∧(x1∨x2∨x3')

对偶性原理

任何表达式 E 的对偶表达式都是通过交换运算 + 和 *,以及在原始表达式 E 中交换相应的恒等元素 0 和 1 来获得的。

示例: 写出以下布尔表达式的对偶表达式

1. (x1*x2) + (x1*x3')         2. (1+x2)*( x1+1)
3. (a ∧(b∧c))

解决方案

1. ( x1+x2)*( x1+x3')         2. (0*x2)+( x1*0)
3. (a ∨(b∧c))

注意:布尔代数中任何定理的对偶定理也是一个定理。


下一主题逻辑门和电路