Contents

Every function composition problem hinges on one decision: which function is inside the parentheses. Get that right, and the rest is substitution and algebra. Get it wrong, and you’ll spend two minutes calculating f(g(x)) when they asked for g(f(x)), and your answer won’t match any of the choices because you worked the entire problem backwards.
The notation f(g(x)) tells you exactly what to do—g is inside, so you plug g(x) into f(x)—but when both functions are sitting in front of you and you’re moving fast, that clarity disappears. You’re looking at f(x) = 3x² – x + 10 and g(x) = 1 – 20x, and your brain defaults to “plug the first into the second” without checking which one the notation actually specified.
That same breakdown happens with domain. You see a rational function, you know you need to factor the denominator and find restrictions, but you factor the denominator and then you’re not sure if you need to check whether those factors cancel with anything in the numerator or if you just list the restrictions and move on.
Or they give you an equation and ask if it’s a function. You solve for y and get two outputs. But you hesitate because both values are real numbers, and you’re not certain whether “two mathematically valid solutions” actually violates the function definition under exam conditions.
These aren’t theory problems. You know what functions are. You know what domain means. You know composition is substitution. The breakdown is in execution—keeping substitution order straight, factoring completely without missing restrictions, and handling negatives during evaluation without flipping signs.
This guide walks you through a systematic approach that works on any function problem the FE throws at you—from verifying whether equations satisfy function criteria to finding domain restrictions to composing functions in the correct order.
You’ll learn the exact test for “one y per x,” how to factor and verify domain without missing cancelled factors, and how to keep f(g(x)) and g(f(x)) straight when both are options.
Before we walk through it step by step, watch this short video.
It shows you the full process from testing function criteria to evaluating at specific values to composing functions without reversing the order. You’ll see exactly where substitution order gets flipped, where domain restrictions get missed because factors cancel, and how to verify your setup matches what the notation asked for before you start calculating.
What You’ll Learn in This Guide
Here’s what we’re covering and what you’ll walk away knowing.
Core concept: A function maps each x-value to exactly one y-value—if solving for y gives ±, it’s not a function.
Key relationships:
- Function test: y = ±√(…) means two outputs → not a function
- Domain: factor denominators completely, exclude values that make denominator = 0 (after cancellations)
- Composition: f(g(x)) means plug g(x) into f(x), not the reverse
- Evaluation: f(a) means replace every x with a, then simplify carefully
Decision rules:
- If you can isolate y without ±, it’s a function
- Domain excludes x-values that create division by zero or negative square roots (that don’t cancel)
- Composition order: inside function gets substituted into outside function
- Always factor denominators completely before listing restrictions
What you’ll be able to do: Test whether an equation is a function using the ± rule, find domain by factoring and checking for cancellations, evaluate f(a) without sign errors, and compose f(g(x)) in the correct order every time.
What Is a Function?

A function is a relationship between inputs and outputs where each input produces exactly one output. You plug in an x, you get out exactly one y. Not two possible y-values. Not zero. Exactly one.
In practical terms, functions describe predictable behavior. If you’re calculating load on a beam, the deflection at a given point is a function of the applied force—one input, one output. If you’re modeling circuit behavior, voltage across a resistor is a function of current—plug in the current, get one voltage value back.
Think of it like a vending machine. You press B4, you get one specific snack. You don’t get two different snacks. You don’t get nothing. You get exactly what B4 maps to. That’s a function. If pressing B4 could give you either chips or a candy bar depending on the day, that’s not a function anymore.
On the FE Exam, functions show up when they give you f(x) notation and ask you to evaluate it at a specific value, when they give you an equation and ask whether it satisfies function criteria, or when they ask you to find domain restrictions or compose two functions. The problems test whether you can verify the one-to-one relationship, handle the notation correctly, and execute operations in the right order.
The key is recognizing that the definition—one y per x—drives everything. If you can hold that rule steady while working through the algebra, function problems become systematic rather than uncertain.
What You Need to Know About Functions

