【解説】論理積・論理和・等値・含意・逆・対偶とは?【ゆるふわ】

  • このエントリーをはてなブックマークに追加
  • Pocket

こんにちは。iQeda [@iQeeeda] です。

前回、命題について解説しました。

今回は論理式という「命題の演算」で真偽の変化を見てみましょう。
そして真理値表というもので論理を解きほぐしていきます。

否定

ある命題に対して「…ではない」という命題をつくる演算のことを「否定(not)」と呼びます。

  • 命題
    • 乗車日は日曜日である
  • 否定
    • 乗車日は日曜日ではない

否定の論理式

論理演算子 (論理記号) は「ノット A」と呼びます。

  • ¬A

否定の真理値表

演算子の定義・証明に使われる表のことを「心理値表」と言います。

A¬A
truefalse
falsetrue
  • 命題 A が true のとき
    • 命題 ¬A は false である
  • 命題 A が false のとき
    • 命題 ¬A は true である

二重否定

否定を二回すると、元に戻ります。

  • 命題
    • 乗車日は日曜日である
  • 二重否定
    • 乗車日は日曜日ではない、ではない
      • つまり「乗車日は日曜日である」と同じ

二重否定の真理値表

A¬A¬¬A
truefalsetrue
falsetruefalse
  • 命題 A が true のとき
    • 命題 ¬A は false である
    • 命題 ¬¬A は true である
  • 命題 A が false のとき
    • 命題 ¬A は true である
    • 命題 ¬¬A は false である

論理積

【論理積】ペン図

ある命題 2 つを組み合わせて、
「A かつ B」という命題をつくる演算のことを「論理積(and)」と呼びます。

  • 命題
    • 年齢が 6 歳以上である
    • 乗車日は日曜日である
  • 論理積
    • 年齢が 6 歳以上であり、かつ、乗車日は日曜日である

論理積の論理式

論理演算子 (論理記号) は「A アンド B」と呼びます。

  • A ∧ B
    • A と B の両方が true の場合だけ true となる命題

論理積の真理値表

命題が A と B の 2 つなので、組み合わせが 2^2 で 4 パターンあります。

ABA ∧ B
truetruetrue true
true
truefalsetrue false
false
falsetruefalse true
false
falsefalsefalse false
false

¬(A ∧ B)

「A かつ B ではない」

AB¬(A ∧ B)
truetrue¬(true ∧ true)
→ ¬( true)
false
truefalse¬(true ∧ false)
→ ¬(false)
true
falsetrue¬(false ∧ true)
→ ¬(false)
true
falsefalse¬(false ∧ false)
→ ¬(false)
true

論理和

【論理和】ペン図

ある命題 2 つを組み合わせて、
「A または B」という命題をつくる演算のことを「論理和(or)」と呼びます。

  • 命題
    • クーポン券 A を持っていると割引が適用される
    • クーポン券 B を持っていると割引が適用される
  • 論理和
    • クーポン券 A または B を持っていると割引が適用される

論理和の論理式

論理演算子 (論理記号) は「A オア B」と呼びます。

  • A ∨ B
    • A と B どちらか片方でも true のとき true となる命題
    • A と B の両方が false ときだけ false となる命題、とも言える

論理和の真理値表

ABA ∨ B
truetruetrue ∨ true
true
truefalsetrue ∨ false
true
falsetruefalse ∨ true
true
falsefalsefalse ∨ false
false

(¬A) ∨ (¬B)

「A ではない、 または B ではない」

AB(¬A) ∨ (¬B)
truetrue(¬true) ∨ (¬true)
→ false ∨ false
false
truefalse(¬true) ∨ (¬false)
→ false ∨ true
true
falsetrue(¬false) ∨ (¬true)
→ true ∨ false
true
falsefalse(¬false) ∨ (¬false)
→ true ∨ true
true

ド・モルガンの法則

先程、紹介した以下の 2 つの命題は同じ真理値表になっています。

AB¬(A ∧ B)(¬A) ∨ (¬B)
truetruefalsefalse
truefalsetruetrue
falsetruetruetrue
falsefalsetruetrue

