# degree(DiffAlgElement) -- degree of a differential form or a vector field

## Synopsis

• Usage:
degree e
• Function: degree
• Inputs:
• e, an instance of the type DiffAlgElement, a differential form or vector field
• Outputs:
• a list, If e is a vector field it returns {n,d}; if e is a differential form it returns {n,r,d}.

## Description

This function returns the degree of a homogeneous differential form or vector field.

• n, an integer, is the number of variables minus one
• r, an integer, is the degree of the differential form or empty if e is a vector field
• d, an integer, is the degree of the polynomial coefficients

In the following example we compute the degree of a differential form and a vector field.

 ```i1 : w = newForm(2,1,3,"a") 3 2 2 3 2 2 2 o1 = (a x + a x x + a x x + a x + a x x + a x x x + a x x + a x x 0 0 3 0 1 9 0 1 18 1 6 0 2 12 0 1 2 21 1 2 15 0 2 ------------------------------------------------------------------------ 2 3 3 2 2 3 2 + a x x + a x )dx + (a x + a x x + a x x + a x + a x x + 24 1 2 27 2 0 1 0 4 0 1 10 0 1 19 1 7 0 2 ------------------------------------------------------------------------ 2 2 2 3 3 2 a x x x + a x x + a x x + a x x + a x )dx + (a x + a x x + 13 0 1 2 22 1 2 16 0 2 25 1 2 28 2 1 2 0 5 0 1 ------------------------------------------------------------------------ 2 3 2 2 2 2 a x x + a x + a x x + a x x x + a x x + a x x + a x x + 11 0 1 20 1 8 0 2 14 0 1 2 23 1 2 17 0 2 26 1 2 ------------------------------------------------------------------------ 3 a x )dx 29 2 2 o1 : DiffAlgForm``` ```i2 : degree(w) o2 = {2, 1, 3} o2 : List``` ```i3 : X = newField(2,2,"b") 2 2 2 2 o3 = (b x + b x x + b x + b x x + b x x + b x )ax + (b x + b x x + 0 0 3 0 1 9 1 6 0 2 12 1 2 15 2 0 1 0 4 0 1 ------------------------------------------------------------------------ 2 2 2 2 b x + b x x + b x x + b x )ax + (b x + b x x + b x + b x x + 10 1 7 0 2 13 1 2 16 2 1 2 0 5 0 1 11 1 8 0 2 ------------------------------------------------------------------------ 2 b x x + b x )ax 14 1 2 17 2 2 o3 : DiffAlgField``` ```i4 : degree X o4 = {2, 2} o4 : List```

## Caveat

If the DiffAlgElement is non-homogeneous the function returns the highest degrees {n,r,d} of each homogeneous component in the given expression. For example, if the degree of w is {2,1,3}, then degree(w + (diff w)) returns, {2,2,3}