真值表
此條目需要補充更多來源。 (2022年6月7日) |
真值表是使用於邏輯中(特別是在連結邏輯代數、布林函數和命題邏輯上)的一類數學用表,用來計算邏輯表示式在每種論證(即每種邏輯變數取值的組合)上的值。尤其是,真值表可以用來判斷一個命題表示式是否對所有允許的輸入值皆為真,亦即是否為邏輯有效的。
「用真值表製表的推理模式是由弗雷格、查爾斯·皮爾士和恩斯特·施羅德於1880年代所發明的。這種表格於1920年代之後廣泛地發現在許多文獻上(揚·武卡謝維奇、埃米爾·波斯特、維根斯坦)」(蒯因, 39)。路易斯·卡羅早在1894年就公式化了真值表來解決特定問題,但是包含他這項工作的手稿直到1977年才被發現[1]。維根斯坦的《邏輯哲學論》利用真值表把真值函數置於序列中。這個著作的廣泛影響導致了真值表的傳播。
真值表被用來計算以「決策程式」建構的命題表示式的值。命題表示式可以是一個原子公式(命題常數、命題變數或命題函數,如Px或P(x)),或以邏輯算子(如邏輯與()、邏輯或()、邏輯非())由原子公式建構出來的公式。舉例來說,即是個命題表示式。
真值表中的列標題展示了 (i)命題函數與/或變量,和 (ii)建造自這些命題函數或變量和運算符的真值泛函表達式。行展示對 (i)和 (ii)的T或F指派的每個可能的求值。換句話說,每行都是對 (i)和 (ii)的不同解釋。
經典(就是說二值)邏輯的真值表限定於只有兩個真值是可能的布林邏輯系統,它們是「真」或「假」,通常在表中簡單的表示為T和F。
否定
在布林邏輯系統中,所有運算符都能以這種方式明確的定義。例如NOT(¬)關係定義如下:
¬ F T T F
邏輯合取
例如,採用兩個命題變量,和和邏輯運算符"AND"(∧),表示合取"A與B"或 ∧ 。在普通英語中,如果A和B都是真的,那麼合取" ∧ "是真的;在所有的對 ∧ 的真值的可能指派,合取都是假的。這種聯繫定義如下:
∧ F F F F T F T F F T T T
邏輯析取
OR (∨)關係定義如下:
∨ F F F F T T T F T T T T
邏輯與非
可以構造複合的表達式,使用圓括號來指示優先級。
合取的否定¬( ∧ )≡ ∧ ,和否定的析取¬ ∨ ¬ 描述如下:
∧ ∧ ¬ ¬ ¬∨¬ F F F T T T T F T F T T F T T F F T F T T T T T F F F F
邏輯或非
真值表可以用來證明邏輯等價。
析取的否定¬( ∨ )≡ ∨ ,和否定的合取¬ ∧ ¬ 描述如下:
∨ ∨ ¬ ¬ ¬∧¬ F F F T T T T F T T F T F F T F T F F T F T T T F F F F
比較上面兩個真值表,因為對 ∧ 和¬ ∨ ¬ 二者,與 ∨ 和¬ ∧ ¬ 二者,枚舉和的所有可能真值生成相同真值,它們分別是邏輯等價的,並可相互代換。這種等價是德·摩根定律中的。
邏輯互斥或
A ∨ B (還寫為或)描述如下:
∨ T T F T F T F T T F F F
最常用邏輯運算符的真值表
下面的真值表給出2個二值變量(P,Q是布林變量)的16個可能的真值函數中最常用的7個的定義:
∧ ∨ ∧ ∨ → ← ↔ F F F F F F T T T F T F T T T T F F T F F T T T F T F T T T T F F T T T
註解:
- T = 真,F = 假
- ∧ = AND(邏輯合取)
- ∨ = OR(邏輯析取)
- ∨ = XOR(互斥或)
- ≡ = XNOR(互斥或非)
- → = 「如果-那麼」條件
- ← = 「當」條件
- ↔ = 雙條件或「若且唯若」
Johnston圖,類似於文氏圖和歐拉圖,提供了可視化真值表的方式。LogicTutorial.com有展示真值表的交互的Johnston圖。
二元運算符的緊縮真值表
對於二元運算符,還使用一種緊縮形式的真值表,這裡的行標題和列標題指定操作元(operand)而表單元指定結果。例如布林邏輯是這種真值表表示法:
|
|
這種表示法在運算符是交換性的時候特別有用,儘管你可以補充的指定行是第一個操作元而列是第二個操作元。這種緊縮的表示法在討論邏輯的多值擴展時特別有用,因為組合數的爆炸性增加,它能有效的縮減所需要的行數。它還提供了在表中值的分布的快速可辯識的特徵性"形狀",可以幫助讀者更加快速的把握規律。
參見
參考文獻
引用
- ^ Charles Lutwidge Dodgson. (原始內容存檔於2006-09-25).
來源
- Quine, W.V.(1982), Methods of Logic, 4th edition, Harvard University Press, Cambridge, MA.