Boolean Circuits · NAND Game: Arithmetic and Switching

Lesson 4

Nikolai Chukhin · Alexander S. Kulikov

Problem. Synthesize a circuit of size \(2\) over \(\{\operatorname{NAND}_{2}, \operatorname{INV}_{1}, \operatorname{AND}_{2}, \operatorname{OR}_{2}, \operatorname{XOR}_{2}, \operatorname{FADD}_{3}\}\) computing the adder function: \[\operatorname{ADD}_{2}(a_{1},a_{0},b_{1},b_{0},\texttt{cin})=(\texttt{cout},s_{1},s_{0}),\] where \(2a_{1}+a_{0}+2b_{1}+b_{0}+\texttt{cin}=4\texttt{cout}+2s_{1}+s_{0}\).