論理和

数理論理学において論理和(ろんりわ、テンプレート:Lang-en-short)とは、与えられた複数の命題のいずれか少なくとも一つが真であることを示す命題を作る論理演算である。離接(りせつ)、選言(せんげん)とも呼ぶ。
二つの命題 テンプレート:Math に対する論理和は記号 テンプレート:Math を用いて テンプレート:Math と表せる。この記号はラテン語で(非排他的)論理和を意味する vel の頭文字に由来する[1]。また テンプレート:Math の形をした命題を選言命題(テンプレート:Lang)、その中に現れる命題 テンプレート:Mvar や テンプレート:Mvar を選言肢(テンプレート:Lang)という[2]。
例
- 「私の身長は テンプレート:Val 以上である」
- 「私の体重は テンプレート:Val 以上である」
の二つの命題の論理和は、
- 「私の身長は テンプレート:Val 以上か、または、私の体重は テンプレート:Val 以上である」
となる。この論理和が真となるのは
- 「私」の身長は テンプレート:Val 以上で、体重は テンプレート:Val 以上
- 「私」の身長は テンプレート:Val 以上で、体重は テンプレート:Val より軽い
- 「私」の身長は テンプレート:Val より低く、体重は テンプレート:Val 以上
のいずれかである。論理和が偽となるのは以下の場合である。
- 「私」の身長は テンプレート:Val より低く、体重は テンプレート:Val より軽い
性質
P ∨ Q は否定と論理積を用いた ¬(¬P ∧ ¬Q) と同じである。従って、論理和は否定と論理積で表せる。
- P ∨ Q ⇔ ¬(¬P ∧ ¬Q)
また、論理積は論理和と否定で表せる。
- P ∧ Q ⇔ ¬(¬P ∨ ¬Q)
この二つをド・モルガンの法則という。
真理値表
論理和の真理値表
| テンプレート:Yes-No命題 P | テンプレート:Yes-No命題 Q | テンプレート:Yes-NoP ∨ Q |
|---|---|---|
| テンプレート:Yes2 | テンプレート:Yes2 | テンプレート:Yes2 |
| テンプレート:Yes2 | テンプレート:No2 | テンプレート:Yes2 |
| テンプレート:No2 | テンプレート:Yes2 | テンプレート:Yes2 |
| テンプレート:No2 | テンプレート:No2 | テンプレート:No2 |
一般語との乖離
命題 テンプレート:Math はしばしば「テンプレート:Mvar または テンプレート:Mvar」と読まれる。この用語「または」は一般語としての用法より意味が限定的である。
日常会話において「または」と言った場合、例えば テンプレート:Mvar と テンプレート:Mvar のいずれか一方のみが成り立つことを意味することがある(排他的論理和)。具体例として、レストランにおいて「コーヒーまたは紅茶が付きます」と言えばコーヒーと紅茶のどちらか一方のみが付くことを意味し、両方が付くことは含意しない。
排他的論理和と明確に区別するために、通常の論理和を「包含的論理和」(テンプレート:En)と呼ぶこともある。
表記法
論理和(OR) は、中置記法により表記される。
論理学
を使用して と書く。
電子工学
+ 記号を使用して と書く。 テンプレート:Seealso
プログラミング言語
C言語などでは、単なる論理和は||、ビット単位の論理和は|で表され、
z = x | y;
のように使用される。(注:2|4 の値は 6 である一方、2||4 の値は 1 である。)
Perlでも、単なる論理和は||、ビット単位の論理和は|で表され、
$z = $x | $y;
のように使用される。(注: 2|4 の値は 6 である一方、 2||4 の値は C言語の場合とは異なり 2 である。)
VBScriptでは、「Or」で表され、
z = x Or y
のように使用される。
各プログラミング言語における論理和の表記と意味は、短絡評価と密接な関係がある。
符号位置
| 記号 | Unicode | JIS X 0213 | 文字参照 | 名称 |
|---|
注釈
関連項目
テンプレート:Navbox テンプレート:Common logical symbols テンプレート:Normdaten