- 離散數學資源
- 離散數學 - 快速指南
- 離散數學 - 資源
- 離散數學 - 討論
布林函式化簡
使用代數函式化簡
在這種方法中,一個布林表示式透過應用布林恆等式簡化為一個等價的表示式。
問題 1
使用布林恆等式最小化以下布林表示式:
$$F (A, B, C) = A'B + BC'+ BC + AB'C'$$
解答
已知,$F (A, B, C) = A'B + BC'+ BC + AB'C'$
或,$F (A, B, C) = A'B + (BC'+ BC') + BC+ AB'C'$
[根據冪等律,BC’ = BC’ + BC’]
或,$F (A, B, C) = A'B + (BC'+ BC) + (BC'+ AB'C')$
或,$F (A, B, C) = A'B + B(C'+ C) + C'(B+ AB')$
[根據分配律]
或,$F (A, B, C) = A'B + B.1 + C'(B + A)$
[ (C' + C) = 1 且吸收律 (B + AB')= (B + A)]
或,$F (A, B, C) = A'B + B + C'(B + A)$
[ B.1 = B ]
或,$F (A, B, C) = B(A'+ 1) + C'(B + A)$
或,$F (A, B, C) = B.1 + C'(B + A)$
[ (A' + 1) = 1 ]
或,$F (A, B, C) = B + C'(B + A)$
[ 因為,B.1 = B ]
或,$F (A, B, C) = B + BC' + AC'$
或,$F (A, B, C) = B(1 + C') + AC'$
或,$F (A, B, C) = B.1 + AC'$
[因為,(1 + C') = 1]
或,$F (A, B, C) = B + AC'$
[因為,B.1 = B]
所以,$F (A, B, C) = B + AC'$是最小化形式。
問題 2
使用布林恆等式最小化以下布林表示式:
$$F (A, B, C) = (A + B) (A + C)$$
解答
已知,$F (A, B, C) = (A + B) (A + C)$
或,$F (A, B, C) = A.A + A.C + B.A + B.C$ [應用分配律]
或,$F (A, B, C) = A + A.C + B.A + B.C$ [應用冪等律]
或,$F (A, B, C) = A(1 + C) + B.A + B.C$ [應用分配律]
或,$F (A, B, C) = A + B.A + B.C$ [應用支配律]
或,$F (A, B, C) = (A + 1).A + B.C$ [應用分配律]
或,$F (A, B, C) = 1.A + B.C$ [應用支配律]
或,$F (A, B, C) = A + B.C$ [應用支配律]
所以,$F (A, B, C) = A + BC$ 是最小化形式。
卡諾圖
卡諾圖(K-map),由 Maurice Karnaugh 於 1953 年提出,是真值表的網格狀表示,用於簡化布林代數表示式。卡諾圖在不同位置具有 0 和 1 的條目。它將具有公共因子的布林表示式組合在一起,並從表示式中消除不需要的變數。在 K-map 中,跨越垂直或水平單元格邊界總是僅改變一個變數。
示例 1
下面給出了一個任意的真值表:
| A | B | A 操作 B |
|---|---|---|
| 0 | 0 | w |
| 0 | 1 | x |
| 1 | 0 | y |
| 1 | 1 | z |
現在我們將為上述真值表建立一個 K-map:
示例 2
現在我們將為表示式 AB+ A’B’ 建立一個 K-map:
使用 K-map 化簡
K-map 使用一些規則透過將相鄰單元格組合成單個項來簡化布林表示式。規則如下:
規則 1 - 任何包含零的單元格都不能分組。
錯誤分組
規則 2 - 組必須包含 2n 個單元格(n 從 1 開始)。
錯誤分組
規則 3 - 分組必須是水平或垂直的,但不能是對角線的。
錯誤的對角線分組
正確的垂直分組
正確的水平分組
規則 4 - 組必須儘可能大。
分組不足
正確分組
規則 5 - 如果任何單元格的 1 不能與任何其他單元格分組,它將本身作為一個組。
正確分組
規則 6 - 組可以重疊,但組的數量應儘可能少。
正確分組
規則 7 - 最左側的單元格/單元格可以與最右側的單元格/單元格分組,最頂部的單元格/單元格可以與最底部的單元格/單元格分組。
正確分組
問題
使用 K-map 最小化以下布林表示式:
$$F (A, B, C) = A'BC + A'BC' + AB'C'+ AB'C$$
解答
每個項都放入 K-map 中,我們得到以下結果:
F (A, B, C) 的 K-map
現在我們將根據上面列出的規則對 1 的單元格進行分組:
F (A, B, C) 的 K-map
我們得到了兩個組,稱為 $A’B$ 和 $AB’$。因此,$F (A, B, C) = A’B+ AB’= A \oplus B$。這是最小化形式。