Let’s start with the baseline: an equation is a function if, for every x-value in its domain, there is exactly one corresponding y-value. That’s the whole test. One x in, one y out. If you can plug in any x and solve for y without getting two possible answers, it’s a function.
Look at y = x² + 1. Is this a function? Yes, because no matter what x you choose, there’s only one way to square it and add 1. Plug in x = 3, you get y = 10. Plug in x = -2, you get y = 5. One input, one output, every time.
Now look at y² = x + 1. This is not a function. Here’s why: solve for y and you get y = ±√(x + 1). That’s two possible y-values for every x. Plug in x = 3, and you get y = ±2. Two outputs breaks the rule.
The key is in how the variables are arranged. If y is isolated without an exponent or absolute value that creates multiple solutions, you’re usually looking at a function. If solving for y requires taking a square root, and that gives you plus-or-minus, it’s not a function.
Function notation is just a cleaner way to write y. Instead of y = 2x² – 5x + 3, we write f(x) = 2x² – 5x + 3. The notation f(x) isn’t f times x—it’s a label that tells you “this is the output when you plug x into this function.” You can call it f(x), g(x), h(x), whatever. The letter doesn’t matter. The relationship does.
Function notation makes evaluation clean. If f(x) = 2x² – 5x + 3 and you want to find f(-3), you replace every x with -3 and calculate: f(-3) = 2(-3)² – 5(-3) + 3 = 18 + 15 + 3 = 36. You’re just substituting and simplifying.
Domain is the set of all x-values you’re allowed to plug into a function without breaking math. You can’t divide by zero. You can’t take the square root of a negative number (in the real number system). You can’t take the logarithm of zero or a negative number. Domain restrictions come from identifying what values of x would cause any of those violations, then excluding them.
For a rational function, the domain excludes any x-value that makes the denominator zero. Factor the denominator completely. Set each factor to zero and solve for x. Those are your restrictions—but only if they don’t cancel with factors in the numerator.
Range is the set of all possible y-values the function can produce. For most FE problems, you won’t need to find range formally—you’ll mostly work with domain and evaluation.
Function composition is when you plug one function into another. If you have f(x) and g(x), then f(g(x)) means take g(x) and substitute it everywhere you see x in f(x). You work inside-out: evaluate the inside function first, then plug that result into the outside function.
Order matters. f(g(x)) is not the same as g(f(x)). Swapping the order usually gives you a completely different answer. If f(x) = 3x² – x + 10 and g(x) = 1 – 20x, then f(g(x)) means you plug (1 – 20x) into f(x) in place of every x. That’s different from plugging f(x) into g(x).
The structure is straightforward: test for one y per x, factor denominators to find domain, substitute carefully when evaluating, and always work inside-out when composing. Keep those rules steady, and function problems become a systematic check rather than a guessing game.
A Clean Process for Functions

