以下の論理回路を例に、考えます。
この回路のKarnaugh図を生成してみましょう。
/* 8.1.14m */ nand(x, y) := not (x and y)$ logic(x, y) := nand(nand(x, y), nand(not x, not y))$ apply(matrix, makelist(makelist([a, b, logic(a>0, b>0)], a, 0, 1), b, 0, 1));
この回路は、排他的論理和の否定であることがわかりました。
参考文献
- Crandall, Mathematica―理工系ツールとしての (アジソン ウェスレイ・トッパン情報科学シリーズ) p.229-p.234
- ウィキペディア, カルノー図