事實上,任何量都分為常數和變量,包括命題。嚴格來說,邏輯命題只是指“命題常數”——能判斷真假的句子叫命題。比如2 = 2是壹個命題;X = 2不是壹個命題。但在數理邏輯中,我們研究更多的是“命題變量”(或命題變量)。所謂命題變量,就是取值範圍設定為{true,false}(或{1,0})的變量——即有真有假,但真假未知。
妳的照片太小,看不清楚。但是妳的問題並不難解釋。根據妳的描述,命題P,Q,R實際上是命題常數,它們的值是:p = q = 1,r = 0。那麽妳給出的命題公式其實就是壹個“常數表達式”,類似於小學公式——邏輯連接詞,可以看作是“運算符”。那麽它的結果壹定是令人滿意的。如妳所說,計算過程是:
(?1 ∨ 0)?(1 ∧ ?0)=(0)?(1)= 0。
作為壹個計算問題,這個很簡單。但我之前說過,邏輯學真正研究的不是具體的命題常數,而是命題變量之間的關系。
提到變量,自然會想到函數。實際上,命題公式是壹個以命題自變量為自變量的多元函數。真值表就是這個函數的“圖像”——表示“所有自變量的每壹種組合”下的函數值。我覺得這就是妳對自己表情的看法(?p ∨ r)?(p ∧?r)= 1的原因看似不合理——這其實就是“函數”和“函數值”的區別:
函數:F(p,r)=(?p ∨ r)?(p ∧?r);
函數值:f (1,0) =(?1 ∨ 0)?(1 ∧ ?0)=(0)?(1)= 0;
顯然,根據p和r的不同組合,我們還可以得到其他函數值;以及所有自變量D組合時的函數值,形成“真值表”。
從數學的角度來看,命題公式很像代數中的“多項式”。在代數中,研究多項式的因式分解、等價變換等性質時,將公式中的字母作為變量處理。現在我們在研究命題公式的各種性質時,也要從變量的角度來看。
對於由變量組成的命題公式(或代數表達式),其形式的每壹次變換都是壹個“恒等式”。也就是說,該公式適用於公式中所有變量的值的各種組合。
對於邏輯連詞,我們最熟悉也最容易理解的是:and(合取),or(析取),not(否定)。其他連詞(如條件、雙條件)可以轉換成這三種形式。
p → q ≡?p∨q;
p?q≦(p∧q)∨(?p ∧?q);
這些都是恒等式,可以用真值表來證明。妳遲早會學到的東西——包括復合命題中的非運算:
非運算是“壹元運算符”,即只有壹個量要用它來計算。可以是單變量(或常數),也可以是命題公式。否定的作用是否定與之相關的量的值。對於常數(或常數表達式),結果也是可知的和常數。對於變量(或命題公式),結果是未知的,可變的。對於非,也有壹些常用的身份:
(p ∨ q)≡?p ∧?q;
(p ∧ q)≡?p ∨?q;
這就是著名的“德·摩根定律”,有點像“乘法分配律”!只是“not”把不帶括號的運算符作為“逆”。
根據以上恒等式,我們可以簡化妳給出的命題表達式:
(?p ∨ r)?(p ∧?r)
= [(?p ∨ r)∧(p ∧?r)] ∨ [?(?p ∨ r)∧?(p ∧?r)]
= [(?p ∧ p ∧ r)∨(r ∧ p ∧?r)] ∨ [(p ∧?r)∩(?p ∨ r)]
= [(0)∨(0)] ∨ [(p ∧?r ∧?p)∩(p∧?r ∧ r)]
= [0] ∨ [(0)∨(0)] ]
= 0;
事實上,仔細觀察可以看出:
(?p ∨ r)=(p ∧?r);
即兩個子表達式的值總是相反的。所以這個“雙條件”公式永遠不成立,也就是它的值永遠是0。這個命題公式叫做“矛盾”。