數學證明/邏輯
正如在引言中所討論的那樣,邏輯陳述與普通英語不同。我們將討論諸如“或”、“和”、“如果”、“當且僅當”之類的概念。(在這裡我想指出,在大多數數學論文中,使用“我們”來指代自己是可以接受的。這被認為是禮貌的,既不命令聽眾做某事,也不將他們排除在討論之外。)
我們在數學中經常遇到陳述。
定義。 (陳述) 一個陳述是一個可以判斷為真或假(但不能同時為真假)的陳述句,其真值為真(用表示)或假(用表示)。
示例。 考慮以下句子
- 數字9是偶數。
- .
- 數學很容易。
- 如何解方程?
- 請閱讀這本書。
- 句子1和2是陳述(即使句子1是假的)。
- 句子3、4和5不是陳述,因為它們不是陳述句,我們無法確定它們是真還是假。
- 特別是,句子3是一個意見,句子4是一個問題,句子5是一個命令。因此,它們都不是陳述句。
對於那些不是陳述的句子,它們中有一種特殊的句子型別,稱為開放語句。
定義。 (開放語句) 一個開放語句是一個其真值取決於特定變數輸入的句子。
備註。
- 由於真值可能會隨著輸入的改變而改變,因此我們無法確定開放語句的真值(我們無法說它總是真或總是假)。
示例。 考慮句子 ( 表示“使得”)。
- 當時,此句子為真,否則為假。
- 此句子是一個開放語句。
為了表達某些語句真值的所有可能組合,我們通常將它們列在一個表中,稱為真值表。
示例。 (兩個語句的真值表) 對於兩個語句和,它們的真值表如下:,並且和的真值共有四種可能的組合。
示例。 (三個命題的真值表)對於三個命題 , 和 ,它們的真值表如下:,並且存在八種可能的 , 和 的真值組合。
備註。
- 一般來說,有 種可能的 個命題的真值組合,因為每個命題都有兩個可能的真值。
- 三個命題的真值表看起來可能很複雜,如果你不夠仔細,你可能會漏掉(或重複)真值表中的某些組合。因此,這裡有一些關於如何構建這種真值表的建議
- 對於 ,從上到下寫四個 ,然後是四個 ;
- 對於 ,從上到下寫下以下模式:;
- 對於 ,從上到下寫下以下模式:。
在本節中,我們將討論一些將兩個命題組合成一個命題的方法(合取和析取),這類似於 數學證明/集合論導論#集合運算,其中兩個集合被合併成一個集合。此外,我們將討論一種將命題轉換為另一個命題的方法(否定)。
定義。(連線詞)語句 和 的 合取,記作 ,是一個當且僅當 兩者 和 為真時為真,否則為假。
備註。
- 讀作“P 且 Q”,語句 和 的合取也可以直接表示為“ 且 ”。
示例。( 的真值表) 的真值表(根據 和 的真值的可能組合 [1])為
- 我們可以看到, 只有在 兩者 和 為真時為真,否則為假。
定義。 (析取)語句 和 的 析取,記作 ,當 兩者 和 為假時為假,其他情況為真。
備註。
- 也就是說, 當 至少一個 和 為真時為真,其他情況為假。
- 讀作“P 或 Q”,語句 和 的析取也可以直接表示為“ 或 ”。
- 數學中的“或”的含義可能與英語單詞“or”的含義不同。在數學中,“或”是 包含性的,即 或 意味著 或 或者兩者。但是,作為英語單詞,“或”可能是 排他性的,即 或 意味著 或 但不是兩者。例如,當有人說“我今天下午要去圖書館或去公園”,我們理解為“我要麼去圖書館,要麼去公園,但不會兩者都去”。
例:( 的真值表) 的真值表是:
- 我們可以看到,只有當 兩者 和 為假時, 為假,否則為真。
定義: 一個命題 的 否定,記作 ,是一個真值與 相反的命題。
備註。
- 讀作“非 P”,命題 的否定也可以直接用“非 ”或“並非 ”來表達。
- 另一個常見的符號是 來表示命題 的否定。
- 我們將用否定符號表示一個命題的否定的過程稱為對該命題進行 否定。
例:( 的真值表) 的真值表是:
- 我們可以看到, 的真值總是與 相反。
要否定一個陳述,我們通常會在陳述中新增“不”這個詞,或者從陳述中刪除它。例如,對陳述“數字 4 是偶數”的否定是“數字 4 不是 偶數”,而對陳述“數字 1 不是素數”的否定是“數字 1 不是 素數”。

