3値論理(三値論理、三価論理、三項論理、三項論理とも呼ばれ、3VLと略されることもある)は、真、偽、および第三の値を示す3つの真理値を持つ、いくつかの多値論理システムのいずれかである。これは、真と偽のみを提供する、より一般的に知られている二値論理(古典的な命題論理やブール論理など)とは対照的である。
エミール・レオン・ポストは、1921年の基本命題理論において、追加の論理的真理度を初めて導入したとされている。[ 2 ] 3値論理の概念形式と基本概念は、当初ヤン・ルカシェヴィチとクラレンス・アーヴィング・ルイスによって発表された。これらはその後、グリゴレ・コンスタンティン・モイシルによって公理的代数形式で再定式化され、 1945年にはn値論理にも拡張された。
1910 年頃、チャールズ・サンダース・パースは多値論理体系を定義したが、それを公表することはなかった。[ 3 ]パースは、すべての命題は真か偽のどちらかでなければならないという考えをきっぱりと否定し、境界命題は「P と P でないの境界にある」と書いている。[ 4 ]しかし、「三項論理は普遍的に真である」と確信していたにもかかわらず、[ 5 ]彼はまた「これらすべてはナンセンスに非常に近い」とも書き留めていた。[ 6 ] 1966 年になって初めて、マックス・フィッシュとアトウェル・ターケットが彼の未発表原稿から再発見したものを出版し始めたことで、パースの三項論理の考えが広く知られるようになった。[ 7 ]
大まかに言えば、3値論理の研究の主な動機は、真偽で表すことができない命題の真偽値を表すことです。[ 8 ] Łukasiewicz は、不確定な未来に関する命題の真偽値を表すために、当初、未来の偶発事象の問題に対して3値論理を開発しました。 [ 9 ] [ 10 ] [ 11 ] Bruno de Finetti は、「ある個人が、少なくともある時点では、[正しい] 反応を知らない」場合を表すために第3の値を使用しました。[ 12 ] [ 8 ] Hilary Putnam は、物理的に決定できない値を表すためにそれを使用しました。[ 13 ]
例えば、スピードメーターを使って自動車の速度がこうであると確認できたとしても、そのような世界では、その瞬間の自動車の位置に関する特定の記述を検証したり反証したりすることは不可能かもしれません。物理法則と特定の観測データに基づいて、自動車の位置に関する記述が決して反証も検証もできないことがわかっている場合、その記述を真偽ではなく「中間」とみなすことに意味があるかもしれません。マクロな経験において、経験的に意味のある記述とみなされるものはすべて、少なくとも潜在的に検証可能または反証可能であるように思われるため、私たちは、そのような記述はすべて真か偽かのどちらかであると述べる慣習を好みますが、多くの場合、どちらであるかはわかりません。
同様に、スティーブン・コール・クリーネは、「真偽を問わず、いかなるアルゴリズムによっても決定できない」述語を表すために第3の値を使用した[ 14 ] [ 8 ]。
二値論理と同様に、三値論理における真理値も、三値数体系の様々な表現方法を用いて数値的に表すことができます。よく用いられる例をいくつか挙げると以下のようになります。
三値コンピュータ内部では、三値値は三値信号によって表現されます。
本稿では主に、真理値{偽、不明、真}を用いた三項命題論理の体系を説明し、従来のブール論理結合子を三項の文脈に拡張する。
ブール論理では2² = 4 個の単項演算子が使用できます。2 つの入力に 3 番目の値を追加すると 3² = 9 個になり、 3 番目の入力が三項論理で追加されると、単一の入力セットに対して 3³ = 27 個の異なる演算子が使用できます。 (これは、任意の単項演算子の可能な真理値表をすべて考慮することで明らかになります。単一のブール入力の可能な値TFが2つある場合、各値に作用する次の単項演算子(常にT、Identity、NOT、常にF)から得られる出力パターンTT、TF、FT、FFは4つあります。3項変数の可能な値3つと、それぞれに可能な単項演算の3つの結果が掛け合わされた場合、出力パターンは27種類あります。TTT、TTU、TTF、TUT、TUU、TUF、TFT、TFU、TFF、UTT、UTU、UTF、UUT、UUU、UUF、UFT、UFU、UFF、FTT、FTU、FTF、FUT、FUU、FUF、FFT、FFU、FFF。)同様に、ブール論理では2 ×2 =16種類の異なる二項演算子(2つの入力を持つ演算子)が可能ですが、三項論理では3 ×3 =19,683種類あります。このような演算子。非自明なブール演算子には名前(NOT、AND、 NAND、OR、NOR、XOR、XNOR(等価)、および含意または不等式の4つのバリアント)を付けることができ、0または1の入力のみを考慮する6つの自明な演算子がありますが、可能な3値演算子のごく一部を除いてすべてに名前を付けようとするのは不合理です。[ 18 ] 2値論理ではすべての演算子に名前が付けられておらず、機能的に完全な演算子のサブセットが使用されるのと同様に、機能的に完全な3値演算子のセットが存在する可能性があります。
以下は、スティーブン・コール・クリーネの不確定性の強力な論理とグラハム・プリーストのパラドックスの論理における論理演算を示す真理値表です。
真理値1、0、および-1を整数として解釈する場合、これらの演算は通常の算術演算(x + yは加算、xyは乗算、x 2はべき乗を使用)または最小値/最大値関数で表現できます。
これらの真理値表では、未知の状態は、クリーネ論理では真でも偽でもないとみなすことができ、プリースト論理では真と偽の両方とみなすことができます。違いは、トートロジーの定義にあります。クリーネ論理では、指定された真理値は T のみですが、プリースト論理では、指定された真理値は T と U の両方です。クリーネ論理では、特定の未知の状態が、ある時点で真または偽を密かに表しているかどうかを知ることはできません。ただし、特定の論理演算は、未知のオペランドを含む場合でも、明確な結果をもたらすことができます。たとえば、真OR真は真に等しく、真OR偽も真に等しいので、真OR未知も真になります。この例では、未知の状態はどちらの二値状態にもなり得るため、どちらの状態でも同じ結果が得られるため、 3 つの場合すべてで真になります。
数値、例えばバランスのとれた三値などがfalse、unknown、trueに割り当てられ、falseがunknownより小さく、 unknownがtrueより小さい場合、A AND B AND C... = MIN(A, B, C ...) および A OR B OR C ... = MAX(A, B, C...) となります。
クリーネ論理における物質的含意は、次のように定義できる。
、そしてその真理値表は
これは、ルカシェヴィチ論理(後述)とは異なる。
クリーネ論理にはトートロジー(有効な式)がありません。なぜなら、整形式の式のすべての原子要素に「不明」という値が割り当てられると、式自体も「不明」という値を持つことになるからです。(クリーネ論理で指定されている唯一の真理値は「真」です。)しかし、有効な式がないからといって、有効な議論や推論規則がないわけではありません。クリーネ論理では、前提がすべて「真」である場合(任意の解釈/モデルの場合)、結論も「真」でなければならない場合に、議論は意味的に有効です。(パラドックス論理(LP)はクリーネ論理と同じ真理値表を持ちますが、1つではなく2つの指定真理値があります。これらは「真」と「両方」(「不明」のアナロジー)です。そのため、LPにはトートロジーがありますが、有効な推論規則は少なくなります。[ 19 ]
ルカシェヴィチの論理体系Ł3は、上記のクリーネ論理体系と同じAND、OR、NOTの表を持っていますが、「未知は未知を意味する」という含意の定義が異なります。このセクションは、マリノフスキの『論理学史ハンドブック』第8巻の章の記述に従っています。 [ 20 ]
ルカシェヴィチ論理の真理値表に対する重要な意味は
実際、ルカシェヴィチの含意と否定を用いると、他の一般的な接続詞は次のように導き出せる。
また、他にもいくつかの有用な単項演算子を導出することも可能です(1921年にタルスキによって初めて導出されました)。
それらは以下の真理値表を持っています。
Mは「~ということが偽ではない」と読み、あるいは(失敗に終わった)タルスキ=ルカシェヴィチの試みでは、3値論理を用いて様相論理を公理化する際に「~ということがあり得る」と読みます。Lは「~ということが真である」または「~ということが必要である」と読みます。最後にIは「~ということが不明である」または「~ということが偶然である」と読みます。
ルカシェヴィチのŁ3では、指定された値はTrueであり、この値が常に成り立つ命題のみがトートロジーとみなされます。例えば、A → AとA ↔ AはŁ3でも古典論理でもトートロジーです。古典論理のすべてのトートロジーがそのままŁ3に持ち越せるわけではありません。例えば、排中律A ∨ ¬ Aと無矛盾律¬ ( A ∧ ¬ A )はŁ3ではトートロジーではありません。しかし、上で定義した演算子を用いることで、それらの類似物であるトートロジーを記述することが可能です。
R-mingle 3 (RM3) の実質含意の真理値表は以下のとおりです。
RM3の決定的な特徴は、弱化の公理が存在しないことである。
これは、随伴性により、積からの射影と等価である。
RM3は非デカルト対称モノイド閉圏であり、その積(含意に左随伴)は有効な射影を持たず、Uをモノイド単位元とする。この論理は、対偶も満たす「イデアル」パラコンシステント論理と同等である。
1930年にヘイティング[ 21 ]によって直観主義論理の研究モデルとして導入された、あちらこちら論理(HT、スメタニッチ論理SmTまたはゲーデルG3論理とも呼ばれる)は、3値の中間論理であり、3番目の真理値NF(偽でない)は、直観主義的に偽でないことが証明できる命題の意味論を持つが、正しさの直観主義的証明は持たない。
これは、直観主義論理の公理に、2つの同値な公理(¬ q → p)→(((p → q)→ p)→ p)または同値なp ∨(¬ q)∨(p → q)のいずれかを付加することによって定義することも、その演算の明示的な真理値表によって定義することもできます。特に、連言と選言はクリーネの論理とルカシェヴィチの論理と同じですが、否定は異なります。
HT論理は、中間論理の束の中で唯一無二の極である。この意味で、古典論理に次ぐ「2番目に強い」中間論理と見なすことができる。
この論理は、クリーネの3値論理の弱形式としても知られている。
これらの関数は算術式でも表現できます。真理値の集合は彼らです:
最近では、哲学的な問題ではなく回路の問題に動機づけられた3VLモジュラー演算がいくつか導入されている。 [ 22 ]
データベースクエリ言語であるSQLは、NULLフィールドの内容との比較を処理する手段として三項論理を実装しています。SQLは、AND、OR、NOTテーブルに限定された、クリーネK3論理の一般的な断片を使用します。
三項論理は普遍的に真である。しかし、二項論理は絶対的に偽ではない。
しかし、多値論理を捉える第二の方法がある。すなわち、命題自体は真か偽の2つの値、つまり「はい」か「いいえ」の2つの応答しか持ち得ないが、ある個人が少なくともある時点では[正しい]応答を知らない場合がある。したがって、その個人にとって、命題に対する第三の態度が可能となる。この第三の態度は、「はい」または「いいえ」という明確な第三の値に対応するものではなく、単に「はい」か「いいえ」の間の疑念に対応するものである。
しかし、「中間」が「現時点で検証も反証もされていない」という意味ではない。すでに述べたように、「検証済み」と「反証済み」は認識述語、つまり特定の時点での証拠に相対的であるのに対し、「中間」は「真」や「偽」と同様に証拠に相対的ではない。
強力な 3 値論理は、完全に定義された述語 Q(x) と R(x) に適用でき、そこから通常の 2 値の意味で ̅、V、&、->、≡ を使用して複合述語が形成されます。したがって、(iii) Q(x) と R(x) の真偽をそれぞれ自然数の部分集合上で決定する固定アルゴリズムがあると仮定します (たとえば、2 つの部分再帰述語の定義を古典的に完了した後に発生します)。 t、f、u は、「アルゴリズムによって真であると判定可能(つまり、アルゴリズムによって得られる Q(x) および R(x) に関する情報のみを使用して)」、「アルゴリズムによって偽であると判定可能」、「アルゴリズムによって真偽が判定できない」を意味するものとします。(iv) Q(x) および R(x) に関する知識の状態が固定されていると仮定します(たとえば、それぞれのアルゴリズムを所定の段階まで実行した後など)。t、f、u は、「真であることがわかっている」、「偽であることがわかっている」、「真偽が不明」を意味するものとします。