論理和
数理論理学において論理和(ろんりわ、テンプレート:Lang-en)とは、与えられた複数の命題のいずれか少なくとも一つが真であることを示す論理演算である。離接(りせつ)、選言(せんげん)とも呼び、ORとよく表す。
二つの命題 P, Q に対する論理和を P ∨ Q と書き、「P または Q」と読む。後述のように、日常会話における「または」とは意味が異なる。
例
- 「私の身長は 160 cm 以上である」
- 「私の体重は 50 kg 以上である」
の二つの命題の論理和は、
- 「私の身長は 160 cm 以上か、または私の体重は 50 kg 以上である(両方成り立っていてもよい)」
日常会話において「または」と言った場合、排他的論理和を意味する場合が多い。例えば、レストランにおいて「コーヒーまたは紅茶が付きます」と言えば、通常どちらか一方のみであることを意味する。
性質
P ∨ Q は否定と論理積を用いた ¬(¬P ∧ ¬Q) と同じである。従って、論理和は否定と論理積で表せる。
- P ∨ Q ⇔ ¬(¬P ∧ ¬Q)
また、論理積は論理和と否定で表せる。
- P ∧ Q ⇔ ¬(¬P ∨ ¬Q)
この二つをド・モルガンの法則という。
真理値表
命題 P | 命題 Q | P ∨ Q |
---|---|---|
真 | 真 | 真 |
真 | 偽 | 真 |
偽 | 真 | 真 |
偽 | 偽 | 偽 |
表記法
論理和(OR) は、中置記法により表記される。
論理学
<math>\or</math>を使用して <math>P \or Q</math> と書く。
電子工学
+ 記号を使用して <math>A + B</math> と書く。 テンプレート: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
のように使用される。
各プログラミング言語における論理和の表記と意味は、短絡評価と密接な関係がある。