数理論理学(mathematical logic)記号論理学(symbolic logic)の話

 言葉ではなく,言葉が表す「概念」や「観念」を抽象化し,それを代数学におけると同様に文字や記号の列で表して,その変換について研究する.

 命題論理学(propositional logic)

 「風が吹いた」という観念を文字$A$で表し,「桶屋が儲かる」という観念を 文字$B$で表したとき,「風が吹いたならば桶屋が儲かる(風が吹けば桶屋が儲かる)」という観念を$A\Rightarrow B$で表したりする. この場合,記号$\Rightarrow$は「ならば」という観念を表している.
  1. 論理式$A,\ B,\dots$から論理記号$\land,\ \lor,\ \lnot,\ \Rightarrow$によって,$A\land B,\ A\lor B,\ \lnot A,\ A\Rightarrow B$なる論理式が作られる.
    • $A\land B$(「$A$かつ$B$」と読む)を論理積(logical product, conjunction, AND)といい,
    • $A\lor B$(「$A$または$B$」と読む)を論理和(logical sum, disjunction, OR)といい,
    • $\lnot A$(「$A$でない」と読む)を$A$の否定(negation, NOT)という.
    • $A\Rightarrow B$は,$\lnot(A\land\lnot B)=\lnot A\lor B$と同値である.

論理代数

命題論理変数
真(true), T $1$
偽(false), F $0$
論理積(AND), $\land$ $\cdot$(省略可)
論理和(OR), $\lor$ $+$
否定(NOT), $\lnot$ $\overline{ }$

 デジタル回路(digital circuit)の話

 電圧の H(High), L(Low) のみで情報を演算するため,基本的に組み合わせ回路はブール代数における論理式で書き表わすことができる.

 論理関数(logical function)

 論理関数は真理値表(truth table)で定義される. $n$変数論理関数の真理値表の行数(入力組合せの数)は$2^n$である. 従って,$n$変数論理関数の総数は$\displaystyle 2^{2^n}$個存在する. また,論理関数は論理式(logical expression)で表すことができる.

 論理式(logical expression)

 リテラル(論理変数,またはそれに‘$\overline{ }$’(否定)を付けたもの)を‘$\cdot$’でつないで出来た項を論理積項という. 積項を‘$+$’でつないで出来た式を積和形(sum-of-products form),加法標準形とよぶ.
 変数の集合が与えられたとき,全ての変数のリテラルを含む積項を最小項(minterm)という. 最小項は$2^n$個ある. 最小項は変数に対するある一つの入力組合せに対してのみ$1$となる
 最小項の和で表された積和形を積和標準形(canonical sum-of-products form),主加法標準形とよぶ. 真理値表で関数値が$1$になっている最小項を全て加えれば論理関数を実現できる.

 論理関数の簡単化

簡単化の基準

 最小積和形表現(minimum sum-of-products form):積項数が最も少なく,かつ積項数が同じであれば,現れるリテラル数がもっとも少なくなるもの.
 他に,ゲート数最小,面積最小,etc.

簡単化に使う方法

 カルノー図(Karnaugh map),クワインマクラスキー法 etc.

論理回路


戻る