When you see f(g(x)) written on the page, you know composition is involved. The question isn’t whether to substitute—it’s which function goes where. That split second of “is it g into f, or f into g?” is where the setup either locks in cleanly or falls apart. Same thing happens with domain: you factor a denominator, get two factors, and then you’re not sure if both restrict the domain or if one of them cancels. The uncertainty isn’t about understanding functions conceptually—it’s about executing the notation and the algebra in the right order without missing a step.
Students either rush the substitution, flip the order, and end up with algebra that doesn’t match any answer choice, or they freeze trying to verify every factor and cancellation before moving forward, burning time on a problem that should take 90 seconds. The workflow below removes that hesitation. It tells you exactly what to identify first, exactly which function goes inside which, exactly how to verify domain restrictions after factoring, and exactly where to check your setup before committing to the calculation.
This process works the same way on every function problem—whether you’re composing, finding domain, evaluating at a point, or verifying function criteria. Once it’s locked in, you’ll move through these problems without second-guessing the order or the setup.
Let’s lay out the steps.
Step 1: Read the Problem and Identify What You’re Being Asked to Find
The first thing you need to do is read through the problem statement slowly and figure out what type of function problem you’re dealing with. Are they asking you to verify if an equation is a function? Find the domain? Evaluate f(a) for some specific value? Compose two functions?
Write down what you’re solving for before you do anything else. If it’s a function verification problem, note that you need to check the “one y per x” rule. If it’s domain, note that you need to factor and find restrictions. If it’s composition, note which function goes inside which based on the notation they give you.
Function problems show up with different wording. They might say “find the domain of f(x),” or “evaluate g(-2),” or “determine f(g(x)) given f(x) and g(x).” Your job in this step is to translate their wording into the specific operation you need to perform, write it down clearly, and keep moving.
Step 2: Execute the Required Operation Based on Problem Type
Now that you know what you’re solving for, execute the specific operation the problem requires.
If you’re verifying whether an equation is a function: Solve for y. If you can isolate y and there’s no ± or absolute value that gives multiple solutions, it’s a function. If solving for y gives you y = ±√(…) or any other form that produces two outputs for one input, it’s not a function.
If you’re finding domain: Identify anything that would break the function. Look for denominators that could equal zero, square roots with expressions inside, or logarithms. Factor denominators completely, set each factor equal to zero, and solve for x. Those x-values are your restrictions. State the domain as “all real numbers except [list the restrictions].”
If you’re evaluating f(a) for some value a: Substitute a into the function everywhere you see x. Then simplify the arithmetic carefully, keeping track of negative signs when squaring or distributing.
If you’re composing f(g(x)): Work inside-out. Take the inside function g(x), and substitute it into every x in f(x). Then simplify the result algebraically. If the problem asks for g(f(x)), reverse the order—plug f(x) into g(x). Don’t assume the order based on what looks simpler. Follow the notation exactly.
Write down your setup in symbols first before substituting numbers or expressions. This keeps the structure visible and prevents you from losing track of operations mid-calculation.
Step 3: Simplify and Verify Your Final Answer
Now you just finish the algebra. Combine like terms, factor if needed, and simplify to the cleanest form possible. If you’re finding domain, list the excluded x-values clearly. If you’re evaluating or composing, reduce to a single expression or numerical answer.
Once you have your result, verify it makes sense. If you found domain restrictions, check that setting those x-values into the denominator actually gives zero. If you evaluated f(a), plug your value back in mentally to confirm the signs work out. If you composed functions, check that the resulting expression has the right degree and the right leading coefficient based on what you started with.
Then compare your answer to the choices. If nothing matches, check your substitution order (for composition problems) or re-check your factoring (for domain problems). Most mismatches come from flipping composition order or missing a factor in the denominator.
Example Problem: Functions

The workflow handles any function problem, whether it’s verifying criteria, finding domain, evaluating at a point, or composing two functions. The setup is the same: identify what you’re solving for, execute the operation systematically, and verify before finalizing. Right now, you’re going to work through a composition problem so you can see exactly where order matters and where sign errors hide during expansion.
With that laid out, let’s put these steps into practice.
This problem states:
A) 1200x² + 100x + 12
B) 1200x² – 100x + 12
C) -60x² + 20x – 199
D) 1200x² – 100x – 8
Solution: Functions

