NonCommutativeMonomialList[poly,vars,alg]
gives the list of all monomials in the polynomial poly in the variables vars over the non-commutative algebra alg.
NonCommutativeMonomialList[poly,alg]
gives the list of all monomials in the polynomial poly in the generators of the non-commutative algebra alg.
NonCommutativeMonomialList
NonCommutativeMonomialList[poly,vars,alg]
gives the list of all monomials in the polynomial poly in the variables vars over the non-commutative algebra alg.
NonCommutativeMonomialList[poly,alg]
gives the list of all monomials in the polynomial poly in the generators of the non-commutative algebra alg.
Details
- List of monomials in a polynomial over a non-commutative algebra.
- The monomials are listed in the decreasing order. The monomial order is determined by vars.
- vars needs to be specified when alg does not have generators specified ("Generators"Automatic).
- vars should be {vs1,…,vsk}, where vsi are disjoint lists of variables that include all non-commutative variables that appear in poly. vsi=x, where x is a variable, is equivalent to vsi={x}.
- vars, together with "VariableOrder" and "WordOrder" specifications in alg, determines a multi-graded monomial order.
- "VariableOrder" can be either "Increasing" or "Decreasing". With the default "Increasing" setting, variables that appear earlier in variable lists are considered to be smaller. The elements of "CommutativeVariables" of the algebra alg are always considered smaller than all vars.
- Monomials are ordered first on the number of occurrences of variables from variable lists vsi, starting with the list that contains the largest variables, then on the number of occurrences of "CommutativeVariables". If all numbers of occurrences are the same, monomials are ordered using "WordOrder", which can be one of "Lexicographic" (default), "ReverseLexicographic", "NegativeLexicographic" and "NegativeReverseLexicographic".
- When alg has generators specified ("Generators"gens), poly needs to be a polynomial in gens, and gens determines the monomial order.
- alg can be a NonCommutativeAlgebra object or any valid NonCommutativeAlgebra specification. If the algebra argument is omitted, NonCommutativeAlgebra with the default property values is used.
Examples
open all close allBasic Examples (3)
Get the list of monomials in decreasing order with
:
NonCommutativeMonomialList[(x + 2y)**(3x + 4y), {x, y}]List of monomials in a polynomial over an algebra with symbolic operations:
alg = NonCommutativeAlgebra[<|"Multiplication" -> mult, "Addition" -> add|>];NonCommutativeMonomialList[mult[add[x, 2y], add[3x, 4y]], {x, y}, alg]List of monomials in the standard representation of an element of an algebra with relations:
alg = NonCommutativeAlgebra[<|"Generators" -> {{x, y}}, "Relations" -> {y**y**y - x + 2y + 3}|>];NonCommutativeMonomialList[y**y**y**y**y, alg]Scope (1)
For two variables, four different monomial orders can be specified with the variable list:
poly = NonCommutativeMultiply@@@Tuples[{x, y}, 3].Range[8]NonCommutativeMonomialList[poly, {x, y}]NonCommutativeMonomialList[poly, {{x, y}}]NonCommutativeMonomialList[poly, {y, x}]NonCommutativeMonomialList[poly, {{y, x}}]This shows the orders given by the different settings of "WordOrder":
{lex, rlex, nlex, nrlex} = NonCommutativeAlgebra[<|"Generators" -> {{x, y}}, "WordOrder" -> #|>]& /@ {"Lexicographic", "ReverseLexicographic", "NegativeLexicographic", "NegativeReverseLexicographic"};NonCommutativeMonomialList[poly, lex]NonCommutativeMonomialList[poly, rlex]NonCommutativeMonomialList[poly, nlex]NonCommutativeMonomialList[poly, nrlex]Tech Notes
Related Guides
Text
Wolfram Research (2025), NonCommutativeMonomialList, Wolfram Language function, https://reference.wolfram.com/language/ref/NonCommutativeMonomialList.html (updated 2026).
CMS
Wolfram Language. 2025. "NonCommutativeMonomialList." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2026. https://reference.wolfram.com/language/ref/NonCommutativeMonomialList.html.
APA
Wolfram Language. (2025). NonCommutativeMonomialList. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/NonCommutativeMonomialList.html
BibTeX
@misc{reference.wolfram_2026_noncommutativemonomiallist, author="Wolfram Research", title="{NonCommutativeMonomialList}", year="2026", howpublished="\url{https://reference.wolfram.com/language/ref/NonCommutativeMonomialList.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_noncommutativemonomiallist, organization={Wolfram Research}, title={NonCommutativeMonomialList}, year={2026}, url={https://reference.wolfram.com/language/ref/NonCommutativeMonomialList.html}, note=[Accessed: 13-June-2026]}