単純パーセプトロンで、ANDゲート・NANDゲート・ORゲートを作ることができる。また、これらを組み合わせることで、XORゲートも作ることができる。
このことについては、
を参照。
実は、NANDゲートだけで、他の全ての論理回路を実現できる。論理回路どころか、あらゆる回路を実現できるが、今回は論理回路に話を限定する。
まずはNOTゲートだ。
NANDゲートはすでに作成しているものとする。NANDゲートの特性から、
[0, 0] -> 1 [1, 1] -> 0
のように入力を変換する。
そこで、同じ値をNANDゲート2つの入力に通すような回路を作れば、NOTゲートになる。
次にANDゲートを作る。
ANDゲートは、NANDゲートの出力を反転させたものだ。出力を反転させるにはNOTゲートを通せばいい。
さらに、ORゲートを作る。
ORゲートは、[0, 0]のみ0に変換して、その他は1に変換する。一方、NANDゲートは、[1, 1]のみ0に変換して、その他は1に変換する。このことから、NANDゲートの入力を反転してやれば、ORゲートになることが分かる。
最後に、XORゲートだ。少し複雑なので、先に完成した配線を見よう。
NANDゲートは、入力のどちらか一方でも0であれば、必ず1を出力することに注目する。
入力が[0, 0]であれば、真ん中の2つのNANDゲートには共に0の入力がある。0の入力があるから、共に1を出力する。その2値を入力とする右端のNANDゲートは0を出力する。
入力が[1, 1]であれば、左端のNANDゲートは0を出力する。この場合も、真ん中のNANDゲートには共に0の入力がある。あとは入力が[0, 0]の場合と同じで、最後に0を出力する。
入力が[0, 1]であれば、左端のNANDゲートの出力は1になる。真ん中の下側のNANDゲートの入力は[1, 1]だから、その出力は0になる。すると、右端のNANDゲートには0の入力があるから、1を出力する。
対称性から、入力が[1, 0]の場合も同様に1を出力する。
これで、XORゲートも実現していることが分かった。
論理回路には、他にもNORゲート・XNORゲートがあるが、それぞれORゲート・XORゲートの出力を反転させればいい。つまり、最後にNOTゲートをつなげば実現する。