大学数学における「ならば」入門
本論の目的とか
京大受験生の諸君. 京大生の諸君. 寮生の諸君. 諸君は大学での講義で不思議なことを言う数学(論理学)教員に出会う. 曰く
「\(A\) ならば\(B\) 」は,「\(A\) が偽であるか, \(B\) が真である」(「\(A\) でないか, \(B\) である」)と同値である.
\(A\) | \(B\) | \(A \rightarrow B\) |
---|---|---|
真 | 真 | 真 |
真 | 偽 | 偽 |
偽 | 真 | 真 |
偽 | 偽 | 真 |
或いは, 右のような表を見せられる. これは普通「真理表」と呼ばれるもので, 例えば一番上の行は, \(A\)という命題1が真であり, \(A\)という命題も真である時に, \(A \rightarrow B\)(AならばB)という命題は真であるという主張をしている. このように読んで行って特別目を引くのは三・四行目だろう. \(A\) が偽であれば, \(B\) が真でも偽でも, \(A\) → \(B\)は真になる. この表は先程の数学・論理学教員の発言と対応している. つまり, \(A\) が偽である(\(A\) でない)か, \(B\) が真である時に\(A\) → \(B\)が真になり, それ以外のときには偽になる. だったら「\(1+1=3\)ならば熊野寮からは温泉が出る」は真なのだろうか.君の教師は答える. 「そうだ」と.
何かが変だ. 意味不明だ. この意味不明さは否定「でない」(\(\neg\)), 連言「かつ」(\(\land\)), 選言「または」(\(\lor\))の真理表と比べるとより明らかになる.
\(A\) | \(\neg A\) | \(A\) | \(B\) | \(A \land B \) | \(A\) | \(B\) | \(A \lor B \) | ||
---|---|---|---|---|---|---|---|---|---|
真 | 偽 | 真 | 真 | 真 | 真 | 真 | 真 | ||
真 | 偽 | 偽 | 真 | 偽 | 真 | ||||
偽 | 真 | 偽 | 偽 | 真 | 真 | ||||
偽 | 真 | 偽 | 偽 | 偽 | 偽 | 偽 | 偽 |
すごく直感的だ. 「でない」「かつ」「または」の言葉の意味の通りではないか. 「\(A\) でない」が真なのは, \(A\) が偽である時である. 「\(A\) かつ\(B\) 」が真なのは, \(A\) も\(B\) も真である時だ. 「\(A\) または\(B\) 」が真なのは, \(A\) と\(B\) のどちらか少なくとも一方が真であるときである2.
困ったことに多くの場合, 数学(論理学)教師はこの奇妙さについて多くを語らない. よくある小手先の説明としては次のようなものがある.
「明日晴れたら熊野寮行くよ」という約束の例で考えてみよう. 翌日晴れた場合, そいつが熊野寮に来なかったら, この約束は嘘だった(偽だった)ことになる. 熊野寮に来たら, 約束は嘘じゃなかった(真だった)ことになる. けれどもし翌日雨だったら, そいつが寮に来ようが来まいが, その約束が嘘だったということにはならない. だからこの場合「明日晴れたら熊野寮行くよ」は真なんだ.
この説明の怪しいところは2つある. まずこの例が「\(A\) ならば\(B\) 」という形の命題一般に適用できるのか, という問題. もう一つは「嘘だったということにはならない」ことから約束が真であることを導けるのか, という問題. これについて更に聞くと「定義だと思ってください」と言われる. 勿論, 「定義だから」「決まりだから」「そういう約束事だから」という答えは正しい. まったくもって.
「\(A\) が偽であるか, \(B\) が真である」(「\(A\) でないか, \(B\) である」)として「\(A\) ならば\(B\) (\(A\) → \(B\)) 」を定義する「ならば」(含意と呼ばれる)を「実質含意」と言う. 「実質含意」という名前がついているからには「実質」でない含意も存在するわけだ3. にもかかわらず, 実質含意は数学の中で使われていて, 最も権威を持っている. なぜなのか. 「定義だから」という説明ほど非啓蒙的なものはない. 任意の実数\(r\)について\(r^0=1\)は定義だけれど, これは誰かが恣意的に定めたというものではない. 指数が正の整数の場合だけでなく, 非負整数の場合全体で指数法則が成り立つと仮定する時に, この算術体系が上手くいくためにそう定義されている. このように「ならば」の単に定義の問題として片付けられないその「なぜ」の一端を覗いてやろうというのが本稿の目的だ. ちなみに熊野寮はあまり関係がない.
いくつか用語を導入しておこう.
「\(A\) ならば\(B\) 」という形の命題を条件命題と呼び, 命題\(A\) をこの条件命題の前件, \(B\) を後件と呼ぶ.
「ならば \(\rightarrow\)」「でない \(\neg\)」「かつ \(\land\)」「または \(\lor\)」のように, (時に複数の)命題と組み合わさることによって, 新たな命題を作るものを命題結合子 propositional connective , 或いは命題演算子 propositional operatorと呼ぶ.
命題\(A\) が真であるとき, \(A\) の真理値は真である, と言う. 偽のときは, \(A\) の真理値は偽である, と言う.
外延性からの説明
実質含意の奇妙さの一つの説明は「ならば」が命題結合子であること, 二値原理, 命題の真偽に関する外延性の3つを保つため, というものだ. それぞれ説明すると,
「ならば \(\rightarrow\)」が結合子であること:命題\(A\) と\(B\) の内容に関わらず, \(A \rightarrow B\)は命題である. これは結構怪しい想定であって, 例えば「トランプが現アメリカ大統領であるならば昨日は雨だ」という文は, 「文」ではあるが, 何か意味のある命題には見えない. 一方で命題「トランプが現アメリカ大統領である」と「昨日は雨だ」を「かつ」や「または」でつないだり, 「でない」で否定した文は命題に見える.
二値原理:注1を読んでもらえば, これはほとんど定義なのだが, 命題は真か偽のどちらか一方を真理値として持っている. それ以外の真理値を採ることはない. よって\(A\) と\(B\) が命題であれば, \(A \rightarrow B\)も「ならば」が結合子であることから命題であり, 真か偽のどちらかに定まる. (「命題」の定義は他にも様々あって, その場合は二値原理もかなり怪しい原理となる. )
外延性:結合子の含まれる命題の真偽は, その結合子とその結合子に結合されている(諸)命題の真偽にのみ依存して決まる. つまり, 真理表によって複合的な命題(結合子で結合された命題)の真偽は決定される. 例えば\(A \rightarrow B\)の真偽は\(A\) と\(B\) の真偽, そして \(\rightarrow\) の真理表のみに依存している. これも何故そうなのかというのは怪しい話なのだが, 注目するべきは, 否定と連言と選言の場合はこの考えは問題ないということだろう. 実際, 上の真理表によって, これらの結合子を使った命題の真偽は完全に決定できるように見える.
特に結合子についてと外延性は「ならば」に関してはかなり怪しいというか, そう考える理由はないように思われる. しかし, もし「ならば」が他の結合子と同じようにそういった性質を持っているならば, どんな真理表が書けるか, と考えることは意味があるだろう. そして, その際に気にするべきは, 我々の日常に登場する「ならば」という日本語がどのように使用されているか, そのうちで重要視するべき性質はなにかである.
日常語「ならば」の重要な性質とは何かというのは難しい問題だけれど, 文句のないものは次の4つだろう.
モドゥスポネンス (modus ponens):\(A\) と「\(A\) ならば\(B\) 」が両方真ならば\(B\) も真
モドゥストレンス (modus torens):「\(A\) ならば\(B\) 」が真で\(B\) が偽のとき, \(A\) も偽
対偶:「\(A\) ならば\(B\) 」が真ならば「\(\neg B\)ならば\(\neg A\)」も真. その逆も成り立つ.
推移性:「\(A\) ならば\(B\) 」と「\(B\) ならばC 」の両方が真ならば, 「\(A\) ならばC 」も真である
同一律:どの命題\(A\) についても「\(A\) ならば\(A\) 」
含意の非対称性:「\(A\) ならば\(B\) 」が真であったとしても, 「\(B\) ならば\(A\) 」が必ずしも真とは限らない. 例えば「\(x=1\)ならば\(x^2-x=0\)」は真だが「\(x^2-x=0\)ならば\(x=1\)」は偽(正しくは\(x^2-x=0\)ならば\(x=1\)か\(x=0\)」).
上記の条件を満たすように, このページ下部の空白の真理表(表4.1)を埋めていこう. 繰り返すが, 外延性から実質含意の含まれる命題の真偽は真理表に基づいて決定される. よって真理表以外の方法を我々が用いることはできない. 次に, その真理表の空欄は「ならば」が命題結合子であることから, 二値原理より真と偽のどちらかかつ, どちらか一方のみが書き込まれることになる.
まず, 二段目(\(A\) が真であり, \(B\) が偽である時)を埋めよう. \(A \rightarrow B\)は二値原理から真か偽かどちらかである. 真だと仮定しよう. すると\(A \rightarrow B\)が真であり, \(A\) も真であるからモドゥスポーネンスより, \(B\) は真であるはずだ. しかし, これは二段目の状況と矛盾する. よってモドゥスポネンスを保証するためには, \(A \rightarrow B\)は偽である必要がある(表4.2).
次に同一律を考えてみよう. \(A\) と\(A\) は当然だが同じ真理値を持つ. よって\(A \rightarrow A\)は前件と後件が, 共に真であるか, 共に偽であるかどちらかであり, どちらの場合も真であってほしい. よって一段目の前件も後件も両方真である時には\(A \rightarrow B\)も真でなくてはならない. 四段目の前件も後件も偽である場合も同様に真でなくてはならない(表4.3).
最後に三段目だが, もし三段目が偽であるならば含意の非対称性は表現できなくなる. というのももし偽であるならば, \(A \rightarrow B\)が真であるのは, 真理表の一段目と四段目, つまり前件と後件の真理値が同じ時のみである. ここで逆\(B \rightarrow A\)を考えると, この場合も前件と後件で真理値が等しくなるので一段目と四段目から\(B \rightarrow A\)も真になるからである. 従って, 三段目は真にしておかないといけない(表4.4).
\(A\) | \(B\) | \(A \rightarrow B\) | \(A\) | \(B\) | \(A \rightarrow B\) | \(A\) | \(B\) | \(A \rightarrow B\) | \(A\) | \(B\) | \(A \rightarrow B\) | |||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
真 | 真 | 真 | 真 | 真 | 真 | 真 | 真 | 真 | 真 | |||||
真 | 偽 | 真 | 偽 | 偽 | 真 | 偽 | 偽 | 真 | 偽 | 偽 | ||||
偽 | 真 | 偽 | 真 | 偽 | 真 | 偽 | 真 | 真 | ||||||
偽 | 偽 | 偽 | 偽 | 偽 | 偽 | 真 | 偽 | 偽 | 真 | |||||
表 4.1 | 表 4.2 | 表 4.3 | 表 4.4 |
こうして, 表を埋めることができた. 埋めるのに使ったもの以外の「ならば」の重要な性質についてもこの真理表によって再現できている. めでたしめでたし.
証明による説明
より納得の行くものとして, 証明による説明をしたい. 要は\(A \rightarrow B\)を仮定して\(\neg A \lor B\)を証明し, 逆に\(\neg A \lor B\)を仮定して\(A \rightarrow B\)を証明すれば, この2つが論理的に等しいよね, と認めてしまえるということだ.
証明する前に証明とは何かということを形式的に定義しておきたい. 証明で無条件で使っていいものは, その証明の前提, 公理である. そして, その前提や公理を推論規則に従って有限回変形することを証明と呼ぶ4.
ここで採用する推論規則と公理は次のようなものだ. これらの規則は日常的な結合子の用法とも一致している.
\(\lor\) 導入:\(A\) から\(A \lor B\)と\(B \lor A\)を導いても良い. (例:「寮食は美味しい」から「寮食が美味しいか, 生協食堂が美味しいかどちらかだ」や「生協食堂が美味しいか, 寮食が美味しいかどちらかだ」を導く)
\(\lor\) 除去: \(A\) を前提として\(C\) が証明でき, かつ\(B\) を前提として\(C\) が証明できるとする. この時, \(A \lor B\)という前提から\(C\) を導くことができる. (例:「雨が降った」から「地面が濡れている」が証明できる[と, しておこう]. 「雪が降った」から「地面が濡れている」が証明できる. だから, 「雨が降ったか, 雪が降ったかどちらかだ」から「地面が濡れている」が証明できる. )
\(\rightarrow\) 導入 :\(A\) を前提として\(B\) が証明できる時に, \(A \rightarrow B\)が証明できる.
\(\rightarrow\) 除去=モドゥスポネンス:\(A\) と\(A \rightarrow B\)から\(B\) を導くことができる.
選言三段論法 :\(A\) と\(\neg A \lor B\)から\(A\)を導くことができる. (例:「地面が濡れている」と「地面が濡れていないか, 雨が降っていたかだ」から「雨が降っていた」を証明できる)
排中律(公理) :\(A \lor \neg A\)はいつでも成り立つ. (例:「熊野寮に中核派がいるか, いないかのどちらかだ」)
上に上げた規則と公理を認めれば, \(A \rightarrow B\)と\(\neg A \lor B\)の同値性が下のように証明できる.
\(A \rightarrow B\)を仮定して\(\neg A \lor B\)を証明する
\(A\) を前提とする. \(A\) と\(A \rightarrow B\)からモドゥスポネンスより, \(B\) が言える. \(B\) なので\(\lor\)の導入から\(\neg A \lor B\)が証明できる.
\(\neg A\)を前提とする. \(\neg A\)なので\(\lor\)の導入則から\(\neg A \lor B\)が証明できる.
排中律\(A \lor \neg A\)と1,2に\(\lor\)の除去則を適用して\(\neg A \lor B\)が証明できた.
\(\neg A \lor B\)を仮定して\(A \rightarrow B\)を証明する
\(A\) を前提とすると, \(\neg A \lor B\)と組み合わせると, 選言三段論法から\(A\)が証明できる. \(A\) を仮定して, \(B\) を証明できたので, \(\rightarrow\) 導入から\(A \rightarrow B\)である.
もし, \(A \rightarrow B\)と\(\neg A \lor B\)の論理的同値性(相互に導出可能であること)を認めたくなければ, 上記の推論規則と公理のどれか少なくとも1つを拒否しなければならない. よくよく考えると怪しい規則や公理はあるのだが, しかしどれも数学の中で普通に使われているし, 正しいと考えられている. 従って, 数学の中では\(A \rightarrow B\)と\(\neg A \lor B\)が論理的に同値であると考える十分な証拠があるのである. この説明が面白いのは \(\rightarrow\) 自体の規則は \(\rightarrow\) 導入・除去の2つだけなのに, それ以外の規則(主には選言三段論法と排中律)によって\(A \rightarrow B\)が\(\neg A \lor B\)に潰れてしまうところだろう.
最後に
なんとなく納得がいっただろうか. 「ならば」の正しい使い方は論理学や況してや数学が決定するのものではない. 言葉の使い方や意味は, 現在の人々の使い方のみが決定するものである. にもかかわらず, 実質含意がこのような奇妙な仕方で定義されているのは, 上で見たような事情, つまり「ならば」の日常的な用法をできる限り尊重しつつも, 数学的・論理的に一貫した形で, かつ単純化して組み込もうとした結果なのだ.
外延性からの説明は, 命題の真理値に言及していた. 論理学では命題の真理値によって, 複雑な命題や推論について考えるという探求の仕方を「意味論」と呼ぶ. 意味論では外延的でないような結合子も考えることもでき, そうした結合子を内包的結合子と呼ぶ. 「ならば」を内包的な結合子として扱うような論理も存在する. 内包的結合子の意味論的な扱い方の一つは, 部分命題の可能世界に相対的な真偽を元に現実世界での真偽を決定する「可能世界意味論」という方法である. 「ならば」の他にも内包的な結合子だと考えたほうがいい結合子としては「必然である」がある. 「熊野寮は快適だ」という命題が真であるからといって, そこから「熊野寮が快適なのは必然だ」は真ではないだろう. 一方で「\(1+1=2\)」は真であり, かつ「\(1+1=2\)は必然だ」は真であるように思われる. よって「必然だ」についての整合的な真理表を書くことはできないだろう. 論理学では一つの論理を探求するのに「意味論」の他に「証明論」という分野を持っている. 証明論では論理を形式的証明を通して定義し, その性質を探求する. 証明論的に言えば, 排中律や選言三段論法を含まないような論理も存在し, その他の推論規則の組み合わせによっては, \(A \rightarrow B\)が\(\neg A \lor B\)に潰れてしまうということはない.
本稿の題名は「数学における「ならば」入門」だったのだけれど, これまで述べてきたことは論理学で探求されていることだ. 論理学の面白みは色々あるけれど, 僕は様々な規則や縛りが筋を通していくと, 含意が実質含意になってしまったように思わぬところでその効果が現れるというところが面白いと思っている. ということで長大な論理学のステルスマーケティングでした. 以上.
(文:民青池大好きさん)
「命題」という言葉は色々問題含みであろう. 高校数学の教科書とかには「真偽の定まる文」とされているが. ここでは, ある分野において「真偽が定まる」と考えられている文, と分野に相対的に定義してお茶を濁しておこう. ↩
選言「または」 (\(\lor\)) の一番上の行については疑問に思う向きもあるだろう. これは論理学の専門用語で「非排他的選言」と呼ばれるもので, \(A\) と\(B\) の両方が成り立っているときも, \(A \lor B\)が真であるとみなす. どちらか一方のみが成り立っている場合にのみ真となるような選言は「排他的選言」と言う. 数学に用いるのは普通, 非排他的選言の方である. ↩
古典論理について一通り学んでから, 「厳密含意 strict implication」や「関連性論理 relevant logic」などで検索せよ. 本は, 古典論理については戸田山和久『論理学をつくる』(名古屋大学出版会), 実質含意以外の含意についてはG. Priest, An Introduction to Non-Classical Logics (Oxford University Press) がお薦め. ↩
これはあくまで「形式的な証明」の定義であって, 数学一般, 況や世間一般でいうところの「証明」の用法とはかけ離れる. ただし, 数学における証明は形式的な証明に書き換えることができると普通は考えられている. ↩