また、以下 2 つの命題も同じ真理値表になっています。

  • 「A または B ではない」
  • 「A ではない、 かつ B ではない」
AB¬(A ∨ B)(¬A) ∧ (¬B)
truetrue¬(true ∨ true)
→ ¬(true)
false
(¬true) ∧ (¬true)
→ false ∧ false
false
truefalse¬(true ∨ false)
→ ¬(true)
false
(¬true) ∧ (¬false)
→ false ∧ true
false
falsetrue¬(false ∨ true)
→ ¬(true)
false
(¬false) ∧ (¬true)
→ true ∧ false
false
falsefalse¬(false ∨ false)
→ ¬(false)
true
(¬false) ∧ (¬false)
→ true ∧ true
true

この法則性は「双対性」という言葉で説明できます。

双対性

以下それぞれを交換することで、双対性のある論理式を作成できます。

  • true と false
  • A と ¬A
  • ∧ と ∨

たとえば A ∧ B から、双対性を基にした (¬A) ∨ (¬B) を作成できます。
この (¬A) ∨ (¬B)¬(A ∧ B) と等しくなります。

¬(A ∧ B) は元の論理式 A ∧ B の否定形

これが「ド・モルガンの法則」が言っている形になります。
双対性で「元の論理式全体を否定した論理式」と同じ真理値表をもつ論理式を導くことができます。

排他的論理和

【排他的論理和】ペン図

論理和の「または」とニュアンスが違って、
両方の条件を満たすことは想定しない「または」の使い方があります。

ある命題 2 つを組み合わせて、
「A または B (だが両方の条件は満たさない)」という命題をつくる演算のことを「論排他的理和(exclusive or)」と呼びます。

  • 命題
    • 彼は現在東京にいる
    • 彼は現在大阪にいる
  • 論理和
    • 彼は現在東京にいる、または、彼は現在大阪にいる
    • ※ 同じ人間が違う場所に同時に存在することはありえない

排他的論理和の論理式

論理演算子 (論理記号) は A ⊕ B と表現できます。

  • A ⊕ B
    • A と B が異なるときだけ true となる命題
    • A と B の両方が true とき false となる命題、とも言える

排他的論理和の真理値表

ABA ⊕ B
truetruetrue ⊕ true
false
truefalsetrue ⊕ false
true
falsetruefalse ⊕ true
true
falsefalsefalse ⊕ false
false

¬(A ⊕ B)

「A または B ではない」

AB¬(A ⊕ B)
truetrue¬(true ⊕ true)
→ ¬(false)
true
truefalse¬(true ⊕ false)
→ ¬(true)
false
falsetrue¬(false ⊕ true)
→ ¬(true)
false
falsefalse¬(false ⊕ false)
→ ¬(false)
true

等値

【等値】ペン図

ある命題 A と B があるとき「A と B は等しい」という論理式は A = B と表現できます。

  • 命題
    • A と B は等しい

等値の真理値表

ABA = B
truetruetrue = true
true
truefalsetrue = false
false
falsetruefalse = true
false
falsefalsefalse = false
true

恒真命題

【恒真命題】ペン図

実は「A = B」と「¬(A ⊕ B)」の結果は同じになっています。

AB¬(A ⊕ B)A = B
truetruetruetrue
truefalsefalsefalse
falsetruefalsefalse
falsefalsetruetrue

この 2 つの命題を (¬(A ⊕ B)) = (A = B) という = で繋いだ命題をつくった場合、
A と B の真偽がなんであろうと、結果が true になってしまいます。

こういった常に true になってしまう命題のことを「恒真命題」といいます。

含意

【含意】ペン図

ある命題 2 つを組み合わせて「A ならば B」という命題をつくる演算のことを「含意」と呼びます。

  • 命題
    • 乗客の年齢は 10 歳以上である
    • 乗客の年齢は 6 歳以上である
  • 論理和
    • 乗客の年齢が 10 歳以上ならば、乗客の年齢は 6 歳以上である

含意の論理式

