全16通りの2入力論理

0000 FALSE NAND(NAND(X,NAND(X)))
0001 AND NAND(NAND(X,Y))
0010 AND(NOT(X),Y) NAND(NAND(NAND(X),Y))
0011 Y Y
0100 AND(X,NOT(Y)) NAND(NAND(X,NAND(Y)))
0101 X X
0110 XOR NAND(NAND(X,NAND(X,Y)),NAND(NAND(X,Y),Y))
0111 OR NAND(NAND(X),NAND(Y))
1000 NOR NAND(NAND(NAND(X),NAND(Y)))
1001 XNOR NAND(NAND(NAND(X,NAND(X,Y)),NAND(NAND(X,Y),Y)))
1010 NOT(X) NAND(X)
1011 OR(NOT(X),Y) NAND(X,NAND(Y))
1100 NOT(Y) NAND(Y)
1101 OR(X,NOT(Y)) NAND(NAND(X),Y)
1110 NAND NAND(X,Y)
1111 TRUE NAND(X,NAND(X))

4桁の数字は(X,Y)が(0,0),(1,0),(0,1),(1,1)の順の出力値
NANDで書いたバージョンでのNAND(X)はNAND(X,X)の意味
並べる順番は逆の方がよかったかな…