集合とは(論理積、論理和、否定、排他的論理和)ペン図での表現

ここでは、集合という概念と、それに使われるペン図を解説します。

集合とは

コンピュータのプログラミングをするときに必ず出てくる考え方が、集合の考え方です。集合とはグループのことです。
たとえば、「携帯をなくしてしまった」という人達をAのグループとして、「財布をなくてしまった」というBのグループにするとします。

Aグループ → 携帯をなくしてしまった
Bグループ → 財布をなくしてしまった

このグループの人ごとに共通することはありませんが、「携帯をなくしてしまって、さらに財布もなくてしまった」ということであれば、Aのグループにも、Bのグループにも入ることになります。(これを、論理積(AND)条件と言ったりします。)

このように集合同士の関係を表すのが、論理積や論理和、否定、排他的論理和の考え方になります。それぞれは以下のようになります。

・論理積(ろんりせき)→ AND(かつ)
例:携帯をなくして かつ 財布もなくした人達 (A かつ B)

・論理和(ろんりわ) → OR(または)
例:携帯をなくした人達 または 財布をなくした人達 (A または B ※A かつ Bも含む)
 
・否定(ひてい) → NOT(でない)
例:携帯をなくしていなく かつ 財布もなくしていない人達(A でも B でもない)
(どちらのグループでもない)
 
・排他的論理和(はいたてきろんりわ) → XOR(片方だけ) (A または B ただし、A かつ Bは含まない)
例:携帯をなくしただけの人達 または 財布をなくしただけの人達 (両方なくしてはいない)

ペン図とは

上のように文章で集合を表現することもできるのですが、もっと視覚的(見たら分かる)ように表現する方法が「ペン図」と言われるものです。

まず、下の図のように、それぞれ、Aグループの人達とBグループの人達のように図にします。

上で文章で表現したものをペン図にあてはめると以下のようになります。

論理積

AかつB
例:携帯をなくして かつ 財布もなくした人達

論理和

AまたはB (AかつBを含む)
例:携帯をなくした人達 または 財布をなくした人達

否定

AでもBでもない
例:携帯をなくしていなく かつ 財布もなくしていない人達
(どちらのグループでもない)

排他的論理和

AまたはB(AかつBは含まない)
例:携帯をなくしただけの人達 または 財布をなくしただけの人達

この集合の考え方は、プログラミングの条件分岐のときに使われます。例えば、AかつBであれば、Cの処理をして、AまたはBであれば、Dの処理するなどです。

これらプログラミングの詳細については、別のページで解説します。