You check whether a value is a solution by substituting it for every variable in the equation, simplifying both sides independently, and confirming the two resulting numbers are equal. If they match, the value satisfies the equation. If they differ, it does not. This single procedure works for linear equations, quadratics, radical equations, rational expressions, and systems, though each type adds its own traps around domain restrictions, extraneous roots, and floating-point precision. The sections below explain the mechanism, quantify the failure modes, and give you a repeatable verification routine.

The substitution mechanism, step by step

An equation is a claim that two expressions have the same value. A solution is an input that makes the claim true. Substitution tests the claim directly: you replace each variable with the candidate value, evaluate the left side and the right side as separate arithmetic expressions, and compare the outputs.

The order of operations governs each side. Exponents and roots first, then multiplication and division, then addition and subtraction, working left to right within each tier. This matters because a candidate that fails under correct order of operations may appear to pass if you simplify carelessly. For example, testing x = 2 in 3x² requires squaring first (4) then multiplying (12), not multiplying first (36).

Keep the two sides separate until the final comparison. Collapsing them early hides sign errors. Write the left side's value, then the right side's value, then the equality or inequality symbol between them.

For equations with one variable, one candidate produces one test. For two variables, you need an ordered pair, and both coordinates enter the substitution simultaneously. For systems, the pair must satisfy every equation in the system at once, a stricter condition than satisfying any single one.

A useful habit: substitute using parentheses around the candidate value. Writing 3(2)² instead of 32² prevents the classic concatenation error. This is one level deeper than most guides go, and it eliminates a large share of hand-calculation mistakes.

What the numbers say about failure rates

Verification errors cluster in predictable places. Sign errors when substituting negatives account for a large fraction of mistakes in hand-checking; writing (−3)² = 9 rather than −9 is the single most common slip. Order-of-operations errors rank second. Domain violations, where a candidate makes a denominator zero or a radicand negative, rank third and are the most consequential because they can produce a value that looks like a solution but is not.

Extraneous solutions are the professional caveat most thin explainers omit. Squaring both sides of a radical equation, or multiplying through by an expression containing the variable, can introduce candidates that satisfy the transformed equation but not the original. A candidate that passes the squared equation may fail the original by a sign. Always verify in the original equation, never in a manipulated form.

Floating-point arithmetic adds another layer. In computing, values are stored with finite precision, so an exact mathematical solution may evaluate to something like 0.30000000000000004 rather than 0.3. Comparing with a tolerance, often around 1e-9 for double precision, is standard practice. Exact equality testing in code is a known trap.

Consider a quadratic with solutions that are irrational, such as x² − 2 = 0. The candidates are ±√2, approximately ±1.41421356. Substituting the decimal approximation leaves a residual near 1e-8, not zero. The equation is satisfied exactly by the symbolic value but only approximately by the decimal. Knowing which you hold changes how you judge the result.

Edge cases that break naive checking

Division by zero is the first edge case. A candidate that makes any denominator zero is not in the domain, so it cannot be a solution regardless of what the simplified equation suggests. Check every denominator before substituting.

Even roots of negative numbers create a second edge case in the real numbers. A candidate producing a negative radicand under a square root fails in the real domain, though it may be valid in the complex domain. State which domain you are working in.

Absolute value equations branch. A candidate may satisfy one branch and not the other, so verifying requires checking against the original absolute value expression, not a case-split version.

Inequalities are not equations. A value is a solution to an inequality if the comparison holds with the correct direction, and the endpoint behavior differs: a strict inequality excludes the boundary value, a non-strict one includes it. Testing the boundary value explicitly is the fastest way to catch this.

Systems with dependent equations can have infinitely many solutions, so a single candidate test confirms membership but does not establish uniqueness. Conversely, an inconsistent system has none, and every candidate will fail at least one equation.

Piecewise-defined expressions require you to confirm the candidate falls in the piece's interval before evaluating. A candidate outside the interval is not governed by that piece at all.

Misconceptions worth correcting

