💡 論理の16の顔:2入力で可能なすべてのブール関数 🔗

数学者**ジョージ・ブール(George Boole)**にちなんで名付けられたブール代数は、すべてのデジタル回路の礎です。ブール代数では、**真(1)または偽(0)**の2つの状態しか取らない変数を扱います。2つの入力変数 A と B を考えるとき、入力の組み合わせは (0, 0)、(0, 1)、(1, 0)、(1, 1) の4通りしかありません。

これら4通りの入力の組み合わせそれぞれに対して、出力は 0 または 1 のいずれかになるため、一意なブール関数の総数は 24=162^4 = 16 通りとなります。

この記事では、これら16の基本的な論理演算を、デジタル設計における複雑さと重要度ごとに分類して解説します。

📑 目次 🔗


🔢 4つの入力の組み合わせ 🔗

各関数を理解するために、まず入力のパターンを定義しておきましょう。

AB
00
01
10
11

🚀 16個の関数のカテゴリ分類 🔗

16個の関数は、最も単純な定数関数から最も複雑な排他的論理ゲートまで、その出力パターンに基づいていくつかのカテゴリに分類できます。ここでは関数の出力を FF と表します。

⚪ 1. 定数関数(2種類) 🔗

これらの関数は入力を完全に無視し、常に同じ出力を返します。

関数名論理式A=0, B=0A=0, B=1A=1, B=0A=1, B=1説明
ゼロ(FALSE)F0=0F_0 = 00000常に 0 を出力します。
イチ(TRUE)F15=1F_{15} = 11111常に 1 を出力します。

🔄 2. 単純な伝達・反転関数(4種類) 🔗

これらの関数は、どちらか一方の入力のみに依存し、それをそのまま出力するか反転して出力します。

関数名論理式A=0, B=0A=0, B=1A=1, B=0A=1, B=1説明
Aの伝達(Transfer A)F3=AF_3 = A0011出力はそのまま A になります。
Bの伝達(Transfer B)F5=BF_5 = B0101出力はそのまま B になります。
NOT AF12=AˉF_{12} = \bar{A}1100出力は Aの反転 になります。
NOT BF10=BˉF_{10} = \bar{B}1010出力は Bの反転 になります。

⚙️ 3. 基本的な二項演算(4種類) 🔗

これらは、デジタルシステムで普遍的に使用される主要な論理ゲートです。

関数名論理式A=0, B=0A=0, B=1A=1, B=0A=1, B=1一般的なゲート
AND(論理積)F8=A⋅BF_8 = A \cdot B0001A と B の両方が 1 のときのみ 1。
OR(論理和)F14=A+BF_{14} = A + B0111A または B(あるいは両方)が 1 のとき 1。
NAND(否定論理積)F7=A⋅B‾F_7 = \overline{A \cdot B}1110A と B の NOT-AND。(万能ゲート)
NOR(否定論理和)F1=A+B‾F_1 = \overline{A + B}1000A と B の NOT-OR。(万能ゲート)

⚖️ 4. 排他的演算(2種類) 🔗

これらの関数は、算術回路(加算器など)や入力の比較において極めて重要です。

関数名論理式A=0, B=0A=0, B=1A=1, B=0A=1, B=1説明
XOR(排他的論理和)F6=A⊕BF_6 = A \oplus B0110A と B が異なるとき 1。
XNOR(同値)F9=A⊕B‾F_9 = \overline{A \oplus B}1001A と B が同じとき 1。

➡️ 5. 条件関数と逆条件関数(4種類) 🔗

これらの関数は一般的なデジタル論理回路ではあまり直接使われませんが、高度な論理設計や特定の形式体系において重要な役割を果たします。

関数名論理式A=0, B=0A=0, B=1A=1, B=0A=1, B=1説明
A ならば B(論理包含)F13=Aˉ+BF_{13} = \bar{A} + B1101A が 1 かつ B が 0 のときのみ偽(0)。
B ならば AF11=A+BˉF_{11} = A + \bar{B}1011B が 1 かつ A が 0 のときのみ偽(0)。
A ならばBの否定(非包含)F4=A⋅BˉF_4 = A \cdot \bar{B}0010A が 1 かつ B が 0 のときのみ真(1)。
B ならばAの否定F2=Aˉ⋅BF_2 = \bar{A} \cdot B0100A が 0 かつ B が 1 のときのみ真(1)。

