§A3.1命題と真偽、真理値表

最終更新

真偽のはっきりしない文を議論へ持ち込むと、何を示せば主張したことになるのかが定まりません。まず、扱う対象を真偽の定まる文に限るところから始めます。

1 命題と真理値表

定義 1.1 (命題と真理値). 真か偽かのいずれか一方に定まる主張を命題 (proposition) という。命題が真であることを 真(T)、偽であることを 偽(F) と書き、この値をその命題の真理値という。

「22は偶数である」は真の命題であり、「3>53 > 5」は偽の命題です。一方、「この問題は難しい」は、判断する人によって答えが分かれるので命題ではありません。真偽が一意に定まることが、命題であるための条件です。本単元では、これ以降、命題の真偽を真理値の計算として扱います。

複合的な命題の真偽を確かめる道具として、次の表を使います。

定義 1.2 (真理値表). 命題P1,…,PnP_1,\ldots,P_nのそれぞれに真または偽を割り当て、2n2^n通りの組合せのすべてについて、それらの命題から組み立てた命題の真理値を書き出した表を真理値表 (truth table) という。

具体的な命題を当てはめたときには、その命題の間の関係によって、実際には生じない組合せもあります。真理値表では、そのような組合せも含めて真偽の割当てをすべて並べます。

たとえば、命題PPの否定「PPでない」(記号では¬P\lnot P)の真理値表は次のとおりです。

PP ¬P\lnot P
T F
F T

PPが真であれば¬P\lnot Pは偽であり、PPが偽であれば¬P\lnot Pは真です。否定は、真理値を入れ替える操作であると言うことができます。

2 「ならば」の真偽を定める規約

「ならば」で結んだ文の真偽は、次のように定めます。前件が偽である場合の扱いが要点です。

定義 2.1 (条件文). 二つの命題PP、QQを「PPならばQQ」と結んだ文を条件文 (conditional statement) といい、P⇒QP \Rightarrow Qと書く。PPを前件、QQを後件という。その真理値を次で定める。

PP QQ P⇒QP \Rightarrow Q
T T T
T F F
F T T
F F T

第2行だけが偽であり、残る3行はいずれも真です。とくに、前件PPが偽である第3行と第4行では、後件QQの真偽にかかわらずP⇒QP \Rightarrow Qを真と定めます。

この定め方は約束であって、証明することができる事実ではありません。ただし、P⇒QP \Rightarrow Qが何を主張しているのかを考えると、この約束を選ぶ理由が分かります。P⇒QP \Rightarrow Qは、「PPが真であるのにQQが偽である」という場合が起こらないことを主張しています。前件が偽である場合には、この主張が破られる余地がそもそもありません。破られていない以上、その場合は真としておく、というのがこの規約です。

条件文の規約を、実数の不等式に適用します。

例 2.2. 実数xxについて、PPを「x>2x>2」、QQを「x>1x>1」とする。xxの値に応じて、PP、QQ、P⇒QP\Rightarrow Qの真理値は次のようになる。

xxの範囲 PP QQ P⇒QP\Rightarrow Q
x>2x>2 T T T
1<x≤21<x\leq2 F T T
x≤1x\leq1 F F T

たとえばx=3x=3では前件も後件も真であり、x=0x=0では前件も後件も偽である。x>2x>2ならばx>1x>1であるため、前件が真で後件が偽という組合せは生じない。したがって、「x>2x>2ならばx>1x>1」は、どの実数xxに対しても真である。前件が偽である二つの組合せのいずれかを偽と定めると、この文はすべての実数について真ではなくなる。

前件が偽である場合を真と定める規約は、こうした一般的な主張を扱うために必要です。

日常語の「ならば」は、前件と後件のあいだに因果関係や関連があることを含んで使われます。数学の条件文では、上の表により定まる真理値だけが意味され、前件と後件に関連があることは要求されません。たとえば「1=21 = 2ならば地球は平らである」は、前件が偽なので、この規約のもとでは真の命題です。

閑話休題:真偽の計算が、コンピュータを動かしている 真を11、偽を00とみなして機械的に計算する——本記事のこの発想は、比喩ではなく文字どおりコンピュータそのものです。真理値の演算(AND・OR・NOT)は、電気を通すか通さないかを切り替えるスイッチの回路へ、そのまま対応させることができます。19371937年、当時21歳のクロード・シャノンは修士論文で、ブール代数(1919世紀にジョージ・ブールが「思考の法則」として作った抽象的な論理の代数)によって電気回路のスイッチを設計することができることを示しました。後に「史上もっとも重要な修士論文」と呼ばれるこの仕事が、デジタル回路とコンピュータ設計の理論的な出発点になりました。

ブールが純粋な思考の産物として作り上げた論理の代数が、100100年後に電子回路のハードウェアとして実装されたということです。今日のCPUは、数十億個の論理ゲート(AND・OR・NOT の回路)が真理値表を高速に計算する装置であり、この文章を表示している画面も、その膨大な真偽計算の結果です。検索エンジンの AND 検索・OR 検索、データベースの条件指定、プログラムの if 文は、いずれも真理値を00と11で処理する営みの延長線上にあります。真か偽かを機械的に計算するという論理の第一歩が、情報化社会の土台を支えています。

例題

条件と何を求めるかを確認してから、式と答えの対応を見比べてください。

次の合成命題の真理値表を作り、真となる行が何行あるかを答えよ。

解法の型¬\neg は反転、∧\land は両方真のときだけ真、∨\lor は少なくとも一方が真なら真、⇒\Rightarrow は前件が真で後件が偽のときだけ偽

  1. 例題 1

    ¬(p∧q)∨(p⇒q)\lnot (p \land q) \lor (p \Rightarrow q)
  2. 例題 2

    p∧(r⇒q)p \land (r \Rightarrow q)
  3. 例題 3

    (¬r∨q)⇒p(\lnot r \lor q) \Rightarrow p
  4. 例題 4

    (p∧¬r)∨q(p \land \lnot r) \lor q
  5. 例題 5

    (¬r∧¬p)∨q(\lnot r \land \lnot p) \lor q
  6. 例題 6

    (¬p∧r)⇒q(\lnot p \land r) \Rightarrow q
  7. 例題 7

    q⇒(¬p∨¬r)q \Rightarrow (\lnot p \lor \lnot r)
  8. 例題 8

    (p∨¬r)⇒q(p \lor \lnot r) \Rightarrow q
  9. 例題 9

    q∧(¬r⇒¬p)q \land (\lnot r \Rightarrow \lnot p)
  10. 例題 10

    (¬q∨r)⇒p(\lnot q \lor r) \Rightarrow p

演習

問題を解いてから「解答・解説」を開けます。

次の合成命題の真理値表を作り、真となる行が何行あるかを答えよ。

演習を読み込み中…