|  |  D.5.3.1 tangentGens Procedure from libraryorbitparam.lib(see  orbitparam_lib).
 
Example:Usage:
tangentGens(L,v); L list, v matrix.
Assume:
L is a list of strictly upper triangular n x n matrices of same size.
The vector space <L> genererated by the elements of L should be closed
under the Lie bracket.
v is matrix of constants of size n x 1.
 
Return:
list, with four entries
- first entry is the dimension of the orbit of under the action of exp(<L>)
 - second entry is a list generators of the tangent space of the orbit of v at v
under the action of exp(<L>). If the characteristic p of the ground field is positive, then n has to be smaller than p. The generators are elements of <L>.
 - third entry is the list of matrices with the coefficient to obtain the generators
as a linear combination of the elements of L
 - fourth entry is list of integers with entries in v which can be made zero by the
action of exp(<L>)
 
Theory:
We apply the theorem of Chevalley-Rosenlicht.
 |  | LIB "orbitparam.lib";
ring R = 0,(x),dp;
matrix L1[3][3] = 0,1,0, 0,0,0, 0,0,0;
matrix L2[3][3] = 0,0,1, 0,0,0, 0,0,0;
matrix L3[3][3] = 0,1,1, 0,0,1, 0,0,0;
list L = L1,L2,L3;
matrix v[3][1] = 1,2,3;
tangentGens(L,v);
==> [1]:
==>    2
==> [2]:
==>    [1]:
==>       _[1,1]=0
==>       _[1,2]=1/3
==>       _[1,3]=1/3
==>       _[2,1]=0
==>       _[2,2]=0
==>       _[2,3]=1/3
==>       _[3,1]=0
==>       _[3,2]=0
==>       _[3,3]=0
==>    [2]:
==>       _[1,1]=0
==>       _[1,2]=1/2
==>       _[1,3]=0
==>       _[2,1]=0
==>       _[2,2]=0
==>       _[2,3]=0
==>       _[3,1]=0
==>       _[3,2]=0
==>       _[3,3]=0
==> [3]:
==>    [1]:
==>       _[1,1]=0
==>       _[2,1]=0
==>       _[3,1]=1/3
==>    [2]:
==>       _[1,1]=1/2
==>       _[2,1]=0
==>       _[3,1]=0
==> [4]:
==>    [1]:
==>       2
==>    [2]:
==>       1
 | 
 
 |