When you see f(g(x)), the notation is telling you exactly what to do: g(x) is inside the parentheses, which means you take the entire expression for g(x) and substitute it into every place you see x in f(x). The first decision point is making sure you don’t reverse this—plugging f(x) into g(x) instead—because that gives you g(f(x)), which is a completely different problem. The answer choices will include results from both orders, so if you flip them, you’ll calculate correctly but select the wrong answer.
Once you’ve confirmed the order, the next decision is how to handle the substitution and expansion. You’re going to be squaring (1 – 20x), and that’s where sign errors typically appear—either dropping the middle term when expanding, or flipping a sign when distributing the negative in the second term of f(x). The workflow keeps this clean by forcing you to write the substitution first, expand term by term, then combine. No mental shortcuts.
Let’s walk through it step by step.
Step 1: Read the Problem and Identify What You’re Being Asked to Find
The first thing we need to do is read through the problem statement and identify what we’re working with. We have two functions: f(x) = 3x² – x + 10 and g(x) = 1 – 20x. The problem asks us to evaluate f(g(x)), which means we need to compose these functions by plugging g(x) into f(x).
Write this down clearly:
f(x) = 3x² – x + 10
g(x) = 1 – 20x
Find: f(g(x))
We know from the notation that g(x) is the inside function, so we’ll substitute (1 – 20x) everywhere we see x in f(x).
Step 2: Substitute g(x) Into f(x) and Set Up the Expression
Now we need to take g(x) = 1 – 20x and plug it into f(x) in place of every x.
Start with f(x) = 3x² – x + 10
Substitute x = (1 – 20x):
f(g(x)) = 3(1 – 20x)² – (1 – 20x) + 10
Before we expand, let’s make sure the substitution is set up correctly. Every x in f(x) has been replaced with (1 – 20x). The first term has (1 – 20x)², the second term has -(1 – 20x), and the constant stays as +10. This is correct.
Step 3: Expand and Simplify the Expression
Let’s expand term by term. Start with the first term:
3(1 – 20x)²
Expand (1 – 20x)²:
(1 – 20x)² = 1 – 40x + 400x²
Multiply by 3:
3(1 – 40x + 400x²) = 3 – 120x + 1200x²
Now handle the second term:
-(1 – 20x) = -1 + 20x
Bring it all together:
f(g(x)) = (3 – 120x + 1200x²) + (-1 + 20x) + 10
Combine like terms:
x² terms: 1200x²
x terms: -120x + 20x = -100x
Constants: 3 – 1 + 10 = 12
f(g(x)) = 1200x² – 100x + 12
So the final answer to this problem is B) 1200x² – 100x + 12.
This tells us that when we compose f and g in this order, the resulting quadratic has a leading coefficient of 1200, a linear term of -100x, and a constant of 12. The key was substituting in the correct order, expanding (1 – 20x)² carefully without dropping the middle term, and combining like terms without flipping signs.
Common Mistakes to Avoid on Functions Problems

