next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
DiffAlg :: isInvolutive

isInvolutive -- tests if a distribution is involutive

Synopsis

Description

If L is a list of vector fields, this routine tests the involutivity of L.


In this example we test the involutivity of two vector fields.

i1 : X = newField("3*x_0*ax_0+x_1*ax_1")

o1 = 3x ax  + x ax
       0  0    1  1

o1 : DiffAlgField
i2 : Y = radial 3

o2 = x ax  + x ax  + x ax  + x ax
      0  0    1  1    2  2    3  3

o2 : DiffAlgField
i3 : isInvolutive dist {X,Y}

o3 = true

In this example we compute a basis of the annihilator of a random projective logarithmic differential 1-form. Then we verify that it is an involutive distribution.

i4 : w = random logarithmicForm(2,{1,2},"a",Projective => true)

                    2                           2              2            
o4 = (120x x  + 144x  + 306x x  + 108x x  + 108x )dx  + (- 120x  - 144x x  -
          0 1       1       0 2       1 2       2   0          0       0 1  
     ------------------------------------------------------------------------
                            2              2       2
     108x x  - 264x x  - 72x )dx  + (- 306x  + 264x  - 108x x  + 72x x )dx
         0 2       1 2      2   1          0       1       0 2      1 2   2

o4 : DiffAlgForm
i5 : X = newField(2,2,"a")

         2               2                          2           2           
o5 = (a x  + a x x  + a x  + a x x  + a  x x  + a  x )ax  + (a x  + a 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           
     a  x  + a x x  + a  x x  + a  x )ax  + (a x  + a x x  + a  x  + a x x  +
      10 1    7 0 2    13 1 2    16 2   1     2 0    5 0 1    11 1    8 0 2  
     ------------------------------------------------------------------------
                   2
     a  x x  + a  x )ax
      14 1 2    17 2   2

o5 : DiffAlgField
i6 : D = genKer(X_w,X);
i7 : #D

o7 = 6
i8 : isInvolutive dist D

o8 = true

See also

Ways to use isInvolutive :