As a way to help students understand that a function is a relation where every input value has exactly one output value teachers and textbooks introduce the idea of a function machine. A machine is a very apt and relevant analogy, those of us who’ve dabbled in computer programming know the importance of the function to any programming language. How could a computer/machine output two values given a single input value, the machine would have to make a choice. And choice is entirely human.

So, it struck me. Why not turn my students into machines, after all, they’re very good at copying things and following procedures, but I digress.

Here’s the idea. Given a relation expressed as a set of ordered pairs, map, equation, or graph the teacher says an input value and the students must reply with the output value. I started by introducing only functions (I said “1” and they replied “2”, I said “2” and they replied “4”, etc.) then I put in a relation that wasn’t a function. Something different happened, students were saying different values or introducing the word “or” and “and.” With that, they understood, and were able to extend their understanding easily from list of coordinates to function maps and even graphs without the vertical line test.