最小项的总和与最大项的乘积
sum of minterm vs product of maxterm
给定以下 F(A,B,C) 的布尔表达式:F(A,B,C) = A' + B + C'
关于上述表达式,以下哪些说法 is/are 正确?
(i) 是一个SOP表达式
(ii) 它是一个 POS 表达式
(iii) 它是一个最小项求和表达式
(iv) 它是一个乘积表达式
此问题的标准答案是 i),ii) 和 iv)
我的问题是为什么 iii) 不是答案之一?我画了K图,发现可以推导出这样一个求和表达式
布尔表达式中的一组文字仅形成最小项或最大项,前提是其中包含所有文字(给定函数的变量或其否定)。
最小项是函数所有文字的乘积,最大项是函数所有文字的总和。
在 K-map 中,最小项或最大项仅标记出一个单元格。实际上 table 最大项或最小项只匹配一行。
下面的真相-table对应给定的函数:
index | a | b | c || f(a,b,c) | term matching the row/K-map cell
-------|---|---|---||----------|----------------------------------
0 | 0 | 0 | 0 || 1 | minterm: m0 = (¬a⋅¬b⋅¬c)
1 | 0 | 0 | 1 || 1 | minterm: m1 = (¬a⋅¬b⋅c)
2 | 0 | 1 | 0 || 1 | minterm: m2 = (¬a⋅b⋅¬c)
3 | 0 | 1 | 1 || 1 | minterm: m3 = (¬a⋅b⋅c)
-------|---|---|---||----------|----------------------------------
4 | 1 | 0 | 0 || 1 | minterm: m4 = (a⋅¬b⋅¬c)
5 | 1 | 0 | 1 || 0 | MAXTERM: M5 = (¬a + b + ¬c)
6 | 1 | 1 | 0 || 1 | minterm: m6 = (a⋅b⋅¬c)
7 | 1 | 1 | 1 || 1 | minterm: m7 = (a⋅b⋅c)
事实 table(和您的 K 图)中只有一个最大项,并且唯一确定函数输出为逻辑 0 的最大项。它是一个有效的最大项乘积表达式,即使如果只有一个。它也是与原始表达式相同的布尔表达式,因此这也是一个有效的 product-of-maxterms 表达式。
然而,这不是有效的最小项之和,因为有none:
f(a,b,c) = ∏(5) = M5 = (¬a + b + ¬c)
为了使原始表达式也是最小项的总和,需要在您的 K- 中标记出每个 true/one 单元格像这样分别映射:
f(a,b,c) = ∑(0,1,2,3,4,6,7) = m0 + m1 + m2 + m3 + m4 + m6 + m7 =
= (¬a⋅¬b⋅¬c)+(¬a⋅¬b⋅c)+(¬a⋅b⋅¬c)+(¬a⋅b⋅c)+(a⋅¬b⋅¬c)+(a⋅b⋅¬c)+(a⋅b⋅c)
可以看出,即使这两个布尔表达式等价,原来的那个(等式左边)也没有写成最小项求和表达式(等式右边)
(¬a+b+¬c) = (¬a⋅¬b⋅¬c)+(¬a⋅¬b⋅c)+(¬a⋅b⋅¬c)+(¬a⋅b⋅c)+(a⋅¬b⋅¬c)+(a⋅b⋅¬c)+(a⋅b⋅c)
任何乘积都不是小项,所以原始表达式可以是和的乘积和乘积之和,但不是有效的最小项之和。
f(a,b,c) = (¬a + b + ¬c) = (¬a) + (b) + (¬c)
在图片(使用乳胶创建)中,您可以看到表达式——它在最小 DNF 和最小 CNF 方面是相同的——以及与之等效的最小项之和。
给定以下 F(A,B,C) 的布尔表达式:F(A,B,C) = A' + B + C' 关于上述表达式,以下哪些说法 is/are 正确?
(i) 是一个SOP表达式 (ii) 它是一个 POS 表达式 (iii) 它是一个最小项求和表达式 (iv) 它是一个乘积表达式
此问题的标准答案是 i),ii) 和 iv)
我的问题是为什么 iii) 不是答案之一?我画了K图,发现可以推导出这样一个求和表达式
布尔表达式中的一组文字仅形成最小项或最大项,前提是其中包含所有文字(给定函数的变量或其否定)。
最小项是函数所有文字的乘积,最大项是函数所有文字的总和。
在 K-map 中,最小项或最大项仅标记出一个单元格。实际上 table 最大项或最小项只匹配一行。
下面的真相-table对应给定的函数:
index | a | b | c || f(a,b,c) | term matching the row/K-map cell
-------|---|---|---||----------|----------------------------------
0 | 0 | 0 | 0 || 1 | minterm: m0 = (¬a⋅¬b⋅¬c)
1 | 0 | 0 | 1 || 1 | minterm: m1 = (¬a⋅¬b⋅c)
2 | 0 | 1 | 0 || 1 | minterm: m2 = (¬a⋅b⋅¬c)
3 | 0 | 1 | 1 || 1 | minterm: m3 = (¬a⋅b⋅c)
-------|---|---|---||----------|----------------------------------
4 | 1 | 0 | 0 || 1 | minterm: m4 = (a⋅¬b⋅¬c)
5 | 1 | 0 | 1 || 0 | MAXTERM: M5 = (¬a + b + ¬c)
6 | 1 | 1 | 0 || 1 | minterm: m6 = (a⋅b⋅¬c)
7 | 1 | 1 | 1 || 1 | minterm: m7 = (a⋅b⋅c)
事实 table(和您的 K 图)中只有一个最大项,并且唯一确定函数输出为逻辑 0 的最大项。它是一个有效的最大项乘积表达式,即使如果只有一个。它也是与原始表达式相同的布尔表达式,因此这也是一个有效的 product-of-maxterms 表达式。
然而,这不是有效的最小项之和,因为有none:
f(a,b,c) = ∏(5) = M5 = (¬a + b + ¬c)
为了使原始表达式也是最小项的总和,需要在您的 K- 中标记出每个 true/one 单元格像这样分别映射:
f(a,b,c) = ∑(0,1,2,3,4,6,7) = m0 + m1 + m2 + m3 + m4 + m6 + m7 =
= (¬a⋅¬b⋅¬c)+(¬a⋅¬b⋅c)+(¬a⋅b⋅¬c)+(¬a⋅b⋅c)+(a⋅¬b⋅¬c)+(a⋅b⋅¬c)+(a⋅b⋅c)
可以看出,即使这两个布尔表达式等价,原来的那个(等式左边)也没有写成最小项求和表达式(等式右边)
(¬a+b+¬c) = (¬a⋅¬b⋅¬c)+(¬a⋅¬b⋅c)+(¬a⋅b⋅¬c)+(¬a⋅b⋅c)+(a⋅¬b⋅¬c)+(a⋅b⋅¬c)+(a⋅b⋅c)
任何乘积都不是小项,所以原始表达式可以是和的乘积和乘积之和,但不是有效的最小项之和。
f(a,b,c) = (¬a + b + ¬c) = (¬a) + (b) + (¬c)
在图片(使用乳胶创建)中,您可以看到表达式——它在最小 DNF 和最小 CNF 方面是相同的——以及与之等效的最小项之和。