練習。 令 為命題“數字 3 是偶數”,而 為命題“數字 是無理數”。
寫下(用文字) 和 每個命題的否定 不使用“不”這個詞。
- 的否定可以是“數字 3 是奇數”。
- 的否定可以是“數字 是有理數”。

練習。 令 為命題 ,而 為命題 。
(a) 命題 是真還是假?
(b) 命題 是真還是假?
(c) 命題 是真還是假?
(d) 命題 是真還是假?
- 首先,我們可以看到, 和 都是假的。
(a) 由於 是假的,答案是 真。
(b) 由於 是假的,答案是 真。
(c),(d) 由於 和 都為真,則 (c) 和 (d) 的答案均為 真。
除了以上形成新陳述的方式之外,我們還有另一種非常常見的方式,即“如果-那麼組合”。使用“如果-那麼組合”形成的陳述稱為 條件語句。
定義。 (條件語句) 兩個陳述 和 的 條件語句 是陳述“如果 那麼 。”,記作 。 和 分別被稱為條件語句的 假設 和 結論。當 為真且 為假時,條件語句 為 假,其他情況下為 真。
示例。 ( 的真值表) 的真值表是
- 我們可以觀察到,特別是,即使假設 為假,根據定義 [2],條件語句 仍然為真。
- 另一個觀察結果是,當結論為真時,無論假設是真還是假,條件語句都必須為真(參見第 1 行和第 3 行)。
為了更直觀地理解為什麼當假設為假時條件語句總是為真,請考慮以下示例。
示例。 假設 Bob 正在上一個叫做 MATH1001 的數學課程。MATH1001 的課程老師警告 Bob,如果他在這門課程的期末考試中不及格,那麼他將無法透過這門課程。令 表示語句“Bob 在 MATH1001 的期末考試中不及格”,而 表示語句“Bob 無法透過 MATH1001”。那麼,課程老師的陳述是“”。
為了使課程老師的陳述為真,要麼 Bob 確實在 MATH1001 的期末考試中不及格,並且他確實無法透過這門課程,要麼 Bob 通過了 MATH1001 的期末考試。在後一種情況下,無論 Bob 是否透過 MATH1001 都無關緊要,因為如果 Bob 通過了 MATH1001 的期末考試,課程老師不會承諾任何事情 [3]。
為了使課程老師的陳述為假,唯一的情況是 Bob 在 MATH1001 的期末考試中不及格,但他仍然通過了 MATH1001 ( 為真,而 為假)(這表明老師在撒謊!)。
在討論 條件句 和 之後,我們將討論 雙條件句 和 。顧名思義,它包含了 兩個 條件句。除了 之外,還包含了 ,它被稱為條件句 的 逆命題。
在數學中,鑑於條件句 為真,我們通常想知道它的 逆命題 是否也為真 [4]。
示例。 上一例中,課程老師的陳述的逆命題是“如果 Bob 無法透過 MATH1001,那麼他在 MATH1001 的期末考試中不及格。”。
定義. (雙條件句)兩個語句 和 的 雙條件句,記為 ,是指 ,也就是說,“如果 則 。” 以及 “如果 則 。”。
備註。
- 我們也可以在這種情況寫成 當且僅當 。
- 為了更清楚地理解“當且僅當”這個短語,請考慮以下內容
- 當且僅當 可以解釋為 “ 如果 並且 僅當 ”。
- 對於 “ 如果 ”,應該很容易接受它意味著 “如果 則 ”。
- 對於 " 僅當 ,這意味著 只能在 為真時才為真。也就是說, 是 的 必要條件。因此,我們可以推斷,當 為真時, 必須為真(否則 不可能為真)。因此," 僅當 " 意味著 "如果 那麼 ”。
例子. ( 的真值表) 的真值表是
- 我們可以看到,當 為真時, 和 具有 相同 的真值(即 和 都是真,或者 和 都是假),否則為假。
蘊含和邏輯等價
[edit | edit source]當條件語句 為 真 時,我們可以說 " 蘊含 ",記為 。另一方面,當 不 蘊含 ,即 為 假 時,我們記為 。
我們還有其他等效的方式來表達 " 蘊含 ",即
- 是 的 充分條件 (或簡稱為 對於 來說是充分的)
- 我們稱 為 充分條件,因為當 蘊含 時,那麼“ 為真”就 足夠 推匯出“ 為真”。
- 是 的 必要條件 (或者簡而言之 對 是必要的)
- 我們稱 為 的 必要條件,因為當 蘊含 時,當結論 為假時,前提不可能為真(否則條件 將為假)。這解釋了“ 為真”的 必要性。
當 時,我們通常想知道 的 逆命題 是否為真,也就是說我們是否擁有 [5]。
如果 但 ,我們有多種等效的方法來表達這一點
- 是 充分但非必要 的 條件。
- 從前面的解釋,當我們說 是 的必要條件時,我們的意思是 。 因此,當 是 充分 但 非必要 條件時,我們的意思是 以及 。
- 是比 更強的條件(或者簡而言之, 比 更強)。
如果 以及 為真,則雙條件語句 也為真,我們用 表示。 同樣,我們也有多種等效的方法來表達這一點。
- 與 邏輯等價。
- 我們說它們是 邏輯 等價的,因為它們總是具有相同的真值(因為 為真),這與 邏輯 有關。
- " 當且僅當 " (為真)。
- 回想一下,我們也用 " 當且僅當 " 來表達 雙條件 。因此,從技術上講,我們應該寫 " 當且僅當 " 為真,在 的情況下。但是,我們在實踐中很少這樣寫,通常省略“為真”這個短語,因為它會使表示式更加複雜。因此,當我們在這種情況下寫 " 當且僅當 " 時,我們的意思是雙條件為真,而沒有明確說明。
- 通常,當我們只寫 " 當且僅當 " 時,我們的意思是邏輯等價 的含義,而不是語句 。如果我們真的想要後者的含義,我們應該明確說明 " 當且僅當 " 指的是一個 語句。
- 是 必要且充分 的條件,以獲得 。
- 根據之前的解釋, 是 必要 且 充分 的條件,對於 意味著 和 .
定理. (關於合取、析取和否定的某些定律)以下,, 和 是任意語句。
- (雙重否定)
- (合取的交換律)
- (析取的交換律)
- (合取的結合律)
- (析取的結合律)
- (分配律)
- (分配律)
- (德摩根定律)
- (德摩根定律)
證明. 它們可以使用真值表來證明。
備註。
- 您可能會注意到,集合論中也有一些類似的結果(甚至有些結果有相同的名稱!),在關於集合論的章節中討論。這是因為集合論章節中討論的結果實際上是從上面的相應結果幾乎直接證明得出的。
定理。 (條件語句和析取語句之間的橋樑) 語句 和 在邏輯上是等價的。
證明。 可以使用下面的真值表來證明:
定理。 (條件語句與其逆否命題的邏輯等價性) 條件語句 的 逆否命題 被定義為另一個條件語句 ,它們在邏輯上是等價的。
證明。 使用條件語句和析取語句之間的橋樑以及其他一些定律,可以證明如下:
備註。
- 當我們“突然”對 進行兩次否定時,可能會覺得“令人驚訝”。事實上,當我們思考如何證明邏輯等價性時,我們並不是憑空進行。相反,在觀察到 和 之後,才“有動力”這樣做。所以,我們從左到右,從右到左,用這種“三明治”的方式完成了上面的等價序列。這對其他類似的證明可能很有用。
- 這個結果對於後面要討論的逆否命題證明法非常重要。
在定義什麼是重言式和矛盾式之前,我們需要先介紹一些術語。在前面的部分中,我們已經討論了符號 和 的含義。這些符號有時被稱為 邏輯聯結詞,我們可以使用 邏輯聯結詞 來構建一些複雜的語句。這些語句由至少一個給定的(或組成)語句(通常用 等表示)和至少一個邏輯聯結詞構成,被稱為 複合語句。
定義。 (重言式和矛盾式) 一個複合語句 被稱為重言式 (矛盾式),如果它對於組成 的各個組成語句的真值組合都是真 (假)。
備註。
- 我們用 表示重言式,用 表示矛盾式。
- 當語句 是一個重言式時,我們也可以寫成,因為它意味著 和 始終具有相同的真值,並且因為 的真值始終為真,所以 的真值也始終為真,即 是一個重言式。
- 因此,當我們想要證明一個語句 總是為真 時,一種方法是證明。例如,如果我們要證明 和 在邏輯上是等價的,我們可以證明。
示例。 令 是一個任意的語句。那麼,
- 是一個重言式。
- 是一個矛盾式。
這是因為 的真值表是 ,而 的真值表是
示例. 令 和 為任意命題。那麼, 是一個重言式,因為它的真值表是

