### 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.