In small teams, the students can be asked to trace the operation of a simple circuit such as a half adder. They should also be asked to comment on why the class design did not implement a binary gate as a subclass of unary gate. Student can also be given a simple circuit diagram and then they are asked to implement this circut and test it with various inputs, recording the outputs. Another exercise is to have the teams develop the truth table for the above circuit. This exercise will have the students extend the given hierarchy.
Students are askedto build nand, nor, and xor gates, similar to the and and or gates.
The instructor should provide motivation for this. Students can then be asked to build an adder equivalent to the one given with and and or gates, but using nand and nor gates instead, to see the relative efficiency. This can be done with two gates. The truth table shows this clearly. Once the students are comfortable connecting gates to get circuits, they can be asked to build a subclass of Circuit to encapsulate one of their circuit designs.