Macaulay2 » Documentation
Packages » VectorFields :: stratifyByRank
next | previous | forward | backward | up | index | toc

stratifyByRank -- compute ideals describing where the vector fields have a particular rank

Synopsis

Description

Computes ideals describing where the provided vector fields have a particular rank. For $1\leq i\leq n$, where $n$ is the dimension of the space, (stratifyByRank(M))#i will be an ideal defining the set of points $p$ such that the generators of $M$ evaluated at $p$ span a subspace of dimension less than $i$. If the vector fields generate a Lie algebra, then this gives some information about their 'orbits' or their maximal integral submanifolds.

For details on the parts of the calculation, make debugLevel positive.

i1 : R=QQ[a,b,c];
i2 : f=a*b*(a-b)*(a-c*b)

        2 2       3     3     2 2
o2 = - a b c + a*b c + a b - a b

o2 : R
i3 : D=derlog(ideal (f))

o3 = image | a 0    0     |
           | b 0    ab-b2 |
           | 0 bc-a -ac+a |

                             3
o3 : R-module, submodule of R
i4 : S=stratifyByRank(D);

D has rank 0 on $a=b=0$, that is, the vector fields all vanish there:

i5 : S#1

o5 = ideal (a, b)

o5 : Ideal of R

D has rank <3 precisely on the hypersurface $f=0$, and hence rank 3 off the hypersurface:

i6 : S#3

            2 2       3     3     2 2
o6 = ideal(a b c - a*b c - a b + a b )

o6 : Ideal of R

This submodule of D has rank $<3$ everywhere since it only has 2 generators:

i7 : Df=derlogH(f)

o7 = image | ab      a2          |
           | b2      -3ab+4b2    |
           | -4bc+4a 4ac-12bc+8a |

                             3
o7 : R-module, submodule of R
i8 : isSubset(Df,D)

o8 = true
i9 : S=stratifyByRank(Df);
i10 : S#3

o10 = ideal 0

o10 : Ideal of R

See also

Ways to use stratifyByRank:

For the programmer

The object stratifyByRank is a method function.