Groebner
Solve
factoring Buchberger algorithm
Calling Sequence
Parameters
Description
Examples
Solve(G, X, NZ, opts)
G
-
a list or set of polynomials or a PolynomialIdeal
X
(optional) a list or set of variables or a ShortMonomialOrder
NZ
(optional) a list or set of non-zero constraints
opts
optional arguments of the form keyword=value.
The Solve command preprocesses an algebraic system for solving by computing a collection of reduced Groebner bases corresponding to subvarieties of the initial varieties. First G is subdivided by factorization. Then each component is passed to a variant of Buchberger's algorithm that factors all intermediate results. Multiplicities are removed.
The second argument X specifies the variables of the system and optionally the monomial order. If X is a list Solve(G, X) computes lexicographic Groebner bases for each component with the variables ordered according to X. When X is a set an order is chosen heuristically (see SuggestVariableOrder) and Solve again computes lexicographic Groebner bases for each component. If X is a ShortMonomialOrder then Solve will use X for all computations, however keep in mind that lexicographic orders tend to produce the most factorization.
The third argument NZ is used to prevent certain quantities from being considered in roots. If one of the polynomials in NZ vanishes identically on a component, then that component is removed. If NZ is is omitted then ∅ is assumed.
The optional argument characteristic=p can be used to specify the ring characteristic when G is a list or set of polynomials. The default characteristic is zero.
If G is a list or set of polynomials, Solve returns a set of elements each consisting of a Groebner basis, a monomial order, and a set of non-zero constraints. If G is a PolynomialIdeal then Solve combines the Groebner basis and monomial order into a PolynomialIdeal data structure. Either format can be selected using the optional argument output=basis or output=ideal, respectively.
Note that the gsolve command is deprecated. It may not be supported in a future Maple release.
with⁡Groebner:
G≔x2−2⁢x⁢z+5,x⁢y2+y⁢z3,3⁢y2−8⁢z3:
Solve⁡G,x,y,z
z,y,x2+5,plex⁡x,y,z,∅,9⁢z6−96⁢z5+240⁢z3+1600,−3⁢z5+32⁢z4−40⁢z2+80⁢y,9⁢z5−96⁢z4+120⁢z2+640⁢x,plex⁡x,y,z,z,3⁢z5−32⁢z4+40⁢z2
Solve⁡G,y,z,x
x2+5,z,y,plex⁡y,z,x,∅,3⁢x6−64⁢x5+45⁢x4+225⁢x2+375,3⁢x5−64⁢x4+45⁢x3+150⁢x+150⁢z,8⁢x+3⁢y,plex⁡y,z,x,x,x2+5
Solve⁡G,x,y,z,y
9⁢z6−96⁢z5+240⁢z3+1600,−3⁢z5+32⁢z4−40⁢z2+80⁢y,9⁢z5−96⁢z4+120⁢z2+640⁢x,plex⁡x,y,z,z,3⁢z5−32⁢z4+40⁢z2
Solve⁡G,x,y,z,characteristic=3
z,y,x+1,plex⁡x,y,z,∅,z,y,x+2,plex⁡x,y,z,∅
Solve⁡G,tdeg⁡x,y,z
z,y,x2+5,tdeg⁡x,y,z,∅,8⁢x+3⁢y,9⁢y2+48⁢y⁢z+320,3⁢z3+6⁢y⁢z+40,tdeg⁡x,y,z,y
Example where the multiplicities change. The point (x,y) = (0,-1) is a double point of intersection for the two curves x^2 + y^2 - 1 = 0 and y - x^2 + 1 = 0, but appears only with multiplicity one in the result.
with⁡PolynomialIdeals:
J≔x2+y2−1,y−x2+1
J≔−x2+y+1,x2+y2−1
Solve⁡J,x,y
x,y+1,∅,y,x−1,∅,y,x+1,∅
See Also
Basis
Monomial Orders
SuggestVariableOrder
Download Help Document