MathGroup Archive 1998

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: JordanDecomposition trouble



Josip Loncaric wrote:
> 
> Let {s,j} denote Jordan decomposition of the following exact matrix:
> 
> m = {{0,1,0,1},{0,0,0,0},{0,1,0,1},{0,0,0,0}} {s,j} =
> JordanDecomposition[m]
> 
> We should have m == s.j.Inverse[s], but in Mathematica 3.01 this is not
> the case.
> Instead, we get a rather different result:
> 
> In[3]:= s.j.Inverse[s]
> Out[3]= {{0,1,0,2},{0,0,0,0},{0,1,0,2},{0,0,0,0}}
> 
> The problem is not in matrix inversion since s.Inverse[s] returns
> identity.  The source of trouble appears to be in the
> JordanDecomposition result.
> 
> Jordan decomposition notorious for creating numerical difficulties, but
> exact matrices should not lead to such failures.
> 
> The situation gets even worse for larger versions of m.  Here is what
> happens:
> 
> size  = 8;
> m     = Table[If[OddQ[i] && EvenQ[j], 1, 0],{i,size},{j,size}]
> 
> Out[6]= {{0,1,0,1,0,1,0,1},{0,0,0,0,0,0,0,0},
>          {0,1,0,1,0,1,0,1},{0,0,0,0,0,0,0,0},
>          {0,1,0,1,0,1,0,1},{0,0,0,0,0,0,0,0},
>          {0,1,0,1,0,1,0,1},{0,0,0,0,0,0,0,0}}
> 
> {s,j} = JordanDecomposition[m];
> s.j.Inverse[s]
> 
> Out[7]=  {{0,1,0,3,0,15,0,90},
>           {0,0,0,0,0,0, 0,0},
>           {0,1,0,3,0,15,0,90},
>           {0,0,0,0,0,0, 0,0},
>           {0,1,0,3,0,15,0,90},
>           {0,0,0,0,0,0, 0,0},
>           {0,1,0,3,0,15,0,90},
>           {0,0,0,0,0,0, 0,0}}
> 
> This is not even close to m, although it should be exactly m.
> 
> --
> Dr. Josip Loncaric, Senior Staff Scientist ICASE, M/S 403, NASA Langley
> Research Center, Hampton, VA 23681-0001 Phone: (757) 864-2192
> mailto:josip@icase.edu Fax:   (757) 864-6134
> http://www.icase.edu/~josip/


Appears to be a bug in JordanDecomposition of derogatory matrices.
Thanks for pointing this out and providing examples. I'll look into it.

Daniel Lichtblau
Wolfram Research



  • Prev by Date: Re: Bit-wise operations?
  • Next by Date: Re: Diamond Video card problems?
  • Prev by thread: JordanDecomposition trouble
  • Next by thread: Re: JordanDecomposition trouble