|
D.3.2.22 jordanbasis
Procedure from library linalg.lib (see linalg_lib).
- Usage:
- jordanbasis(M); matrix M
- Assume:
- eigenvalues of M in basefield
- Return:
| list l:
module l[1]; inverse(l[1])*M*l[1] in Jordan normal form
intvec l[2];
int l[2][i]; weight filtration index of l[1][i]
|
Example:
| LIB "linalg.lib";
ring R=0,x,dp;
matrix M[3][3]=3,2,1,0,2,1,0,0,3;
print(M);
list l=jordanbasis(M);
print(l[1]);
print(l[2]);
print(inverse(l[1])*M*l[1]);
|
|