# The Gator Module Computes eight common logic functions for up to 16 inputs.

# Controls

• Negate Buttons: Beside each input is a negate button that negates the input before computing the logic functions.

# Ports

• Input ports: The 16 logic inputs. A voltage above 0.5V (half a volt) is considered true. A voltage of 0.5V or below is considered false.

• AND: True if every input is true.

• NAND: True if at least one input is false.

• EVEN: True if the number of true inputs is even.

• ODD: True if the number of true inputs is odd.

• OR: True if at least one input is true.

• NOR: True if every input is false.

• XOR: True if exactly one input is true. See the note below about the meaning of XOR for more than two inputs.

• XNOR: True if the number of true inputs is other than one.

• Inputs: Gator considers any input above 0.5V (half a volt) to be true, and any other voltage to be false.
• Connected Inputs: When computing the logic functions, Gator considers only the connected inputs. If no inputs are connected, Gator emits 0V on all OUT ports.
• Output: Each Gator output emits 10V if the corresponding logic function is true and 0V if the function is false.

# The Meaning of XOR

Opinions differ about the definition of “exclusive or” (XOR) for more than two inputs:

1. Some people insist that it is undefined.
2. Some people insist that it is true if the number of true inputs is odd.
3. Some people insist that it is true if exactly one input is true.

I chose the third definition (exactly one true input) for XOR, and added the ODD output to handle the second definition. I left the first definition unimplemented. At least, I think I did. Frankly, there’s no way to know.