Ask Your Question

anne's profile - activity

2019-03-15 23:19:25 -0500 commented answer transformation matrix for variable matrix of given jordan type

Thanks very much!

2019-03-15 23:19:04 -0500 received badge  Scholar (source)
2019-03-07 18:57:03 -0500 commented question transformation matrix for variable matrix of given jordan type

Yes, it might. How do I do it, exactly?

I would work in the ring $R/I$, where $R$ is the polynomial ring generated by matrix coefficients, and $I$ is the ideal of the Jordan form. For instance, if I have a 5 by 5 matrix $A$ of type $(3,2)$ then

  • rank A = 3 would be encoded by adding all 4 by 4 minors of A to I
  • rank A^2 = 1 would be encoded by adding all 2 by 2 minors of A^2 to I
  • and finally rank A^3 = 0 would be encoded by adding coefficients of A^3 to I
2019-03-02 22:38:07 -0500 commented question transformation matrix for variable matrix of given jordan type

In general, the constraints may be more complicated than setting some entries to zero. Either way, I want Sage to figure out those constraints for me, and solve something like $g A g^{-1} = J$ for a $g$, given variable $A$ and fixed $J$.

If I try A.jordan_form() in a quotient ring, I get a NotImplementedError :(

2019-03-02 22:38:07 -0500 commented question transformation matrix for variable matrix of given jordan type

Sure. Say I have an arbitrary uppertriangular matrix of Jordan type $(2,1)$.

$$ A = \begin{pmatrix} 0 & A_{0} & A_{1} \\ 0 & 0 & A_{2} \\ 0 & 0 & 0 \end{pmatrix} $$

By default J_d, T_d = A.jordan_form(transformation=True) gives

$$ J_d = \begin{pmatrix} 0 & 1 & 0 \\ 0 & 0 & 1 \\ 0 & 0 & 0 \end{pmatrix} \qquad T_d = \begin{pmatrix}A_{0} A_{2} & A_{1} & 0 \\ 0 & A_{2} & 0 \\ 0 & 0 & 1\end{pmatrix} $$

However, I expect $$J = \begin{pmatrix}0 & 1 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 0\end{pmatrix}$$

In this case, I know that $A_2$ must be zero for $A$ to have Jordan type $(2,1)$ so I let $A' = A\big|_{A_2 = 0}$ and do J, T = A'.jordan_form(transformation=True) getting the desired

$$T = \begin{pmatrix}A_{0} & 0 & 0 \\ 0 & 1 & 1 \\ 0 & 0 & -\frac{A_{0}}{A_{1}}\end{pmatrix}$$

2019-03-02 07:01:01 -0500 received badge  Student (source)
2019-03-01 21:12:32 -0500 received badge  Organizer (source)
2019-03-01 12:29:32 -0500 asked a question transformation matrix for variable matrix of given jordan type

related: question/10488/why-does-jordan_form-not-work-over-inexact-rings/

I have, say, a nilpotent uppertriangular matrix $A$, with variable entries, and of a given Jordan type, $J$ (block type $\lambda$). I would like to know the transformation matrix $g$ such that $g A g^{-1} = J$.

How do I tell sage my input has a given Jordan type?

My idea is to compute A.jordan_form(transformation=True) in the quotient ring of the variable entries, given $\lambda$. This requires my figuring out the relations imposed by the given Jordan type, itself not an easy task.

I would like to know if what I want is already implemented somewhere in Sage, or if there is a better way to implement it than what I propose.