m=der(I,J)
m=der(L,J)
This computes the module of vector fields that, as derivations, send each element of I (or L) to an element of J. This can be used to calculate, for example, the module of vector fields tangent to an algebraic variety (see derlog).
Note that der(I,J) is always a subset of der(list of generators of I,J), and frequently a proper subset.
For der(L,J), the computation is done by finding the syzygies between the partial derivatives of the entries of L and the generators of J. This method of computation was adapted from Singular's KVequiv.lib, written by Anne Frühbis-Krüger.
For der(I,J), we intersect der(list of generators of I,J) with the free module consisting of vector fields with coefficients in J:I; the latter is unnecessary when I is a subset of J.
For example, consider the following ideals.
|
|
|
|
Every vector field sends the zero ideal to zero:
|
|
This finds the vector fields tangent to x*y=0 (see derlog):
|
|
This finds the vector fields annihilating x*y (see derlogH):
|
This is different than
|
because, for example, the generator of D does not annihilate x^2*y:
|
Another illustration of the difference is:
|
|
This illustrates a basic identity:
|
The object der is a method function.