論理演算子 (論理記号) は A ⇒ B と表現できます。

  • A ⇒ B

含意の真理値表

ABA ⇒ B
truetruetrue ⇒ true
true
truefalsetrue ⇒ false
false
falsetruefalse ⇒ true
true
falsefalsefalse ⇒ false
true
  • A が true のとき
    • B が false のとき A ⇒ B は false になる
  • A が false のとき
    • A ⇒ B は常に true になる
    • 前提条件 A が false なのに、 B の真偽がどちらであれ結果が true になるのは何故?
    • 日本語の「ならば」には 2 種類の文脈があるので、混乱してしまう…

2 種類の「ならば」

A = B の等値でも「ならば」という言い回しを使うことができます。

  • A = B が true になる条件
    • A が true 「ならば」 B も true である
    • また、 A が false 「ならば」 B も false である
  • A ⇒ B が true になる条件
    • A が true 「ならば」 B も true である
    • しかし、 A が false 「ならば」 B は true/false どちらでもよい

(¬A) ∨ B

「A ではない、または B」

AB(¬A) ∨ BA ⇒ B
truetrue(¬true) ∨ true
→ false ∨ true
true
true
truefalse(¬true) ∨ false
→ false ∨ false
false
false
falsetrue(¬false) ∨ true
→ true ∨ true
true
true
falsefalse(¬false) ∨ false
→ true ∨ false
true
true

「A が否定されている論理和」と「含意」の真理値表は一致します。

  • A ではない、または B
  • A ならば B

B ⇒ A

「B ならば A」

ABB ⇒ AA ⇒ B
truetruetrue ⇒ true
true
true
truefalsefalse ⇒ true
true
false
falsetruetrue ⇒ false
false
true
falsefalsefalse ⇒ false
true
true
【逆】ペン図

A ⇒ B から B ⇒ A にしたものを「」といいます。

真理値表を見ればわかるとおり、必ずしも結果は一致しません。
つまり A ⇒ B が真になったからといって、B ⇒ A が真になるとは限りません。

(¬B) ⇒ (¬A)

先程「A ⇒ B と (¬A) ∨ B の真理値表は同じという話」をしましたが、

そのルールを当てはめると (¬B) ⇒ (¬A) と ¬(¬B) ∨ (¬A) の真理値表も同じなります。
そして ¬(¬B) ∨ (¬A)A ⇒ B と真理値表が一致します。

AB(¬B) ⇒ (¬A)¬(¬B) ∨ (¬A)A ⇒ B(¬A) ∨ B
truetrue(¬true) ⇒ (¬true)
→ false ⇒ false
true
¬(¬true) ∨ (¬true)
→ true ∨ false
true
truetrue
truefalse(¬false) ⇒ (¬true)
→ true ⇒ false
false
¬(¬false) ∨ (¬true)
→ false ∨ false
false
falsefalse
falsetrue(¬true) ⇒ (¬false)
→ false ⇒ true
true
¬(¬true) ∨ (¬false)
→ true ∨ true
true
truetrue
falsefalse(¬false) ⇒ (¬false)
→ true ⇒ true
true
¬(¬false) ∨ (¬false)
→ false ∨ true
true
truetrue
対偶
【対偶】ペン図

さらに (¬B) ⇒ (¬A)A ⇒ B の「対偶」といいます。

含意関係にある A と B を入れ替えて、ABそれぞれに否定を付けると同じ意味になるのです。

説明すべてを理解する、じゃなく公式や法則を理解する

ぶっちゃけ日本語ですべて理解するのは大変です…
真理値表をざっと見ておいて、公式や法則が理解できれば OK です。

Wikipedia の「論理演算」にたくさん図が載っていて、解説が豊富です。
見ておいて損はないと思います。

CS シリーズ

次回

前回

お仕事ください!

僕が代表を務める 株式会社 EeeeG では Web 制作・システム開発・マーケティング相談を行っています。
なにかお困りごとがあれば、Twitter DM や Web サイトからお気軽にご相談ください。

カテゴリ「CS」の最新記事

最新記事

コメント

コメントを残す

*