# Function Transformations: A New Perspective

### A less common explanation for why y = (x - 3)² is to the RIGHT of y = x².

There’s one big question that must be addressed whenever math students learn about function transformations: why are they “backwards”? Subtracting 3 from an x-coordinate normally moves a point to the left, so why does subtracting 3 from x in an equation move points to the *right*?

There are a variety of explanations for this, but the way *I* like to think about it doesn’t seem to pop up all that often on the internet. In fact, I could only find two other sources online that have the same general approach as me.12 And so, in this post, I would like to share my less common way of thinking about function transformations — a way of thinking that revolves around relationships between old and new points and the logical equivalences you can get out of them.

(Assumed background knowledge: a general familiarity with algebra, graphs of equations, and how function transformations affect graphs, points, and equations. Not needed: a conceptual understanding of *why* function transformations work the way they do — that’s what I’m trying to *provide* in this post.)

### What does it mean to transform a graph, anyway?

In the above image, we transform the blue graph into the orange graph by moving it 10 units to the right. What exactly does that mean, though? We can see it with our eyes, sure, but mathematically speaking, graphs are just sets of points — what exactly does it mean to move a set of points 10 units to the right?

Well, oftentimes, doing something to a group of objects means doing that thing to each individual object inside that group. Transforming a graph is no exception. When we move a graph 10 units right, what we’re actually doing is moving all of the *points* on the graph 10 units right. All of the resulting new points together form the resulting new graph.

For example, the point A₀ = (4, 0) — the rightmost point on the old graph — moves 10 units to the right, becoming the new point A₁ = (14, 0) — the rightmost point on the new graph. And the topmost point on the old graph, B₀ = (0, 4), moves 10 units right and becomes the topmost point on the new graph, B₁ = (10, 4). And in general, the point (x, y) on the old graph becomes the point (x + 10, y) on the new graph.

Another way to think of it is that the old point A₀ = (4, 0) and the new point A₁ = (14, 0) **correspond** to each other. When you move A₀ 10 units to the right, the result is A₁. Similarly, B₀ = (0, 4) corresponds to B₁ = (10, 4), and in general, the point (x₀, y₀) on the old graph corresponds to the point (x₁, y₁) = (x₀ + 10, y₀) on the new graph. (It’s important to keep track of which point’s the old point and which point’s the new point here! The old point (4, 0) and the new point (14, 0) correspond to each other, but the *new point* (4, 0) and the *old point* (14, 0) do not!)

Now, here’s a funny little question: what new point does the point in the *center* of the old graph, (0, 0), correspond to?

…

Intuitively, it should correspond to the point in the center of the new graph, (10, 0). But so far, we’ve only talked about points **on** the old graph corresponding to points **on** the new graph, and (0, 0) isn’t on the old graph! Maybe we need to adjust our understanding of what it means to transform a graph?

It’s not just the center of the old graph, C₀ = (0, 0), that seems to correspond to some new point — in this case, C₁ = (10, 0). The point D₀ = (2, 0), located halfway between C₀ and A₀, also seems like it should correspond to a new point: the point D₁ = (12, 0), which is, appropriately enough, located halfway between C₁ and A₁. Perhaps **every** point, *regardless* of whether or not it’s on the old graph, has a corresponding new point that you get by moving the original point 10 units to the right.

What’s more, the old points that are *not* on the old graph seem to correspond to new points that are *not* on the *new* graph. For example, C₀ and D₀ are not on the old graph, and their corresponding new points C₁ and D₁ are not on the new graph. If you think about it, it *has* to be this way. Every point on the new graph comes from a corresponding point on the old graph. There aren’t any left that could come from — correspond to — an old point *off* the old graph. So, since old points *off* the old graph can’t correspond to new points *on* the new graph, that means they have to correspond to new points *off* the new graph.

This brings us to the perspective on function transformations that we’ll be using for the rest of this post. To transform a graph, we take each and every point in the coordinate plane, and transform it into a corresponding new point. If the old point is on the old graph, then the corresponding new point is on the new graph. If the old point is *not* on the old graph, then the corresponding new point isn’t on the new graph, either. To put it another way:

*A new point is on the new graph if and only if the corresponding old point is on the old graph.*

Either both points are *on* their respective graphs, or both points are *off* their respective graphs.

All of the reasoning we just went through works for all sufficiently “nice” transformations, not just our example transformation.3 Fortunately for us, the three most commonly taught function transformations — translation, scaling, and reflection — are all “sufficiently nice”, as are all the transformations you get by combining them. So the stuff in this post can be applied to *most* (if not all) of the function transformations that a math student would have to deal with.

Now, let’s use this approach to function transformations to solve some math problems!

### Old graph & transformation → new graph

Let’s say we have a graph with equation y = |x| (blue), and we transform it by moving it 5 units to the right, vertically scaling it by a factor of 2, and reflecting it across the x-axis (orange). The old point (x₀, y₀) becomes the new point (x₁, y₁) = (x₀ + 5, -2y₀). Now, what is the equation of the resulting new graph?

Whatever it is, we should be able to plug x₁ and y₁ into it. If this makes the equation true, then that should mean (x₁, y₁) is on the new graph; otherwise, it should mean (x₁, y₁) *isn’t* on the new graph. Or to put it another way, plugging x₁ and y₁ into the equation of the new graph should make the equation true *if and only if* (x₁, y₁) is on the new graph.

