Cayley-Hamilton theorem illustration
CAYLEY-HALMITON theorem
It states that any square
matrix
is solution of its characteristic equation. That is to say: let us denote
, the vector of the n characteristic polynomial coefficients such that: Then:
Computation of
from
,
,
, ⋯,
,
:
Then by using this theoreom it can be shown that, for
: where the coefficients
are recursively defined by:
, ![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMwAAAAjCAYAAADYMOWlAAAGhUlEQVR4Xu2cBYhuVRDHf8/ATuzublRMVOzCbrEbsRMEC8VAfSh2Byp2YyeK3d3doNit/GQuXi+7+91v973vnvv2DCy7fPd858zMOTNn5j9zdwSZsgayBmprYETtkXlg1kDWANlg8iHIGuhCA9lgulBWHpo1kA0mn4GsgS40kA2mC2XloVkD2WDyGcga6EIDKRvMIcBewIHA9V3I1NTQ+YH9gaWAP4CJgUeAk4G3mmIqr9tRA+MCOwL7AQt0Gp2ywXwBTAM8AyzZSZCGn28HnAc8CmwCfAtMDVwNLA1sDdzaMI95+f9rYBxge+AIYDbgF2CCTkpK2WAuBTyIRwNHdRKkweerAncDPwALAR+VeJkceCc2YgXg2Qb5zEv/p4F1gA3CSHaN/Wm9wSieXvqrhHdaL/UmMDtwXHirKrsnAoaXTwDLJCzLcGLNMOz3EPh2QAMaIwwm9U3cBrgimFwFeLAPhtcE7ozP1wDuSV2oYcbfxcAO2WB6s+s3ABsBvwKGX3qpKpn8fwN4G10E7Nwb1vIqNTXQeoMx0Z8vfsYGzq4peBPDDBenAl4EFh2AgddCnvcjfGuC11G5psYvKrg48HiEpc6vc1gdmBu4A3h5VC46muZqrcFMFMaxHDBnKOfUgJVHk66GNO34wM8xw0PAygPM9hiwbDyfIlC0IS3e0Je3AA4CFgbGA/4Cpge+jPzsypJD+DHQp68b4rXusq01mEJADUZ4VloLuKum5NY79q45dqBhQoxC2p1Io347Bt0MbDjAF/S2a8dzkbRXOk2e8HMdhTnZSoCOYHlgReB4YJ+4STUcyXKAZYGUqfUGsztwTuQFUwI/1dT2aVF8qjm832HT1TQYD8nDMYsQuIljf+QB2ioeCi8XDmGovDb1fRE/60uHATdFZLBu3LgCG4WTmwz4rikma67beoOx2OfVfx+wWk2hmxhmiKWHlVT6TgMwUdSUHCK07IEbLAm1e5tOCxwJPNnHRHYbWL8yxzKE6gua3zZ4NgexeGd4VYcENwyzzC+XAM6KelnRzXAAcArwRtw2deZsckyrDcZCqvGwifShwElNarLD2tZe3o0xomVW+PujW4D14+HMwMdDkOvCknE6j/NV6QNglvjQ8btUBhhOWj8aKz73dtSo65CooPJakL0xDPba0heF2YXbTwf2rTNhGL+AyFDocmC3QUzQaoPRYxUxrwjM84NQQK++YhtFES7eD1jx74/sKTMU+zuS5aJoNhheDYGsUkt2Fxj2lG8Hnc73gCCK5KHeuLKQucVTpc/s1xNgqUPeKHuGobzQxyH9NIAAQzRztzrkbfl5nYEDjLkkesK6nabVBuOtckKEECrRA5YyFbDycxGe9Mer8OqCwGfADEMUyHDrKkC0zXDLDa/SHpGEe1sb3nqwq+TN4zNDOg3K/rc65M0kbKyz8LcGUpAyKqt1qW7yzzrrjq4xrTaYe8NTmyR7rXdDvUbJ5M1QZNPw9B5gu5SrJPxq4dIbyfysSP67kS2VsbMCReikYzu8wpgh2MgW5J9ltltrMCaRIioTBuJUN6YuhO81Sua6W4a3929BABPoKlmfeSA+3DyMLBUD6JYPuxQuqNRfynPYkb1eC/LPMcJgfBehqE/MBHwC2El6fre72sPxNvGZ/Jp4izTZgFmlY+PZexHC/BkDrIqbfIsm9dVS00Mxai9VIJjC6dZhyqTD8yadJN4Jejpyiusip6q9SI8HtvaGEeYU6fAAzhWJpYmgSWvKZKerHa8fAvNWDr9GYXFTKNgmTENOyVqPgIZ5mo7B2sWrKQsJ//6HoQLB9EU5Q68yLQaYy9n9MGkUaucJiDll0a4BNgN+C0BmQF5Teh/m4ICRPXgeLCFT6wxtIN8MPSPgVt/eE72yXiHEqjGIKplkF2RXQNkRmAsZrqVMopbF+zxzAN6YZSrCU8GAMwE7Aqz8p0zehq+XgBgdtQ67X0rJYGzmE9/3oJ0LHNNFMS2FTfFAiVoZWuplhXVFpyziVVGq4m1MuwUM6wxfRL9SpsKheTMqa5XsKbsteskuC130BYKkIKPFY0Ela0ozlhjytvfGeakf9DH/I78Eds8ayCLxumwC7GQW2nLDDNedshApWFAuJA5XXSQvd0ohWfLKGsUMqnvDNZElkbRMLdBANpjmNklAQxTQfC1TSzSQDaa5jVL3qbf+NKedRFfOBpPoxmS20tRANpg09yVzlagGssEkujGZrTQ18A9G4DAzlWUUIQAAAABJRU5ErkJggg==)
and for
,
,
.
Notation :
. Illustration :
vector
: vector
: exemple:
(the objective is to compute
): Recurcive computation of
: fk(2:end)=-a(2:end)*fk(end)+fk(1:end-1);
Check the result:
for ii=1:n, bid=bid+fk(ii)*A^(ii-1);end;
bid-A^(n+k)
10-11 ×
-0.1364 -0.0909 -0.1364 -0.1364 -0.0909
-0.1819 -0.1819 -0.1819 -0.1592 -0.1592
-0.2728 -0.2274 -0.2728 -0.2274 -0.2728
-0.2728 -0.1819 -0.2274 -0.3183 -0.3183
-0.3183 -0.2274 -0.3638 -0.3183 -0.2728
Computation of
from
,
,
, ⋯,
,
:
The characteristc polynomial of
is: Then, for
: where the coefficients
are recursively defined by:
, ![](data:image/png;base64,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)
and for
,
,
.
Notation :
. Computation of
from
,
,
, ⋯,
:
with:Notation :
. Remark: in the following example we show how the matrix exponential can be computed thanks to the Cayley-Hamilton theorem. It is just an illustrative example. There is more efficient algorithms to compute the matrix exponential (see: help expm ).
Example (in the sum operation, k is limited to
): Vector of characteristic polynomial coefficients:
for ii=1:n, at(ii)=a(ii)*t^(n+1-ii);end;
Recursive computation of
: gt=1./factorial([0:n-1]);
fkt(2:end)=-at(2:end)*fkt(end)+fkt(1:end-1);
gt=gt+1/factorial(n+k)*fkt;
Check the result:
for ii=1:n, bid=bid+gt(ii)*A^(ii-1)*t^(ii-1);end;
bid-expm(At)
10-15 ×
0.2220 0.0052 0.0069 0.0035 0.0278
0.0416 0 0.0555 0.0069 0.0052
0.0173 0 0 0.0278 0
0.0971 0.0694 0.0416 0 0.0139
0.0555 0.0555 0.0139 0.0139 -0.2220