Visual walkthrough — Concept of a function — input, output, mapping
Every step below has three parts: WHAT we just did, WHY we did it, and PICTURE — the figure that carries the idea.
Step 1 — Two boxes and some dots
WHAT. Draw two collections of things. On the left, the things we are allowed to put in — call this box . On the right, the things that are allowed to come out — call this box . Inside each box we draw dots; each dot is one element (one "thing").
WHY. Before we talk about any rule, we must know where inputs live and where outputs live. A machine is useless if you don't know what you may feed it and what may fall out. Those two boxes are the entire stage on which a function performs.
PICTURE. Left box , right box . Nothing connects them yet — this is the empty stage.

Step 2 — Draw one arrow from every left dot
WHAT. From each dot in we draw exactly one arrow to some dot in . Here: , , .
WHY. An arrow is the rule made visible. "Feed in , get out " is drawn literally as an arrow from the -dot to the -dot. The phrase "the rule assigns to each input an output" now means one concrete thing: from every left dot, one arrow leaves.
PICTURE. Three arrows, one leaving each of , , . Notice dot receives no arrow — that is completely fine; the codomain is allowed to have spare dots.

Step 3 — The forbidden picture: two arrows from one dot
WHAT. Now deliberately break it. Add a second arrow leaving dot : keep but also draw .
WHY. We want to see why the rule bans this. Ask the machine "". Follow the arrows from — they split. One goes to , one goes to . The machine gives two answers at once. You cannot write down a single value; prediction collapses. That is the whole reason for "exactly one output".
PICTURE. Dot has a red fork — two arrows leaving it. This is the shape of "NOT a function".

Step 4 — The other broken picture: a left dot with no arrow
WHAT. Different breakage. Draw and , but leave dot with no arrow leaving it at all.
WHY. The rule said "to each element of ". Ask "" and there is nothing — the machine has no answer for an input it was supposed to accept. A vending machine that jams on button isn't a working machine. So every left dot must have an arrow, no exceptions.
PICTURE. Dot sits alone with a red "" — no arrow. This too is "NOT a function", for the opposite reason to Step 3.

Recall The two-sided rule from Steps 3 and 4
From every left dot: at least one arrow (Step 4) and at most one arrow (Step 3) exactly one arrow. How many arrows leave each domain dot in a real function? ::: Exactly one — never zero, never two.
Step 5 — Many arrows arriving at one dot is allowed
WHAT. Draw , , . Now dot on the right receives two arrows.
WHY. The ban is only on arrows leaving a dot, never on arrows arriving. Different inputs are free to share an output. Think of squaring: and both land on — two inputs, one output. Perfectly legal, because if you ask "" you still get one answer.
PICTURE. Two arrows funnel into dot (green — allowed), while every left dot still fires exactly one arrow.

Step 6 — Slide the boxes onto a graph
WHAT. Instead of two side-by-side boxes, lay the input box along a horizontal line (the -axis) and the output box along a vertical line (the -axis). Now the pair "input , output " is drawn as one point on the plane.
WHY. Real functions have infinitely many dots — we can't draw an arrow for each. A graph packs "input output" into a single point, and infinitely many points into a smooth curve. The arrow picture and the graph picture are the same idea, just re-plotted.
PICTURE. The mapping from Step 2 becomes the three points — the arrows have folded into dots on a curve.

Step 7 — The Vertical Line Test drops out
WHAT. Stand at an input on the horizontal axis and shoot a vertical line straight up. Every point where this line meets the curve is an output the machine gives for that single input .
WHY. This is Steps 3 and 4 re-seen on the graph:
- If the vertical line hits the curve twice (say at and ) — that is the fork of Step 3. Input gave two outputs. Not a function.
- If it hits zero times where is supposed to be a valid input — that is the lonely dot of Step 4.
- If it hits exactly once, everywhere — one arrow out of every input. Function. ✓
PICTURE. Left: a curve where a vertical line crosses once (green ✓). Right: the unit circle , where the vertical line at crosses at and (red fork ✗) — the picture-proof that the circle is not a function.

Step 8 — The degenerate cases, deliberately
WHAT & WHY, one line each — the cases the reader must never trip over:
- Empty spare dots (Step 2, dot ): codomain may hold dots that no arrow reaches. Allowed — that just makes the range smaller than the codomain.
- Every arrow to one dot (a constant machine, e.g. ): one arrow leaves every input, all landing on . Still exactly-one-out per input → a function, its whole range is .
- Vertical line between points, hitting nothing: if is not in the domain (e.g. for ), a vertical line hitting the curve zero times is fine — we simply never fed in . The "no arrow" ban only applies to inputs we claimed to accept.
- A single dot / single point (, arrow ): the tiniest possible function. One input, one arrow — the definition holds.

The one-picture summary
Everything on one canvas: out is strict (one arrow), in is free (many arrows), and the vertical line is just this rule seen sideways on a graph.

Recall Feynman retelling (say it to a 12-year-old)
Picture two boxes of dots. From every dot on the left you must draw exactly one arrow to the right — never zero (that dot would jam the machine), never two (the machine would give two answers and you couldn't trust it). Arrows are allowed to crash into the same right-dot, though — lots of inputs can share one output, no problem. Some right-dots may get no arrow at all; they're just spares.
Now tilt the picture: put inputs along the floor and outputs up the wall, so each "arrow" becomes a single point floating in the room. Stand on an input and look straight up: whatever the curve does above you is the output. If the curve is above you twice, that input has two answers — the machine cheated, so it's not a function. If the curve is above you exactly once everywhere your input is allowed, it's a genuine function. That "look straight up" move is the whole Vertical Line Test — and it's nothing more than the one-arrow-out rule wearing a graph costume.
Where this leads
- Graphs of Functions — the Vertical Line Test in full.
- Types of Functions — what happens when in is also strict (one-one).
- Inverse Functions — flipping every arrow around, and when that's allowed.
- Composition of Functions — feeding one machine's output into the next.
- Real-world Applications — arrows that model temperature, money, motion.