Se le proporcionan entradas y varias puertas booleanas (and, or, xor, nor, nand, xnor y not) que operan sobre las entradas de diferentes maneras. Combine las entradas con las puertas para generar nuevas salidas que le permitan alcanzar el objetivo deseado.