Eliminate[eqns,vars]
eliminates variables between a set of simultaneous equations.
Eliminate
Eliminate[eqns,vars]
eliminates variables between a set of simultaneous equations.
Details and Options
- Equations are given in the form lhs==rhs.
- Simultaneous equations can be combined either in a list or with &&.
- A single variable or a list of variables can be specified.
- Variables can be any expressions.
- Eliminate works primarily with linear and polynomial equations.
Examples
open all close allBasic Examples (2)
Scope (7)
Eliminate[2x + 3y + 4z == 1 && 9x + 8y + 7z == 2, z]A system of polynomial equations:
Eliminate[x ^ 2 + y ^ 2 + z ^ 2 == 1 && x - y + z == 2 && x ^ 3 - y ^ 2 == z + 1, z]Eliminate[x ^ 2 + y ^ 2 + z ^ 2 == 1 && x - y + z == 2 && x ^ 3 - y ^ 2 == z + 1, {y, z}]A system of equations involving radicals:
Eliminate[Sqrt[x] + Sqrt[y - 1] == 1 && 2x ^ (1 / 3) + 3 y ^ 2 == 2, y]A system of transcendental equations:
Eliminate[Sin[x + y] == 1 && Cos[x - y] == 2, y]A system of modular equations:
Eliminate[x ^ 2 + y ^ 2 + z ^ 2 == 1 && x - y + z == 2 && x ^ 3 - y ^ 2 == z + 1 && Modulus == 5, z]Find a modulus for which a system of equations has a solution and eliminate a variable:
Eliminate[y == 5x + 1 && 2x + 3y == 5 && x y == 7, y, Mode -> Modular]Options (5)
InverseFunctions (3)
By default, Eliminate uses inverse functions but prints warning messages:
Eliminate[f[x - y] == 0 && g[x + y] == 0, y]With InverseFunctions->True, Eliminate does not print inverse function messages:
Eliminate[f[x - y] == 0 && g[x + y] == 0, y, InverseFunctions -> True]Eliminate[Sin[x ^ 2 - y] == 1 && Cos[x - y ^ 2] == 2, y, InverseFunctions -> True]With InverseFunctions->False, Eliminate does not use inverse functions:
Eliminate[f[x - y] == 0 && g[x + y] == 0, y, InverseFunctions -> False]Eliminate[Sin[x ^ 2 - y] == 1 && Cos[x - y ^ 2] == 2, y, InverseFunctions -> False]Eliminating variables from algebraic equations does not require using inverse functions:
Eliminate[x ^ 2 + y ^ 2 + z ^ 2 == 1 && x - y + z == 2 && x ^ 3 - y ^ 2 == z + 1, z, InverseFunctions -> False]Mode (1)
WorkingPrecision (1)
By default, Eliminate computes with exact coefficients:
Eliminate[x ^ 2 + y ^ 2 + z ^ 2 == E && x - y + z == 2 && x ^ 3 - y ^ 2 == z + Pi, z]This performs the elimination using 20-digit approximate number coefficients:
Eliminate[x ^ 2 + y ^ 2 + z ^ 2 == E && x - y + z == 2 && x ^ 3 - y ^ 2 == z + Pi, z, WorkingPrecision -> 20]Applications (2)
Eliminate[{f == x ^ 5 + y ^ 5, a == x + y, b == x y}, {x, y}]Find a condition for two polynomials to have a common root:
f = a x ^ 3 + (a ^ 2 - 1)x ^ 2 + (2a - 3)x + 4;
g = (1 - a ^ 2)x ^ 4 - 2a x + 7a ^ 2 - 1;
Eliminate[f == 0 && g == 0, x]This solves the same problem using Resolve:
Resolve[Exists[x, f == 0 && g == 0]]The condition is equivalent to Resultant of the polynomials being zero:
Resultant[f, g, x]Properties & Relations (3)
Equations returned by Eliminate do not contain the elimination variables:
Eliminate[x ^ 2 + y ^ 2 + z ^ 2 == 1 && 2x - 3y + 5z == 7, z]Equations returned by Eliminate are implied by the input equations:
inp = x ^ 2 + y ^ 2 + z ^ 2 == 1 && x - y + z == 2 && x ^ 3 - y ^ 2 == z + 1;
out = Eliminate[x ^ 2 + y ^ 2 + z ^ 2 == 1 && x - y + z == 2 && x ^ 3 - y ^ 2 == z + 1, z]Use Resolve to check this property:
Resolve[ForAll[{x, y, z}, Implies[inp, out]]]Use Resolve to eliminate an existential quantifier:
eqns = x z == y && x ^ 2 + x ^ 2z ^ 2 == 1;
Resolve[Exists[z, eqns]]Eliminate gives the same set of equations, but does not give inequations:
Eliminate[eqns, z]Eliminate a variable using GroebnerBasis:
GroebnerBasis[eqns, {x, y}, {z}]Eliminate a variable from a pair of polynomials using Resultant:
Resultant[eqns[[1, 1]] - eqns[[1, 2]], eqns[[2, 1]] - eqns[[2, 2]], z]//FactorUse Reduce to eliminate an existential quantifier and solve the resulting system:
Reduce[Exists[z, eqns], {x, y}]Possible Issues (1)
When the input contains only equations, Eliminate returns only equations:
eqns = x z == y && x ^ 2 + x ^ 2z ^ 2 == 1The zero set of the result is the Zariski closure of the projection of the zero set of eqns:
Eliminate[eqns, z]Use Resolve to get a result with zero set equal to the projection of the zero set of eqns:
Resolve[Exists[z, eqns]]When the input contains inequations, Eliminate returns equations and inequations:
eqin = eqns && t ≠ 0The zero set of the result is equal to the projection of the zero set of eqin:
Eliminate[eqin, z]See Also
Related Guides
History
Introduced in 1988 (1.0)
Text
Wolfram Research (1988), Eliminate, Wolfram Language function, https://reference.wolfram.com/language/ref/Eliminate.html.
CMS
Wolfram Language. 1988. "Eliminate." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/Eliminate.html.
APA
Wolfram Language. (1988). Eliminate. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Eliminate.html
BibTeX
@misc{reference.wolfram_2026_eliminate, author="Wolfram Research", title="{Eliminate}", year="1988", howpublished="\url{https://reference.wolfram.com/language/ref/Eliminate.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_eliminate, organization={Wolfram Research}, title={Eliminate}, year={1988}, url={https://reference.wolfram.com/language/ref/Eliminate.html}, note=[Accessed: 13-June-2026]}