Sorting monomials with respect to a term ordering

Use only in the MuPAD Notebook Interface.

This functionality does not run in MATLAB.


polylib::sortMonomials(f, vars)
polylib::sortMonomials(f, ord)
polylib::sortMonomials(f, vars, ord)


polylib::sortMonomials(f, ord) returns a list of all monomials constituting the polynomial f, sorted in descending order with respect to ord.

A monomial ordering may be: one of the identifiers LexOrder, DegreeOrder, DegInvLexOrder; or an object of type Dom::MonomOrdering or convertible to that type; or any object returning a number when called as ord(m1,m2) for two degree vectors m1 and m2. A degree vector is a list of integers, as returned by degreevec.

If no order is given, the lexikographical order is used.

If no list of variables is given, all indeterminates of f are used.

Given two degree vectors, m1 is considered to be greater than m2 if and only if ord(m1,m2) is positive.


Example 1

The monomials of the polynomial below are compared using a monomial ordering from Dom::MonomOrdering .

polylib::sortMonomials(poly(x^2+x*y^3+2, [x,y]), DegRevLex(2))



Polynomial or polynomial expression


Nonempty list of identifiers


Monomial ordering

Return Values

List of polynomials or expressions of the same type as f.

Overloaded By


See Also

MuPAD Domains

MuPAD Functions

Was this topic helpful?