The most persistent misconception is that a value passing a simplified equation is automatically a solution. Simplification can change the solution set when it involves multiplying by variable expressions or squaring. The original equation is the only authority.

A second misconception treats approximate equality as failure. In measurement contexts, a residual within the instrument's precision is a pass, not a fail. The tolerance should match the precision of the inputs.

A third misconception assumes one passing candidate proves a unique solution. It proves membership, nothing more. Quadratics commonly have two solutions, and checking only one leaves the other unverified.

A fourth misconception confuses evaluating an expression with solving an equation. Substitution tests a candidate; it does not generate one. The two tasks use different methods and different error profiles.

A counterintuitive detail: a candidate can satisfy an equation numerically at the precision you display while failing at higher precision. Rounding can mask a small but real discrepancy. When precision matters, evaluate at more digits than you report.

Practical verification routine

Use this sequence every time, and the error rate drops sharply.

Identify every variable and every domain restriction before substituting anything. Substitute using parentheses around each candidate value. Evaluate the left side and right side separately, following order of operations. Compare in the original equation, not a transformed one. For computed values, compare within a stated tolerance rather than by exact equality. Re-test any candidate that emerged from squaring or clearing denominators.

A comparison of verification contexts clarifies where each habit applies.

Context Equality test Tolerance Main trap
Hand algebra, exact values Exact None Sign errors with negatives
Hand algebra, irrational values Symbolic None Decimal rounding masking residuals
Spreadsheet check Approximate About 1e-9 relative Display rounding hides mismatch
Measurement data Approximate Instrument precision Treating noise as failure
Radical equations Exact in original None Extraneous roots from squaring
Rational equations Exact, domain-checked None Division by zero
Systems of equations All equations at once Context-dependent Checking only one equation

A timeline of a typical verification, from candidate to verdict, shows the sequence in time.

Stage Action Typical duration Failure risk
Domain scan List restrictions Under a minute Missing a denominator
Substitution Insert with parentheses Seconds Concatenation error
Left-side evaluation Apply order of operations Seconds Exponent sign
Right-side evaluation Independent arithmetic Seconds Carrying an error across
Comparison Test equality or tolerance Seconds Wrong tolerance choice
Original-equation recheck Re-test transformed candidates Under a minute Skipping this step

Thresholds need reconciling explicitly. A hand calculation with exact integers should use exact equality; there is no tolerance because there is no rounding. A spreadsheet or program should use a relative tolerance near 1e-9 for double-precision work, tightening only when inputs are exact. A measurement context should set tolerance from the instrument's stated precision, not from an arbitrary default. These three thresholds serve different purposes and should not be borrowed across contexts. Mixing them produces either false failures on exact work or false passes on approximate work.

Red-flag warnings to watch for:

A candidate that makes any denominator zero is invalid, no matter what the simplified equation says. A candidate obtained by squaring both sides must be verified in the original equation. Exact floating-point equality comparisons are unreliable across most programming environments. A single passing candidate does not establish that the solution is unique. Boundary values in inequalities require separate explicit testing.

Concrete steps for a clean check: write the original equation verbatim, list domain restrictions, substitute with parentheses, evaluate each side independently, compare in the original, and if the candidate came from a transformation, repeat the comparison there as well. If the residual exceeds your stated tolerance, the value is not a solution at that precision.

Limits of substitution testing

Substitution confirms or refutes a specific candidate. It cannot find solutions, prove uniqueness, or establish that no other solutions exist. Those require solving methods and, for uniqueness, structural arguments about the equation's degree or monotonicity.

Symbolic values and decimal approximations behave differently under testing. An exact symbolic candidate can be verified exactly; a decimal cannot, and the residual you observe reflects approximation, not error in the mathematics.

Domain matters as much as arithmetic. A value that satisfies the algebra but violates a domain restriction is not a solution in the intended number system. Always state the domain alongside the verdict.

Finally, computational verification inherits the limits of the machine. Finite precision, overflow, and underflow can all distort a comparison. When the stakes are high, verify symbolically or at extended precision, and treat the numerical result as corroboration rather than proof.