在命題邏輯和邏輯代數中,德摩根定律(英語:De Morgan's laws,又稱笛摩根定理、第摩根定律、對偶律等)是關於命題邏輯規律的一對法則[1]。
19世紀英國數學家奧古斯塔斯·德摩根首先發現了在命題邏輯中存在著下面這些關係:
![{\displaystyle \neg (p\land q)\equiv (\neg p)\lor (\neg q)}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/cbe6a53a7e7487f77622d88dd55daf744d145bce)
![{\displaystyle \neg (p\lor q)\equiv (\neg p)\land (\neg q)}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/64f6a2e9c039d13bd6c0a48e6bc0f6c1b97ecdd8)
即:
- 非(
且
)等價於( 非
)或( 非
)
- 非(
或
)等價於( 非
)且( 非
)
德摩根定律在數理邏輯的定理推演中,在電腦的邏輯設計中以及數學的集合運算中都起著重要的作用[1]。他的發現影響了喬治·布爾從事的邏輯問題代數解法的研究,這鞏固了德摩根作為該規律的發現者的地位,亞里斯多德亦曾注意到類似的現象、且這也為古希臘與中世紀的邏輯學家熟知(引自Bocheński《形式邏輯歷史》)。
形式邏輯中此定律表達形式已在上文提及。
在集合論中:
![{\displaystyle \left(A\cap B\right)^{C}=A^{C}\cup B^{C}}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/3086b6be0c8b300388900529380e52b341498885)
![{\displaystyle \left(A\cup B\right)^{C}=A^{C}\cap B^{C}}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/675193498f795b62ae3e40591150f543ff5537dd)
在經典命題邏輯的外延中,此二元性依然有效(即對於任意的邏輯運算子,我們都能找他它的對偶),由於存在於調節否定關係的恆等式中,人們總會引入作為一個算符的德摩根對偶的另一個算符。這導致了基於傳統邏輯的邏輯學的一個重要性質,即否定範式的存在性:任何公式等價於另外一個公式,其中否定僅出現在作用於公式中非邏輯的原子時。否定常型的存在推進了許多應用,例如在數位電路設計中該性質用於操縱邏輯閘,以及在形式邏輯中該性質是尋找一個公式的合取範式和析取範式的必要條件;電腦程式設計師們則用它們將一個類似於「如果...那麼...否則...」這樣的複雜語句轉變為其對等形式(例如:if(...){...} else{...}
);它們也同樣經常用於初等機率論中的計算。
你好
我們將基於基本命題
,
的任意命題算符
的對偶定義為:
![{\displaystyle \neg {\mbox{P}}^{d}(\neg p,\neg q,...)}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/45123ec000d91bd5719a986d2cb03aea62dd90f6)
該概念可以推廣到邏輯量詞上,例如全稱量詞和存在量詞互為對偶:
![{\displaystyle \forall x\,P(x)\equiv \neg \exists x\,\neg P(x)}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/295cb14e5ed954f58ae855c78f3c7c000166320f)
- 「對所有
,
皆成立」等價於「不存在
,使
不成立」;
![{\displaystyle \exists x\,P(x)\equiv \neg \forall x\,\neg P(x)}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/97088ef4b32c56220bf5f8eefc2dfd1ac40d3dc8)
- 「存在
,使
成立」等價於「並非對所有
,
都不成立」。
為對德摩根定律敘述這些量詞的二元性,設定一個在其域
中具有少量元素的模型,例如
![{\displaystyle D={a,b,c}}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/d357e34f8c8043a0bfa31eb5474c726426fd2807)
則
![{\displaystyle \forall x\,P(x)\equiv P(a)\wedge P(b)\wedge P(c)}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/909a2b5aca17e25ffcfc17607ee31e245942bb0f)
- 「對所有
,
成立」等價於「
成立」且「
成立」且「
成立」
以及
![{\displaystyle \exists x\,P(x)\equiv P(a)\vee P(b)\vee P(c)}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/9e400f446658e82d99e3c7bf69025c802f87c096)
- 「存在
,使
成立」等價於「
成立」或「
成立」或「
成立」
但,應用德摩根定律,
![{\displaystyle P(a)\wedge P(b)\wedge P(c)\equiv \neg (\neg P(a)\vee \neg P(b)\vee \neg P(c))}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/1a80de12ab6429d69e8a91fae33b9420bc741052)
- 「『
成立』且『
成立』且『
成立』」等價於「非(『
不成立』或『
不成立』或『
不成立』)」
以及
![{\displaystyle P(a)\vee P(b)\vee P(c)\equiv \neg (\neg P(a)\wedge \neg P(b)\wedge \neg P(c))}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/622c72fa06173000cd12709b990f80d2504ced0e)
- 「『
成立』或『
成立』或『
成立』」等價於「非(『
不成立』且『
不成立』且『
不成立』)」
檢定模型中量詞的二元性。
從而,量詞的二元性可進一步延伸到模態邏輯中的方塊和菱形算符:
![{\displaystyle \Box p\equiv \neg \Diamond \neg p}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/4328f9c5989c8b8df668fc3310c1d00ca208c707)
![{\displaystyle \Diamond p\equiv \neg \Box \neg p}](https://backend.710302.xyz/https/wikimedia.org/api/rest_v1/media/math/render/svg/5132b1b7117ab0adfab8c02b24cd50b438c799ca)
在其用於可能性和必然性的真勢模態的應用中,亞里斯多德注意到該情況,以及在正規模態邏輯的情況中,這些模態算符對量化的關係可藉助按關係語意設定模型來理解。
- 「應注意到一個析取命題的對立命題是由該析取命題各部分的對立內容構成的一個合取命題」 ——奧卡姆的威廉著,《邏輯學論文》