Function composition breaks at the exact moment you see f(g(x)) and plug f(x) into g(x) instead of g(x) into f(x). You’re looking at both functions simultaneously, the notation says f(g(x)), and your brain defaults to “plug the first into the second” without checking which one is actually inside the parentheses.
You calculate for two minutes, your algebra is perfect, and your answer matches choice C—except the problem asked for f(g(x)) and you calculated g(f(x)). That reversal costs you the point even though your execution was flawless.
Domain problems break when you factor the denominator, find two restrictions, and list both without checking if one of them cancels with the numerator. You write “all real numbers except x = 3 and x = -2” when x = 3 actually cancels out and doesn’t restrict the domain at all. The answer choices reflect both scenarios, and you pick the wrong one because you didn’t verify cancellations.
Evaluation problems break when you’re substituting f(-3) and you write 3(-3)² as 3(-9) = -27 instead of 3(9) = 27 because you squared the entire -3 instead of squaring 3 and keeping the sign separate. Or you distribute -(1 – 20x) and write -1 – 20x instead of -1 + 20x because you forgot that subtracting a negative flips the sign.
These aren’t concept failures. They’re execution errors that happen when the structure isn’t locked in yet. Here’s what’s actually breaking.
Mistake 1: Flipping Composition Order
This happens when you see f(g(x)) and plug f(x) into g(x) instead of g(x) into f(x). The notation tells you exactly what to do—f(g(x)) means g is inside, so g(x) gets substituted into f(x)—but under pressure, students reverse it and end up with completely different algebra that doesn’t match any answer choice.
You’re looking at f(x) = 3x² – x + 10 and g(x) = 1 – 20x on the same page. The problem says “find f(g(x)),” and you see f first, so you plug f into g. Or you remember that order matters but you can’t recall which direction to go, so you guess.
What it does: Swapping f and g changes the entire problem. f(g(x)) gives you 1200x² – 100x + 12, but g(f(x)) gives you -60x² + 20x – 199. Those are completely different answers. If you flip the order, none of your work matches the intended answer choice, and you’re stuck re-doing the entire composition without knowing where the error started.
Mistake 2: Missing Domain Restrictions Because Factors Cancel
This happens when you’re finding domain for a rational function and you factor the denominator completely, but you forget to check if any of those factors also appear in the numerator. You list restrictions that actually cancel out and shouldn’t be excluded, or you forget to simplify first and end up over-restricting the domain.
You see a rational function, you factor the denominator, and you immediately set each factor to zero without checking the numerator. Or you factor both numerator and denominator but you don’t cancel common factors before determining restrictions, so you list x-values that don’t actually break the function.
What it does: If you list a restriction that cancels, you’re excluding x-values that are actually in the domain. The FE will include answer choices that reflect both the canceled and non-canceled versions, and you’ll pick the wrong one. Or if you miss a factor entirely, you’ll state an incomplete domain and select an answer that doesn’t account for all restrictions.
Mistake 3: Sign Errors When Expanding (1 – 20x)²
This happens during composition when you’re expanding (1 – 20x)² and you write 1 – 400x² or 1 + 40x + 400x² because you’re skipping the middle term or flipping signs mentally. You’re moving fast, trying to expand everything in your head, and you lose track of whether terms are positive or negative.
You see 3(1 – 20x)² and you think “1 squared is 1, and 20x squared is 400x², so it’s 3(1 – 400x²).” You skip the middle term entirely because you’re treating it like (a – b)² = a² – b² instead of (a – b)² = a² – 2ab + b². Or you expand it correctly but then multiply by 3 and drop a sign.
What it does: Missing the middle term means you’re off by -120x after multiplying by 3. That error propagates through the rest of the problem—when you combine like terms, your linear coefficient will be wrong, and your final answer won’t match any of the choices. You’ll end up re-doing the entire expansion without knowing where the sign flipped.
Mistake 4: Distributing Negatives Incorrectly in -(1 – 20x)
This happens when you’re working through the second term of f(g(x)) = 3(1 – 20x)² – (1 – 20x) + 10, and you distribute the negative sign as -(1 – 20x) = -1 – 20x instead of -1 + 20x. You’re moving quickly, you see the negative outside the parentheses, and you apply it to the first term but forget that subtracting a negative flips the sign.
You write -(1 – 20x) and think “negative times 1 is -1, negative times -20x is… -20x” because you’re treating the subtraction like multiplication without flipping the sign on the second term. Or you know the rule but you’re moving fast and you write -20x out of habit.
What it does: Flipping the sign on the linear term means when you combine like terms, you’ll get -120x – 20x = -140x instead of -120x + 20x = -100x. Your final answer will have the wrong linear coefficient, and you’ll select choice A or D instead of B. The error is subtle enough that you won’t catch it unless you go back and re-check every distribution step.
Mistake 5: Not Verifying Function Criteria with the ± Test
This happens when you’re asked whether an equation is a function, and you look at an equation with x and y and assume it’s a function without actually solving for y and checking if you get multiple outputs. Or you solve for y, see y = ±√(…), and you’re not sure if that disqualifies it because both values are mathematically valid.
You see an equation like y² = x + 1 and think “it has one x and one y, so it’s probably a function.” You don’t solve for y. Or you solve and get y = ±√(x + 1), but you hesitate because ± gives you two real numbers, and you’re not certain whether that violates the function rule under exam conditions, so you guess.
What it does: You select “yes, it’s a function” when the answer is “no, it’s not,” or vice versa. This is a definition-based problem—one y for every x—so if you don’t apply the test systematically, you’re relying on instinct. The FE will include both “yes” and “no” as answer choices, and without the ± verification, you’re guessing.
Quick Checks for Functions Problems