練習. 以下是一些關於此示例的進一步問題。
證明 是一個重言式,不要使用真值表。
由於 給定的條件式是一個重言式。
一名學生聲稱 是一個矛盾,並給出以下論證
- 由於 ,這個條件式是一個矛盾。
評論他的說法。
- 他的說法是錯誤的。
- 步驟 是不正確的,因為我們應該在這裡使用分配律,而不能將兩種邏輯連線符混用應用結合律。
- 事實上,在上面的問題中已經證明了條件式 既不是重言式,也不是矛盾。
定理。 (關於重言式和矛盾的定律) 設 是一個任意的命題。那麼,
- .
- .
- .
- .
- .
- .
證明. 它們可以使用真值表來證明。
回顧一下,一個開放語句是一個其真值取決於某些變數輸入的句子。在本節中,我們將討論將開放語句轉換為語句的一種方法,透過使用量詞來“限制輸入”,這種語句被稱為量化語句。例如,考慮語句“每個實數的平方是非負的”。它可以改寫為“對於每個實數 ,”。我們可以令 為 開放語句“”。然後,它可以進一步改寫為“對於每個實數 ,”。在這種情況下,我們可以觀察到一個開放語句()是如何轉換為一個語句(對於每個實數 ,),而短語“對於每個”是 全稱量詞的一種型別。其他也是全稱量詞的短語包括“對於每一個”、“對於所有”和“無論何時”。全稱量詞通常用 (一個倒置的“A”)表示。介紹了這個符號之後,我們提到的語句可以進一步改寫為“”(我們在這裡也使用了一些集合符號)。
一般來說,我們可以使用全稱量詞將一個開放語句 轉換為一個語句,即“”,其中 是一個(通用)集合(或域),它限制了輸入 。
除了全稱量詞,將開語句轉換為語句的另一種方法是使用存在量詞。每個短語“存在”、“有”、“至少有一個”、“對於一些”[6]、“對於至少一個”被稱為存在量詞,用(一個倒置的“E”)表示。例如,我們可以將語句“某個實數的平方為負”改寫為“”(這是錯誤的)。
一般來說,我們可以使用存在量詞將開語句轉換為語句,即“”,其中是一個(全稱)集合(或域),它限制了輸入。
另一個與存在量詞相關的量詞是唯一存在量詞。每個短語“存在唯一”、“恰好有一個”、“對於唯一的”、“對於恰好一個”被稱為唯一存在量詞,用表示。例如,我們可以將語句“存在唯一的實數使得。”改寫為“。”我們可以用存在量詞和全稱量詞來表達唯一存在量詞,方法是定義“”為,其中左括號是存在部分,右括號是唯一部分。換句話說,這個表示式意味著
- 存在 使得 ,並且對於每一個,如果 並且 ,則 (即 和 實際上指的是同一件事,所以存在 恰好一個 使得 ).
一般來說,我們需要像上面一樣將存在性和唯一性部分分開,以證明涉及唯一存在量詞的語句。
示例。 語句 "" [7] 可以用文字(部分)表示為“存在一個集合 使得 。”

