回路計算 - ブール代数

提供:MochiuWiki - SUSE, Electronic Circuit, PCB
2025年1月20日 (月) 14:17時点におけるWiki (トーク | 投稿記録)による版 (ページの作成:「== 概要 == ブール代数は、19世紀にジョージ・ブールによって考案された数学的体系であり、論理演算の基礎となる重要な代数体系である。<br> <br> ブール代数の概念は、値として0 (偽)と 1 (真) のみを扱い、これらの値に対して論理演算を適用することである。<br> 主要な演算として、論理和 (OR、+で表記)、論理積 (AND、・で表記)、否定 (NOT、上線で表…」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

概要

ブール代数は、19世紀にジョージ・ブールによって考案された数学的体系であり、論理演算の基礎となる重要な代数体系である。

ブール代数の概念は、値として0 (偽)と 1 (真) のみを扱い、これらの値に対して論理演算を適用することである。
主要な演算として、論理和 (OR、+で表記)、論理積 (AND、・で表記)、否定 (NOT、上線で表記) がある。
これらの演算を組み合わせることにより、複雑な論理関係を表現することができる。

交換則、結合則、分配則等があり、これらの法則を適用することにより、複雑な論理式を簡単化、等価な式に変換することができる。
例えば、 という吸収則を用いる場合、冗長な論理式を簡略化することができる。

ブール代数の応用例として、デジタル回路の設計がある。
論理ゲート (AND、OR、NOT等) を組み合わせることで、加算器や記憶素子 (RS-FF) 等の複雑な回路を構築することができる。

例えば、半加算器は次の論理式で表現できる。

  • (和)
  • (桁上げ)


また、プログラミングにおいても、条件分岐や真偽値の判定にブール代数の概念が使用されているす。
データベースの検索条件の組み立てや正規表現のパターンマッチング等も、ブール代数の原理に基づいている。

ブール代数の重要な概念として、双対性がある。
任意のブール式において、ANDとORを入れ替え、0と1を入れ替えると、等価な式が得られる。
これはド・モルガンの法則 に代表される性質である。

カルノー図やクワイン・マクラスキー法等のブール式の簡単化手法も開発されており、
これらの手法を使用することで、複雑な論理回路を最適化してハードウェアの実装コストを削減することができる。


双対論理式

双対論理式は、元の式に対して以下に示す操作を行った論理式である。




の双対論理式は と表す。

例: の双対論理式は、 になる。


ブール代数の公式

交換則
結合則
分配則
恒等則


同一則
補元則
吸収則
ド・モルガンの法則