next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
VectorFields :: isHHolonomic

isHHolonomic -- test whether a hypersurface is H-holonomic

Synopsis

Description

Test if X, the algebraic set defined by H, is H-holonomic. Let D be the module of vector fields annihilating H (see derlogH), a submodule of the module of logarithmic vector fields for H. Then X is called H-holonomic if at any point p in X, the generators of D evaluated at p span the tangent space of the stratum containing p of the canonical Whitney stratification of X; equivalently, the collection of maximal integral submanifolds of D that are contained in X will equal the canonical Whitney stratification of X. The “H” in H-holonomic refers to the name of the function.

The algorithm used essentially checks the dimensions of the components of the sets given by stratifyByRank(derlog(ideal (H))) (see isHolonomic and isFiniteStratification) and then compares these sets with those given by stratifyByRank(derlogH(H)). Details may be found in section 4.3 of “James Damon and Brian Pike. Solvable groups, free divisors and nonisolated matrix singularities II: Vanishing topology. Geom. Topol., 18(2):911-962, 2014”, available at http://dx.doi.org/10.2140/gt.2014.18.911 or http://arxiv.org/abs/1201.1579.

To display progress reports, set debugLevel>0.

i1 : R=QQ[a,b,c];

This hypersurface is not even holonomic, as the logarithmic vector fields have rank 0 on a=b=0:

i2 : f=a*b*(a-b)*(a-c*b);
i3 : 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 : derlogH(f)

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

                             3
o4 : R-module, submodule of R
i5 : isHHolonomic(f)
isFiniteStratification: Component monomialIdeal (a,b) has dim 1 but should be of dim <1 to have a finite stratification.

o5 = false
i6 : isHolonomic(f)
isFiniteStratification: Component monomialIdeal (a,b) has dim 1 but should be of dim <1 to have a finite stratification.

o6 = false

This hypersurface is H-Holonomic, although the generators of D are linearly dependent everywhere:

i7 : f=a*c-b^2;
i8 : D=gens derlogH(f)

o8 = | 2b a  0  |
     | c  0  a  |
     | 0  -c 2b |

             3       3
o8 : Matrix R  <--- R
i9 : det(D)

o9 = 0

o9 : R
i10 : isHHolonomic(f)

o10 = true
i11 : S=stratifyByRank(D)

o11 = StratificationByRank{1 => monomialIdeal (a, b, c)}
                           2 => monomialIdeal (a, b, c)
                           3 => 0

o11 : StratificationByRank
i12 : S#1

o12 = monomialIdeal (a, b, c)

o12 : MonomialIdeal of R
i13 : S#2

o13 = monomialIdeal (a, b, c)

o13 : MonomialIdeal of R
i14 : S#3

o14 = 0

o14 : MonomialIdeal of R

The Whitney Umbrella is also H-Holonomic:

i15 : f=a^2-b^2*c;
i16 : isHHolonomic(f)

o16 = true

Caveat

See the warnings in isFiniteStratification.

See also

Ways to use isHHolonomic :