🔑 「万能性(ユニバーサリティ)」の力 🔗

これら16個の関数の中で最も興味深い点は、たった1種類のゲートだけで他のすべての関数を構築できるものが2つ存在することです。それが NAND ゲートと NOR ゲートです。

この性質ゆえに、NAND ゲートと NOR ゲートは**万能ゲート(ユニバーサルゲート)**と呼ばれています。たった1種類のゲートだけを使ってコンピュータ全体を構築できるため、集積回路(IC)の製造プロセスを大幅に簡素化することができるのです。


📝 全16関数のまとめ表 🔗

この表は、4つの入力の組み合わせに対する出力結果に基づいて、全16関数を一覧にまとめたものです。

F#(0,0)(0,1)(1,0)(1,1)関数名論理式一般的なゲート
F0F_00000ゼロ(Zero)00(定数)
F1F_11000NORA+B‾\overline{A + B}NOR
F2F_20100B ならばAの否定Aˉ⋅B\bar{A} \cdot B
F3F_30011Aの伝達AA
F4F_40010A ならばBの否定A⋅BˉA \cdot \bar{B}
F5F_50101Bの伝達BB
F6F_60110XORA⊕BA \oplus BXOR
F7F_71110NANDA⋅B‾\overline{A \cdot B}NAND
F8F_80001ANDA⋅BA \cdot BAND
F9F_91001XNORA⊕B‾\overline{A \oplus B}XNOR
F10F_{10}1010NOT BBˉ\bar{B}NOT
F11F_{11}1011B ならば AA+BˉA + \bar{B}
F12F_{12}1100NOT AAˉ\bar{A}NOT
F13F_{13}1101A ならば BAˉ+B\bar{A} + B
F14F_{14}0111ORA+BA + BOR
F15F_{15}1111イチ(One)11(定数)

2つのシンプルなバイナリ入力から導き出されるこれら16の論理関数は、あらゆる計算処理の完全な語彙(ボキャブラリー)を形成しており、最も単純な基礎から驚くほど複雑なシステムを構築できることを示しています。


📚 無料電子書籍をダウンロード 🔗

カウエの生き方のオフライン版を入手しましょう——🍏 健康、💰 富、❤️ 愛、🧘 意味を最適化するための実践ガイドです。

カウエの生き方

カウエの生き方

📬 ニュースレターを購読する 🔗

新しいエッセイ、本の要約、より良く生きるための実践ガイドを公開した際にお知らせします。スパムはありません——いつでも配信停止できます。


💬 コメントとディスカッション 🔗

質問、ご意見、提案はありますか?ぜひ下であなたの考えを共有してください。コメント欄は GitHub Discussions(広告なし・スパムなし)を利用しています——下の GitHub でサインイン をクリックしてコメントやリアクションを残してください(無料の GitHub アカウントは1分未満で作成できます)。



最終更新日: 2025/11/27.

免責事項:当サイトのコンテンツは情報提供および教育のみを目的としており、医療、心理、金融、投資、税務、または法律上の助言を構成するものではありません。ここに掲載されている考え、キュレーション、意見はすべて私個人のものであり、雇用主の見解を代表するものではありません。書籍、講演、記事の要約は独立した教育的な解説であり、それぞれの著者の知的財産です。編集、フォーマット、要約の補助としてAIツールを使用する場合がありますが、正確性を期すよう努めているものの誤りが含まれる可能性があります。プライバシー:当サイトでは、任意のニュースレター購読(follow.it)、コメント機能(giscus / GitHub Discussions)、および埋め込みメディア(YouTube)に外部サービスを利用しており、これらのサービスはそれぞれのプライバシーポリシーに従って訪問者のIPアドレスやCookieを処理する場合があります。