Well, when *is* (x₁, y₁) on the new graph? In our discussion earlier, we came up with the following principle:

*A new point is on the new graph if and only if the corresponding old point is on the old graph.*

So (x₁, y₁) is on the new graph if and only if (x₀, y₀) is on the old graph. And when we plug x₀ and y₀ into the equation of the old graph y = |x|, we learn that (x₀, y₀) is on the old graph if and only if y₀ = |x₀|. Chaining the two if-and-only-ifs together, (x₁, y₁) is on the new graph if and only if y₀ = |x₀|.

That’s a nice start, but we want something that we can plug x₁ and y₁ into. Fortunately, we already know a relationship between (x₀, y₀) and (x₁, y₁): (x₁, y₁) = (x₀ + 5, -2y₀), which means x₁ = x₀ + 5 and y₁ = -2y₀.

We can rearrange these equations into x₀ = x₁ - 5 and y₀ = -y₁/2, which we can substitute back into y₀ = |x₀| to obtain a new equation: -y₁/2 = |x₁ - 5|.

This equation is logically equivalent to the original equation y₀ = |x₀|; it’s just in terms of x₁ and y₁ instead of x₀ and y₀. It’s really the same equation, just from a new, more helpful perspective.

So (x₁, y₁) is on the new graph if and only if (x₀, y₀) is on the old graph, which happens if and only if y₀ = |x₀|, which happens if and only if -y₁/2 = |x₁ - 5|. Or, (x₁, y₁) is on the new graph if and only if -y₁/2 = |x₁ - 5|. Which means we can use -y/2 = |x - 5| for the equation of the new graph! If we substitute in x₁ and y₁, then the equation becomes -y₁/2 = |x₁ - 5|, which, as previously established, is true if and only if (x₁, y₁) is on the new graph — exactly what we wanted!

And indeed, -y/2 = |x - 5| *is* the equation I used for the new graph (orange) in the image!

### Old graph & new graph → transformation

Now, suppose we have an old graph with equation x² + y² = 9 (a circle with radius 3 centered at the origin) that is transformed into a new graph with equation (3x)² + (y + 1)² = 9. What could be the transformation here?4

Recall our principle again:

*A new point is on the new graph if and only if the corresponding old point is on the old graph.*

So we just need to find some relationship between an old point (x₀, y₀) and its corresponding new point (x₁, y₁) such that (x₀, y₀) is on the old graph if and only if (x₁, y₁) is on the new graph.

Well, plugging the points into the equations of their respective graphs, (x₀, y₀) is on the old graph if and only if x₀² + y₀² = 9, and (x₁, y₁) is on the new graph if and only if (3x₁)² + (y₁ + 1)² = 9. So we just have to find a relationship between (x₀, y₀) and (x₁, y₁) such that x₀² + y₀² = 9 if and only if (3x₁)² + (y₁ + 1)² = 9.

One very easy way to make that happen is by setting x₀ = 3x₁ and y₀ = y₁ + 1. Suddenly, the two equations are now just the same equation from two different perspectives. If one is true, then the other must automatically be true. It’s like the reverse of the substitution step we did on the last problem.

And if x₀ = 3x₁ and y₀ = y₁ + 1, that means x₁ = x₀/3 and y₁ = y₀ - 1, which means the transformation consists of horizontally scaling the graph by a factor of 1/3 and moving it 1 unit down. And again, if x₀ = 3x₁ and y₀ = y₁ + 1, then x₀² + y₀² = 9 if and only if (3x₁)² + (y₁ + 1)² = 9, which means (x₀, y₀) is on the old graph if and only if (x₁, y₁) is on the new graph, so this transformation satisfies our principle of function transformations.

And when you actually graph the two equations… yeah, the new graph (orange) **is** just the old graph (blue), horizontally scaled by a factor of 1/3 and moved 1 unit down!

And that’s my approach to function transformations. Every point in the coordinate plane gets transformed into a new point; we determine whether a new point is on the new graph by looking at whether the corresponding old point is on the old graph. When you look at things this way, the equation of the new graph is really just the equation of the old graph from a new perspective.

Is this the best approach to function transformations? Not necessarily. Different people think in different ways, and there are more concise explanations out there that still do a reasonable job explaining why y = (x - 3)² is to the *right* of y = x².5 Even then, there’s still value in exploring a topic from multiple different angles, and I hope this post was able to provide an insightful new perspective on function transformations.

Conceptions of function translation: Obstacles, intuitions, and rerouting, section 6.3. Translating a parabola

And by “sufficiently nice” I mean bijections / one-to-one correspondences. Don’t worry about it too much if you don’t know what those are. Actually, don’t worry about it too much *even if* you know what those are. You can just modify a few bits of reasoning to get something similar to work for not-so-“nice” transformations, anyway (though that’s outside the scope of this post).

Yeah, these aren’t graphs of functions, even though the title of this post says “Function Transformations”, I know. But that just demonstrates that the approach I’m showing here works for other kinds of graphs, too. You could also use it for things like inequalities.

This Mathematics Educators Stack Exchange question, in particular, has some nice answers.