You’ve got the workflow now: identify the operation, substitute or factor systematically, and verify before finalizing. You’ve worked through a composition problem where you saw exactly where order matters and where signs hide during expansion. These checkpoints are what keep you from plugging f into g when the notation says g into f, or from listing domain restrictions without checking if factors cancel, or from expanding (1 – 20x)² and dropping the middle term because you’re moving fast and trying to do it mentally.
- Composition notation is literal—follow it exactly: f(g(x)) means plug g(x) into f(x), not the other way around. Before substituting anything, circle g(x) and label it “inside function.” Take g(x) = 1 – 20x and substitute that entire expression into every x in f(x). Write it as f((1 – 20x)) before expanding. If you see g(f(x)), circle f(x) and substitute f(x) = 3x² – x + 10 into g(x). Write down the substitution order explicitly, and don’t rely on memory to keep it straight.
- Factor denominators completely, then check for cancellations before listing restrictions: When finding domain for rational functions, factor both numerator and denominator all the way down. Then cancel any common factors. After canceling, set the remaining denominator factors to zero and solve for x. Only factors that stay in the denominator after simplification restrict the domain. If a factor cancels, it does not restrict the domain.
- Expand (1 – 20x)² as (1 – 20x)(1 – 20x) and FOIL explicitly: When composing functions and you need to square a binomial like (1 – 20x), write it as (1 – 20x)(1 – 20x) and FOIL term by term on paper: 1 – 20x – 20x + 400x² = 1 – 40x + 400x². Don’t skip the middle term mentally. The middle term is where sign errors hide. Show the expansion completely before multiplying by any coefficient outside the parentheses.
- Distribute negatives explicitly: -(1 – 20x) = -1 + 20x: When you see a negative sign in front of parentheses, like -(1 – 20x), rewrite it as -1(1 – 20x) and distribute: -1 × 1 = -1, and -1 × (-20x) = +20x. Subtracting a negative flips the sign. Write it out as -1 + 20x before combining with other terms. Don’t assume the signs stay negative.
- Use the ± test to verify function criteria: If the problem asks whether an equation is a function, solve for y. If isolating y gives you y = ±√(…), that’s two outputs for one x-value, which means it’s not a function. If you can isolate y cleanly with no ±, it is a function. Write the solution for y explicitly, check for ±, and apply the rule directly.
- Show substitution before simplifying in composition problems: When composing f(g(x)), write f(x) with every x replaced by (g(x)) in parentheses before you expand or combine anything. For f(x) = 3x² – x + 10 and g(x) = 1 – 20x, write f(g(x)) = 3(1 – 20x)² – (1 – 20x) + 10 first. Then expand term by term. Showing the substitution structure keeps you from dropping terms or mixing up operations mid-calculation.
You know how to compose functions in the correct order now, how to find domain by factoring and checking cancellations, and how to expand and distribute without flipping signs. These checkpoints protect you from reversing operations, missing restrictions, or losing terms when the algebra stacks up and you’re moving fast.
Final Thoughts | Functions

The difference between students who secure these points and students who miss them isn’t conceptual understanding. You already know what a function is. You know composition means substitution. You know domain means “values that don’t break the function.” The separation happens in execution: can you look at f(g(x)) and immediately know g goes inside f without hesitation? Can you expand (1 – 20x)² and write 1 – 40x + 400x² without dropping the middle term? Can you factor a denominator, check for cancellations, and list only the restrictions that actually matter?
That’s not memory. That’s structure. And structure is what protects points when you’re 90 minutes into the exam and you’re holding two functions wondering which one is inside. The workflow removes the guesswork. It tells you which function to circle, which factors to cancel, where to write the substitution before expanding, and where to verify signs before combining terms. When the process is locked in, these problems become two-minute executions instead of four-minute recalculation cycles where you’re not sure which step broke.
If you run this workflow on five composition problems, the order becomes automatic. You’ll see f(g(x)) and know immediately that g is inside without thinking about it. You’ll factor denominators and check for cancellations before listing restrictions. You’ll expand squared binomials on paper and catch middle terms before they disappear. The workflow turns hesitation into routine, and routine is what holds up under pressure when the notation starts to blur and you need the point.
Want more practice? Browse hundreds of FE problems and guides here.
Here’s what actually separates passing the FE from studying for another attempt: it’s not whether you understand the concepts. You understand functions. You know what domain means. You’ve seen composition before.
It’s whether you can execute cleanly when you’re holding f(g(x)) and g(f(x)) side by side and you’ve got 90 seconds to pick the right order and finish the algebra without flipping a sign.
That confidence doesn’t come from doing more random practice problems. It comes from having a process you trust—one that tells you which function is inside, where to check for cancellations, and how to expand without losing terms—so you’re not second-guessing every step while the clock runs.
Prepineer gives you that process: a clear roadmap that targets what the FE actually tests, practice problems that build systematic execution instead of scattered knowledge, and real coaching when you’re stuck on why your setup didn’t work. Start your free 7-day trial and see what it feels like to walk into problems knowing your process works—not hoping it does.








