PolynomialTools - Maple Programming Help

Online Help

All Products    Maple    MapleSim

Home : Support : Online Help : Mathematics : Algebra : Polynomials : PolynomialTools : PolynomialTools/Homogenize

PolynomialTools

 Homogenize
 homogenize a multivariate polynomial
 IsHomogeneous
 check if a multivariate polynomial is homogeneous

 Calling Sequence Homogenize(f, v) Homogenize(f, v, X) Homogenize(f, v, X, W) IsHomogeneous(f) IsHomogeneous(f, X) IsHomogeneous(f, X, W)

Parameters

 f - multivariate polynomial, or list or set of multivariate polynomials v - name or list of the form [name,posint]; the homogenization variable X - (optional) list or set of names; variables w.r.t. which f is homogenized W - (optional) list of nonnegative integers; weights

Description

 • The Homogenize(f, v) command homogenizes the polynomial $f$, by multiplying each term of $f$ by an appropriate power of $v$. The result is a polynomial $g$ in the same variables as $f$ plus one more variable $v$, such that all terms of $g$ have the same total degree, which equals the total degree of $f$.
 • The homogenization variable $v$ must be a new variable that does not appear in $f$.
 • The IsHomogeneous(f) command checks if the polynomial $f$ is homogeneous, i.e., all terms have the same total degree. If so, it returns $\mathrm{true}$, and $\mathrm{false}$ otherwise.
 • The Homogenize(f, v, X) command homogenizes the polynomial $f$ only w.r.t. the subset of the variables given by $X$. The resulting polynomial will be homogeneous in the variables $X\cup \left\{v\right\}$. The two-argument command Homogenize(f, v) is equivalent to Homogenize(f, v, indets(f,name)).
 • The IsHomogeneous(f, X) command checks if the polynomial $f$ is homogeneous w.r.t. the subset of the variables given by $X$. The one-argument command IsHomogeneous(f) is equivalent to IsHomogeneous(f, indets(f,name)).
 • The Homogenize(f, v, X, W) calling sequence performs a weighted homogenization, with weight ${W}_{i}$ given to variable ${X}_{i}$. If $v=\left[y,e\right]$, then the homogenization variable $y$ is given weight $e$. Note that in this case the result may contain fractional powers of $y$.
 • The IsHomogeneous(f, X, W) command checks if the polynomial is weighted-homogeneous, with weight ${W}_{i}$ given to variable ${X}_{i}$.
 • If $f$ is a set or list of polynomials, then each element of $f$ will be homogenized / checked for homogeneity.

Examples

 > $\mathrm{with}\left(\mathrm{PolynomialTools}\right):$
 > $f≔{x}^{4}+{x}^{2}y+yz+2z$
 ${f}{≔}{{x}}^{{4}}{+}{{x}}^{{2}}{}{y}{+}{y}{}{z}{+}{2}{}{z}$ (1)
 > $\mathrm{IsHomogeneous}\left(f\right)$
 ${\mathrm{false}}$ (2)
 > $g≔\mathrm{Homogenize}\left(f,v\right)$
 ${g}{≔}{2}{}{{v}}^{{3}}{}{z}{+}{{v}}^{{2}}{}{y}{}{z}{+}{v}{}{{x}}^{{2}}{}{y}{+}{{x}}^{{4}}$ (3)
 > $\mathrm{IsHomogeneous}\left(g\right)$
 ${\mathrm{true}}$ (4)
 > $\mathrm{IsHomogeneous}\left(g,\left[x,y,z\right]\right)$
 ${\mathrm{false}}$ (5)
 > $\mathrm{Homogenize}\left(\left[f,xy+{z}^{3}\right],v\right)$
 $\left[{2}{}{{v}}^{{3}}{}{z}{+}{{v}}^{{2}}{}{y}{}{z}{+}{v}{}{{x}}^{{2}}{}{y}{+}{{x}}^{{4}}{,}{v}{}{x}{}{y}{+}{{z}}^{{3}}\right]$ (6)
 > $\mathrm{IsHomogeneous}\left(\left[g,ab-{c}^{2}\right]\right)$
 ${\mathrm{true}}$ (7)
 > $\mathrm{Homogenize}\left(f,v,\left[x,y\right]\right)$
 ${2}{}{{v}}^{{4}}{}{z}{+}{{v}}^{{3}}{}{y}{}{z}{+}{v}{}{{x}}^{{2}}{}{y}{+}{{x}}^{{4}}$ (8)
 > $\mathrm{Homogenize}\left(f,v,\left[x,y\right],\left[1,2\right]\right)$
 ${2}{}{{v}}^{{4}}{}{z}{+}{{v}}^{{2}}{}{y}{}{z}{+}{{x}}^{{4}}{+}{{x}}^{{2}}{}{y}$ (9)
 > $\mathrm{Homogenize}\left(f,\left[v,2\right],\left[x,y\right],\left[1,2\right]\right)$
 ${{x}}^{{4}}{+}{2}{}{{v}}^{{2}}{}{z}{+}{v}{}{y}{}{z}{+}{{x}}^{{2}}{}{y}$ (10)
 > $\mathrm{Homogenize}\left(f,\left[v,2\right],\left[x,y\right],\left[1,1\right]\right)$
 ${2}{}{{v}}^{{2}}{}{z}{+}{{v}}^{{3}}{{2}}}{}{y}{}{z}{+}\sqrt{{v}}{}{{x}}^{{2}}{}{y}{+}{{x}}^{{4}}$ (11)
 > $h≔{x}^{6}+{x}^{3}y+{y}^{2}$
 ${h}{≔}{{x}}^{{6}}{+}{{x}}^{{3}}{}{y}{+}{{y}}^{{2}}$ (12)
 > $\mathrm{IsHomogeneous}\left(h\right)$
 ${\mathrm{false}}$ (13)
 > $\mathrm{IsHomogeneous}\left(h,\left[x,y\right],\left[1,3\right]\right)$
 ${\mathrm{true}}$ (14)
 > $\mathrm{Homogenize}\left(h,v,\left[x,y\right],\left[1,3\right]\right)$
 ${{x}}^{{6}}{+}{{x}}^{{3}}{}{y}{+}{{y}}^{{2}}$ (15)

Compatibility

 • The PolynomialTools[Homogenize] and PolynomialTools[IsHomogeneous] commands were introduced in Maple 2018.
 • For more information on Maple 2018 changes, see Updates in Maple 2018.

 See Also