groebner

manipulate and solve systems of multivariate polynomial equations by computing the groebner basis

You are now following this Submission

Example: simplify the system of equations
{x^2+2xy^2=0, xy+2y^3=1}

>> groebner({'x^2+2*x*y^2','x*y+2*y^3-1'},'lex',{'x','y'})

returns {'y^3-0.5','x'}

Solve equations:

>> polynsolve({'x^2+2*x*y^2','x*y+2*y^3-1'},'',{'x','y'})

returns [0, -0.3969 + 0.6874i; 0, -0.3969 - 0.6874i; 0, 0.7937]

>> polynsolve({'x^2-x','x*y-1'},'',{'x','y'})

returns [1, 1]

>> polynsolve({'x^2-x','x*y'},'',{'x','y'})

returns [0, NaN; 1, 0]

(infinite possibilities represented by NaN)

NOTE: calculation of Groebner bases in floating-point arithmetic can be numerically unstable. See the help text for more details.

Cite As

Ben Petschel (2026). groebner (https://www.mathworks.com/matlabcentral/fileexchange/24478-groebner), MATLAB Central File Exchange. Retrieved .

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.5.0.0

fixed a few bugs that were introduced with the last update

1.4.0.0

changed polynomial representation from N-d array to rectangular array for more efficient memory usage when there are many variables

1.3.0.0

fixed bug in handling polynomials with >=3 variables; allowed spaces in polynomial strings

1.2.0.0

added polynsolve.m for explicitly solving the equations; removed ord='revlex' as it is not a well-ordering.

1.1.0.0

tweaked reduction algorithm; added grlex and revlex options for monomial ordering

1.0.0.0