Sei p∈C[x] beliebig, also
p(x)=i=0∑nαixi,α∈C.
Da A normal ist, existiert eine Diagonalisierung über C, insbesondere eine unitäre Matrix S mit
A=SHDS⟹AH=SHDHS=SHDˉS
für D diagonal. Es gilt also
p(SHDS)=i=0∑nαi(SHDS)i=i=0∑nαiSHDiS=SHp(D)S
Für müssen also p so wählen, dass p(D)=D (komplex konjugiert) gilt, also wenn λi ein Eigenwert von A ist, so soll p(λi)=λi gelten. Ein solches Polynom kann man z.B. durch Interpolation konstruieren (hier ist ja lediglich nach der Existenz gefragt, es reicht also zu wissen, dass ein solches Polynom existieren muss). Wir konstruieren nun p1,…,pm für alle A∈M (ich nehme an, dass ∣M∣=m ).
Nun können wir ähnlich wie bei der Lagrange interpolation vorgehen: Seien E1={λ1,…,λk} die Eigenwerte aller Matrizen in M\{A1}, welche verschieden von den Eigenwerten von A1 sind. Dann wird unser modifiziertes p1 die Form
p1(x)=(x−λ1)⋯(x−λk)p(x)
Die Idee ist hier, dass sobald wir irgendendeine andere Matrix als A1 in p1 Einsetzen, wir die Nullmatrix erhalten. Dann können wir nämlich einfach eine Linearkombination der pi am Ende betrachten. Das einzige Problem is jetzt noch, dass, wenn wir A1 in p1 einsetzten, wir noch einen zusätzlichen Faktor (λA1−λ1)⋯(λA1−λk) für jeden Eintrag λA1 der Diagonale erhalten. Also konstuieren wir unser erstes Polynom so, dass
p~(λA1)=(λA1−λ1)⋯(λA1−λk)λA1
gilt für alle Eigenwerte λA1 von A1. Unser letzendliches Polynom p1 wird also die Form
p1(x)=(x−λ1)⋯(x−λk)p~(x)
haben. Diesen Prozess wiederholen wir jetzt für alle übrigen Matrizen in M, und unser finales Polynom wird dann einfach die Summe all jener sein, also
P(x)=i=1∑mpm(x).