出力:

入力:

クワイン・マクラスキー法 オンライン計算ツール

クワイン・マクラスキー法を使って論理式を簡単化することができる計算機です。

まだ開発中なので機能は少ないですが、今後、いろいろと追加していく予定です。

要望やバグ報告などがあれば、お問い合わせフォームからお知らせください。

使い方

論理式を入力して、計算ボタンを押すだけです。

論理式の書き方

論理式は、それっぽく書けば大体認識できるようになっています。

以下に、すべて同じ論理式を表す、いくつかの例を示します。

例1: ~A * B + C ^ D

例2: A' & B | C ⊕ D

例3: !AB + C ⊻ D

例4: NOT A AND B OR C XOR D

識別できる文字

識別できる文字は以下の通りです。

ANDとして認識される文字

ANDとして認識される文字は以下の通りです。

AND and & && * . × ∧ ⋂ ⋅

これらだけでなく、直接変数同士をつなげてもANDとして認識されます(予約文字を除く)。

例えば、ABと書けば、A * Bとして認識されますが、ANDと入力してもA * N * Dとして認識されません。

ORとして認識される文字

ORとして認識される文字は以下の通りです。

OR or | || + ∨ ⋃

NOTとして認識される文字

NOTとして認識される文字は以下の通りです。

(前方)NOT not ¬ ~ ! - (後方)'

XORとして認識される文字

XORとして認識される文字は以下の通りです。

XOR xor ⊕ ⊻ ^

そもそもクワイン・マクラスキー法とは

クワイン・マクラスキー法は、論理式を簡単化するための手法です。

論理式の簡単化は、カルノー図を使った方法が有名ですが、クワイン・マクラスキー法は、コンピュータでの計算に向いています。

クワイン・マクラスキー法では、入力として、積和形(加法標準形)の論理式を受け取ります。

それをなんやかんや(Wiki)すると、essential prime implicant(必須項)と、essentialではないprime implicantが求まります。

必須項は、最終的な結果に必ず含まれていなければならない項で、それ以外の項は、ペトリック法によって、必要な項の組み合わせを求めます。

とはいえ、ここの実装は難しくなく、essentialでないprime implicantを和積形にして、それを分配法則で積和形に変換した後、変数が最も少ないものを選ぶだけです。

そうして得られたものを、必須項と組み合わせて、最終的な結果を(場合により複数)求めます。

このツールのTODO

このツールはまだ開発中です。

TODOリストは以下の通りです。

  • ・Don't careを扱えるようにする
  • ・さまざまな形式でコピーできるようにする