3値論理

3値論理の最新ニュースをまとめて検索!

3値論理(ternary, three-valued or trivalent logic)とは、真(true)、偽(false)のほかの第三の論理値を持つ論理システムのことである。これは、真と偽の2値のみを提供するブール論理をはじめとする2値論理(bivalent logics)と良く比較される概念である。

目次

[編集] 概要

従来の古典論理学では真理値は真と偽の二つでのみ表現される。しかし哲学や数学の問題における「可能性」や「未定義」などの概念を論理的に表現しようとすると真でも偽でも無い第三の真理値の表現が必要となってくる。例えば「明日は雨が降る」という命題の真理値を考察する場合、それは真か偽かを確認することはできない。この事については古くから知られており、古代ギリシアアリストテレスは未来の出来事を表すには真でも偽でも無い可能性(未来偶然命題)として第3の値について言及している。

学問として今日の3値論理の研究体系が確立したのは1920年ヤン・ウカシェヴィチ(Jan Lukasiewicz)が発表した論文 "On 3-valued logic" からである。現在3値論理は非古典論理学の一分野とみなされ研究されている。

[編集] 3値論理の種類と特徴

3値論理は真でも偽でもない第3の値をとるが、この3番目の値の解釈についてしばしば意見が分かれており、別々の形でいくつかの形式化が行われている。ここではその中でも比較的有名なものを取り上げる。

[編集] ウカシェヴィッチの3値論理

ウカシェヴィッチの3値論理は1920年にヤン・ウカシェヴィチにより提案された 3値論理である[1]。ウカシェヴィチはアリストテレス未来偶然命題を形式化するためにこの論理を提案したとされている。具体的には

  • 未来偶然命題の真理値は真でも偽でもない

という体系を考案し真偽の決まらない第3の真理値として I をおいた。この I は不定(indeterminate)の意味で、未来偶然命題の真理値は I であるとする。

ウカシェヴィチはこの I を含めた論理を以下のような条件を満たす真理関数 v(x) を用いて定義した。

v(T) = 1
v(F) = 0
v(I) = 0.5
v(A) = v(B) \leftrightarrow A = B

この真理関数を用いて、以下のように論理演算を定義している。

v(A\land B) = \min(v(A),v(B))
v(A\lor B) = \max(v(A),v(B))
v(\lnot A) = 1 - v(A)
v(A \to B) = \min(1, 1 - v(A) + v(B))

これを真理値表で表すと以下のようになる。

A B A \land B A \lor B A \to B \lnot A
T T T T T F
T F F T F
T I I T I
F T F T T T
F F F F T
F I F I T
I T I T T I
I F F I I
I I I I T

ウカシェヴィチの3値論理は排中律および無矛盾律が成り立たない点に注意が必要である。

この3値論理は古典論理学では解決できないラッセルのパラドックスが解消されることが知られている。具体的には

X = \{x | x \notin x\}

という集合があった場合 X ∈ X = I とおくとラッセルのパラドックスにおける矛盾が発生しなくなる。

[編集] 無限値論理

ウカシェヴィチの3値論理の特徴として、論理値の数を容易に拡張可能なことがある。例えば真理値 T、F、I1、I2 の4値をもつ論理システムを作成する場合は

v(T) = 1,v(F) = 0,v(I1) = 1 / 3,v(I2) = 2 / 3

と定義することで同様に真理値体系を構築することが可能である。ウカシェヴィチはこのことを応用し1930年に[0, 1]の任意の値を真理値とする無限値論理を提唱している。

[編集] 莫少揆 (Moh Shaw-Kwei)のパラドックス

ウカシェヴィチの3値論理はラッセルのパラドックスにおける解法を示したが、以下に示すような新たなパラドックスを導出してしまうことでも知られている(莫少揆のパラドックス)[2]。具体的には以下のような集合があったとする、

X = \{x | x \in x \to \lnot (x \in x)\}

このとき X ∈ X を考えると、この値は T でも F でも I でも矛盾が発生する。

[編集] クリーネの3値論理

クリーネの3値論理は 1952年スティーヴン・コール・クリーネによってアルゴリズムの停止性についての議論の中で帰納関数の理論における「未定義」(undefinedness)の概念を表現するために提唱された。[3] なおクリーネは強3値論理と弱3値論理の2種類の3値論理を提唱しているが、ここでは強3値論理について述べる。弱3値論理は後述するボフバールの3値論理と同様の体系である。

クリーネの3つめの値(U)は「未定義」または「計算中」である。この値は直感的には U は T か F のどちらかであるが、どちらであるかは決定されていない真理値といえる。この3値論理の公理化は帰結関係をベースにシークエント計算などで行われる。

具体的にはクリーネの真理値表は以下のようになる。

A B A \land B A \lor B A \to B \lnot A
T T T T T F
T F F T F
T U U T U
F T F T T T
F F F F T
F U F U T
U T U T T U
U F F U U
U U U U U

クリーネの 3値論理は U → U = U であることを除けばウカシェヴィチの3値論理と同様である。

この U → U = U という定義は、しばしば批判されることがある。 これは A = U とした場合、 A → A = U となり古典論理学では恒真式とされていた A → A = T が成り立たなくなるためである。実際この式は「Aが未定義であるならば A は未定義である」ということであり、これを真とせずに未定義とするのは直感に反しているといえる。

1984年、レイモンド・ターナー(Raymond Turner)はクリーネの3値論理をベースにデフォルト推論の理論を展開している[4]

クリーネの 3値論理はSQL等にも応用されている、SQLでは真理値とNULLとを比較した場合、真(true)でも偽(false)でもない不明(unknown)という値を返す。

[編集] ボフバールの3値論理

ボフバール(Bochvar)の3値論理は「嘘つきのパラドックス」に代表される意味論的自己言及のパラドックスの解決として1939年に考案された[5]

ボフバールは 3番目の真理値として M を提唱した、この M は「無意味」(meaningless)と解釈される。 ボフバールの3値論理は命題の構成要素に M があった場合、その真理値は無条件に M であると定義した。具体的には真理値は以下のようになる。

A B A \land B A \lor B A \to B \lnot A
T T T T T F
T F F T F
T M M M M
F T F T T T
F F F F T
F M M M M
M T M M M M
M F M M M
M M M M M

ボフバールはこの 3値論理に言明オペレータ「T」を追加している T は以下のようになる

A TA
T T
M F
F F

この 3値論理では「この文は偽である」といった命題の真理値を M とした場合、嘘つきのパラドックスは起こらなくなる。ただし、以下のような強嘘つき文(strengthened liar sentence)の場合やはりパラドックスが起こる。

  1. この文は偽(F)か無意味(M)である。

[編集] 関連項目

[編集] 脚注

  1. ^ Lukasiewicz, J.(1920). "On 3-valued logic" S.McCall(ed.), Polish Logic, Oxford University Press, 1967.
  2. ^ Moh Shaw-Kwei(1954). "Logical paradoxes for many-valued systems", Journal of Symbolic Logic, 19(1), 37-40, 1954
  3. ^ Kleene, S.(1952). "Introduction to Metamathematics", North-Holland, Amsterdam, 1952.
  4. ^ Turner, R.(1984). "Logics for Aritifical Interigence", Ellis Horwood, Chichester, 1984.
  5. ^ Bochvar, D.(1939). "On a 3-valued logical calculus and its application to the analysis of contradictions", Mathematiceskij sbornik, 4, 353-369, 1939.

[編集] 参考文献

最終更新 2009年10月10日 (土) 15:13 (日時は個人設定で未設定ならばUTC)。
【3値論理】変更履歴

ご利用上の注意

もっと調べる!