練習。 用文字(部分)寫下這個語句的 否定。(提示:"( 是一個非負整數)”的否定是什麼?因此,“存在至少一個 使得 。”的否定是什麼?
- 提示中," ( 是一個非負整數)" 的否定是 "",而 "至少存在一個 使得 。" 的否定因此是 "不存在 使得 。"。它也可以等效地表示為 "對於每個 , 都不滿足",或者 .
- 根據提示的啟發,這個語句的否定可以寫成 "對於每個集合 ,。"。
從這個例子中,我們可以看到語句 "" 的否定在邏輯上等價於 ""。現在,我們自然想要知道語句 "" 的否定。考慮一下:當 對於每個 都不是真的,這意味著 對於 至少一個 是假的。換句話說,。因此,我們知道語句 "" 的否定在邏輯上等價於 .
一個量化語句可能包含多個量詞。當在一個量化語句中只使用一種型別的量詞時,情況會更簡單。例如,考慮語句“對於每個實數 ,對於每個實數 , 是一個實數。”它可以寫成“”。當我們交換“” 和 “” 時,語句的含義不會受到影響(語句仍然表示“兩個任意實數的乘積是一個實數”。)。由於這個原因,我們可以簡單地將語句寫成“” 沒有任何歧義。
例如,涉及兩個存在量詞的語句,考慮語句“存在一個實數 和一個實數 使得 是一個實數。” 它可以寫成“”。類似地,交換“” 和 “” 不會影響語句的含義(語句仍然意味著“對於至少一對實數 和 , 是一個實數。”)。 因此,我們可以簡單地將該語句寫成“”,沒有任何歧義。
然而,當兩種型別的量詞都用在這樣的量化語句中時,事情就會變得更加複雜。例如,考慮語句“對於每個整數,存在一個整數 使得。”這也可以寫成“”。這意味著對於每個整數,我們都可以找到一個(嚴格)更小的整數,我們可以看到這是一個真命題。例如,如果你選擇,我可以選擇 或 。事實上,對於你選擇的整數,我總是可以選擇我的 為,這樣。
讓我們看看如果我們交換“” 和 “”會發生什麼。這個語句就變成了,這意味著存在一個整數,它(嚴格)小於所有整數!這是錯誤的,因為例如,不存在一個整數比它本身(它也是一個整數)更小。在這個例子中,我們可以看到,交換全稱量詞和存在量詞的位置會改變命題的含義。因此,清楚地理解包含全稱量詞和存在量詞的量化語句的含義非常重要。為了便於理解,這裡有一些閱讀這類語句的技巧
- 對於與量詞相關的變數,它可能取決於語句中之前引入的變數,但必須獨立於語句中之後引入的變數。
What does it mean? For example, consider the above example. In the first case, we have . Then, since the variable appears earlier than the variable which associated to , may depend on (This is similar to the case in English. In a sentence, a thing may depend on other things mentioned earlier.). For instance, when you choose , and I choose . Then, . However, if you change your choice to , then my does not work, and I need to change my to, say, 8 so that . Then, we can see that depends on in this case. In the second case, we have . In this case, the variable appears later than the variable . Hence, the variable must be independent from from . That is, when such is determined, it needs to satisfy for each chosen, and the cannot change depend on what is. Indeed, cannot possibly depend on , since is supposed to be determined when is not even introduced!
在以下問題中, 是命題。
A. 為以下每個語句構建真值表,並給出其逆命題和否命題
B. 對以下語句進行否定
- ↑ 當我們為包含某些語句的語句構建真值表時,我們需要列出所有可能出現的這些語句的真值組合,以便觀察所有情況下該語句的真值。
- ↑ 在這種情況下,我們可以稱這種條件為空真,因為當假設為假時,無論結論是真還是假,條件都為真。因此,當假設為假時,"條件為真"是"無用的"。
- ↑ 例如,鮑勃可能沒有交任何作業,因此即使他通過了期末考試,他也仍然不及格( 為假, 為真)。鮑勃也可能通過了期末考試,並且所有作業都表現良好,因此他通過了課程( 為假, 為假)。
- ↑ 當 為真時, 不一定為真。例如,當 為假, 為真時, 是(空)真,但 是假的。
- ↑ 當 時,不需要 。例如,請參見上面 真值表的第三行,其中 為真,而 為假。事實上,誤以為當 時也必須有 ,是一個常見的錯誤。
- ↑ 在數學中,“一些”總是意味著“至少一個”。
- ↑ 以 的形式,該語句也可以寫成 。”