# Solving the matrix recurrence in Mathematica

Given matrices, $D, A, B$ --> I have the following recursive relation:

$$D_k = A - B^T D^{-1}_{k-1} B , \quad \ k \in \mathbb{N}_+$$

with $D_1 = A_1$. Can a solution $D_k$ to this equation be obtained? Mathematica did do it for the scalar case where I entered

Simplify[RSolve[{g[n + 1] == a - b^2/g[n], g == a}, g[n], n] ]


to get

{{g[n] -> -((a (-s1^n + s2^n) + Sqrt[a^2 - 4 b^2] (s1^n + s2^n))/(
2 (s1^n - s2^n)))}}


where

{(-a + Sqrt[a^2 - 4 b^2])/b^2 -> s1}
{-((a + Sqrt[a^2 - 4 b^2])/b^2) -> s2}


Thank you!

• Could you possibly include simple small example D,A,B? – Bill Aug 13 '17 at 16:40
• @Bill Hi -- I know that $A,D$ are symmetric positive definite matrices. $B$ is just a symmetric matrix though. – user2457324 Aug 13 '17 at 16:54
• I'm not sure this is going to be useful. Dk = {{1/2 d11[k+1], 1/3 d12[k+1]}, {1/3 d21[k+1], 1/4 d22[k+1]}}; A={{1,2},{2,1}}; B={{2,3},{3,2}}; Dkm={{d11[k],d12[k]},{d21[k],d22[k]}}; {{d11,d12},{d21,d22}} /. RSolve[Thread[Dk == A-Transpose[B].Dkm.B], {d11,d12,d21,d22}, k] – Bill Aug 13 '17 at 17:10
• @Bill thanks for your help! but it just outputs gibberish when I run it :( were you getting something meaningful on your machine? is mathematica not able to find a solution to a general recursive matrix equation? do we need to know its structure? thanks. – user2457324 Aug 13 '17 at 17:41
• No it doesn't appear to output gibberish. It outputs a list of four "honking HUGE" functions that are the solution to that to that matrix recurrence equation. I didn't include initial conditions in my toy example, but adding those don't seem to help much. If you had simple concrete 2x2 matricies which represent your problem then the solution may or many not be simpler. Mathematica has never really supported "abstract" vectors or matricies in anything. If you can provide concrete specific matricies then I might be able to force those into a form that MMA will accept. With more details I'll try – Bill Aug 13 '17 at 18:39