MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  cayleyhamilton Structured version   Visualization version   GIF version

Theorem cayleyhamilton 22844
Description: The Cayley-Hamilton theorem: A matrix over a commutative ring "satisfies its own characteristic equation", see theorem 7.8 in [Roman] p. 170 (without proof!), or theorem 3.1 in [Lang] p. 561. In other words, a matrix over a commutative ring "inserted" into its characteristic polynomial results in zero. This is Metamath 100 proof #49. (Contributed by Alexander van der Vekens, 25-Nov-2019.)
Hypotheses
Ref Expression
cayleyhamilton.a 𝐴 = (𝑁 Mat 𝑅)
cayleyhamilton.b 𝐵 = (Base‘𝐴)
cayleyhamilton.0 0 = (0g𝐴)
cayleyhamilton.c 𝐶 = (𝑁 CharPlyMat 𝑅)
cayleyhamilton.k 𝐾 = (coe1‘(𝐶𝑀))
cayleyhamilton.m = ( ·𝑠𝐴)
cayleyhamilton.e = (.g‘(mulGrp‘𝐴))
Assertion
Ref Expression
cayleyhamilton ((𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀𝐵) → (𝐴 Σg (𝑛 ∈ ℕ0 ↦ ((𝐾𝑛) (𝑛 𝑀)))) = 0 )
Distinct variable groups:   𝐴,𝑛   𝐵,𝑛   𝐶,𝑛   𝑛,𝑀   𝑛,𝑁   𝑅,𝑛   ,𝑛   ,𝑛
Allowed substitution hints:   𝐾(𝑛)   0 (𝑛)

Proof of Theorem cayleyhamilton
Dummy variables 𝑥 𝑦 𝑙 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 cayleyhamilton.a . 2 𝐴 = (𝑁 Mat 𝑅)
2 cayleyhamilton.b . 2 𝐵 = (Base‘𝐴)
3 cayleyhamilton.0 . 2 0 = (0g𝐴)
4 eqid 2734 . 2 (1r𝐴) = (1r𝐴)
5 cayleyhamilton.m . 2 = ( ·𝑠𝐴)
6 cayleyhamilton.e . 2 = (.g‘(mulGrp‘𝐴))
7 cayleyhamilton.c . 2 𝐶 = (𝑁 CharPlyMat 𝑅)
8 cayleyhamilton.k . 2 𝐾 = (coe1‘(𝐶𝑀))
9 eqid 2734 . 2 (Poly1𝑅) = (Poly1𝑅)
10 eqid 2734 . 2 (𝑁 Mat (Poly1𝑅)) = (𝑁 Mat (Poly1𝑅))
11 eqid 2734 . 2 (.r‘(𝑁 Mat (Poly1𝑅))) = (.r‘(𝑁 Mat (Poly1𝑅)))
12 eqid 2734 . 2 (-g‘(𝑁 Mat (Poly1𝑅))) = (-g‘(𝑁 Mat (Poly1𝑅)))
13 eqid 2734 . 2 (0g‘(𝑁 Mat (Poly1𝑅))) = (0g‘(𝑁 Mat (Poly1𝑅)))
14 eqid 2734 . 2 (Base‘(𝑁 Mat (Poly1𝑅))) = (Base‘(𝑁 Mat (Poly1𝑅)))
15 eqid 2734 . 2 (.g‘(mulGrp‘(𝑁 Mat (Poly1𝑅)))) = (.g‘(mulGrp‘(𝑁 Mat (Poly1𝑅))))
16 eqid 2734 . 2 (𝑁 matToPolyMat 𝑅) = (𝑁 matToPolyMat 𝑅)
17 eqeq1 2738 . . . 4 (𝑙 = 𝑛 → (𝑙 = 0 ↔ 𝑛 = 0))
18 eqeq1 2738 . . . . 5 (𝑙 = 𝑛 → (𝑙 = (𝑥 + 1) ↔ 𝑛 = (𝑥 + 1)))
19 breq2 5127 . . . . . 6 (𝑙 = 𝑛 → ((𝑥 + 1) < 𝑙 ↔ (𝑥 + 1) < 𝑛))
20 fvoveq1 7436 . . . . . . . 8 (𝑙 = 𝑛 → (𝑦‘(𝑙 − 1)) = (𝑦‘(𝑛 − 1)))
2120fveq2d 6890 . . . . . . 7 (𝑙 = 𝑛 → ((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑙 − 1))) = ((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑛 − 1))))
22 2fveq3 6891 . . . . . . . 8 (𝑙 = 𝑛 → ((𝑁 matToPolyMat 𝑅)‘(𝑦𝑙)) = ((𝑁 matToPolyMat 𝑅)‘(𝑦𝑛)))
2322oveq2d 7429 . . . . . . 7 (𝑙 = 𝑛 → (((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦𝑙))) = (((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦𝑛))))
2421, 23oveq12d 7431 . . . . . 6 (𝑙 = 𝑛 → (((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑙 − 1)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦𝑙)))) = (((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑛 − 1)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦𝑛)))))
2519, 24ifbieq2d 4532 . . . . 5 (𝑙 = 𝑛 → if((𝑥 + 1) < 𝑙, (0g‘(𝑁 Mat (Poly1𝑅))), (((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑙 − 1)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦𝑙))))) = if((𝑥 + 1) < 𝑛, (0g‘(𝑁 Mat (Poly1𝑅))), (((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑛 − 1)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦𝑛))))))
2618, 25ifbieq2d 4532 . . . 4 (𝑙 = 𝑛 → if(𝑙 = (𝑥 + 1), ((𝑁 matToPolyMat 𝑅)‘(𝑦𝑥)), if((𝑥 + 1) < 𝑙, (0g‘(𝑁 Mat (Poly1𝑅))), (((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑙 − 1)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦𝑙)))))) = if(𝑛 = (𝑥 + 1), ((𝑁 matToPolyMat 𝑅)‘(𝑦𝑥)), if((𝑥 + 1) < 𝑛, (0g‘(𝑁 Mat (Poly1𝑅))), (((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑛 − 1)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦𝑛)))))))
2717, 26ifbieq2d 4532 . . 3 (𝑙 = 𝑛 → if(𝑙 = 0, ((0g‘(𝑁 Mat (Poly1𝑅)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦‘0)))), if(𝑙 = (𝑥 + 1), ((𝑁 matToPolyMat 𝑅)‘(𝑦𝑥)), if((𝑥 + 1) < 𝑙, (0g‘(𝑁 Mat (Poly1𝑅))), (((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑙 − 1)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦𝑙))))))) = if(𝑛 = 0, ((0g‘(𝑁 Mat (Poly1𝑅)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦‘0)))), if(𝑛 = (𝑥 + 1), ((𝑁 matToPolyMat 𝑅)‘(𝑦𝑥)), if((𝑥 + 1) < 𝑛, (0g‘(𝑁 Mat (Poly1𝑅))), (((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑛 − 1)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦𝑛))))))))
2827cbvmptv 5235 . 2 (𝑙 ∈ ℕ0 ↦ if(𝑙 = 0, ((0g‘(𝑁 Mat (Poly1𝑅)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦‘0)))), if(𝑙 = (𝑥 + 1), ((𝑁 matToPolyMat 𝑅)‘(𝑦𝑥)), if((𝑥 + 1) < 𝑙, (0g‘(𝑁 Mat (Poly1𝑅))), (((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑙 − 1)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦𝑙)))))))) = (𝑛 ∈ ℕ0 ↦ if(𝑛 = 0, ((0g‘(𝑁 Mat (Poly1𝑅)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦‘0)))), if(𝑛 = (𝑥 + 1), ((𝑁 matToPolyMat 𝑅)‘(𝑦𝑥)), if((𝑥 + 1) < 𝑛, (0g‘(𝑁 Mat (Poly1𝑅))), (((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑛 − 1)))(-g‘(𝑁 Mat (Poly1𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦𝑛))))))))
29 eqid 2734 . 2 (𝑁 cPolyMatToMat 𝑅) = (𝑁 cPolyMatToMat 𝑅)
301, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 28, 29cayleyhamilton0 22843 1 ((𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀𝐵) → (𝐴 Σg (𝑛 ∈ ℕ0 ↦ ((𝐾𝑛) (𝑛 𝑀)))) = 0 )
Colors of variables: wff setvar class
Syntax hints:  wi 4  w3a 1086   = wceq 1539  wcel 2107  ifcif 4505   class class class wbr 5123  cmpt 5205  cfv 6541  (class class class)co 7413  Fincfn 8967  0cc0 11137  1c1 11138   + caddc 11140   < clt 11277  cmin 11474  0cn0 12509  Basecbs 17229  .rcmulr 17274   ·𝑠 cvsca 17277  0gc0g 17455   Σg cgsu 17456  -gcsg 18922  .gcmg 19054  mulGrpcmgp 20105  1rcur 20146  CRingccrg 20199  Poly1cpl1 22126  coe1cco1 22127   Mat cmat 22359   matToPolyMat cmat2pmat 22658   cPolyMatToMat ccpmat2mat 22659   CharPlyMat cchpmat 22780
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1794  ax-4 1808  ax-5 1909  ax-6 1966  ax-7 2006  ax-8 2109  ax-9 2117  ax-10 2140  ax-11 2156  ax-12 2176  ax-ext 2706  ax-rep 5259  ax-sep 5276  ax-nul 5286  ax-pow 5345  ax-pr 5412  ax-un 7737  ax-cnex 11193  ax-resscn 11194  ax-1cn 11195  ax-icn 11196  ax-addcl 11197  ax-addrcl 11198  ax-mulcl 11199  ax-mulrcl 11200  ax-mulcom 11201  ax-addass 11202  ax-mulass 11203  ax-distr 11204  ax-i2m1 11205  ax-1ne0 11206  ax-1rid 11207  ax-rnegex 11208  ax-rrecex 11209  ax-cnre 11210  ax-pre-lttri 11211  ax-pre-lttrn 11212  ax-pre-ltadd 11213  ax-pre-mulgt0 11214  ax-addf 11216  ax-mulf 11217
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-xor 1511  df-tru 1542  df-fal 1552  df-ex 1779  df-nf 1783  df-sb 2064  df-mo 2538  df-eu 2567  df-clab 2713  df-cleq 2726  df-clel 2808  df-nfc 2884  df-ne 2932  df-nel 3036  df-ral 3051  df-rex 3060  df-rmo 3363  df-reu 3364  df-rab 3420  df-v 3465  df-sbc 3771  df-csb 3880  df-dif 3934  df-un 3936  df-in 3938  df-ss 3948  df-pss 3951  df-nul 4314  df-if 4506  df-pw 4582  df-sn 4607  df-pr 4609  df-tp 4611  df-op 4613  df-ot 4615  df-uni 4888  df-int 4927  df-iun 4973  df-iin 4974  df-br 5124  df-opab 5186  df-mpt 5206  df-tr 5240  df-id 5558  df-eprel 5564  df-po 5572  df-so 5573  df-fr 5617  df-se 5618  df-we 5619  df-xp 5671  df-rel 5672  df-cnv 5673  df-co 5674  df-dm 5675  df-rn 5676  df-res 5677  df-ima 5678  df-pred 6301  df-ord 6366  df-on 6367  df-lim 6368  df-suc 6369  df-iota 6494  df-fun 6543  df-fn 6544  df-f 6545  df-f1 6546  df-fo 6547  df-f1o 6548  df-fv 6549  df-isom 6550  df-riota 7370  df-ov 7416  df-oprab 7417  df-mpo 7418  df-of 7679  df-ofr 7680  df-om 7870  df-1st 7996  df-2nd 7997  df-supp 8168  df-tpos 8233  df-cur 8274  df-frecs 8288  df-wrecs 8319  df-recs 8393  df-rdg 8432  df-1o 8488  df-2o 8489  df-er 8727  df-map 8850  df-pm 8851  df-ixp 8920  df-en 8968  df-dom 8969  df-sdom 8970  df-fin 8971  df-fsupp 9384  df-sup 9464  df-oi 9532  df-card 9961  df-pnf 11279  df-mnf 11280  df-xr 11281  df-ltxr 11282  df-le 11283  df-sub 11476  df-neg 11477  df-div 11903  df-nn 12249  df-2 12311  df-3 12312  df-4 12313  df-5 12314  df-6 12315  df-7 12316  df-8 12317  df-9 12318  df-n0 12510  df-xnn0 12583  df-z 12597  df-dec 12717  df-uz 12861  df-rp 13017  df-fz 13530  df-fzo 13677  df-seq 14025  df-exp 14085  df-hash 14352  df-word 14535  df-lsw 14583  df-concat 14591  df-s1 14616  df-substr 14661  df-pfx 14691  df-splice 14770  df-reverse 14779  df-s2 14869  df-struct 17166  df-sets 17183  df-slot 17201  df-ndx 17213  df-base 17230  df-ress 17253  df-plusg 17286  df-mulr 17287  df-starv 17288  df-sca 17289  df-vsca 17290  df-ip 17291  df-tset 17292  df-ple 17293  df-ds 17295  df-unif 17296  df-hom 17297  df-cco 17298  df-0g 17457  df-gsum 17458  df-prds 17463  df-pws 17465  df-mre 17600  df-mrc 17601  df-acs 17603  df-mgm 18622  df-sgrp 18701  df-mnd 18717  df-mhm 18765  df-submnd 18766  df-efmnd 18851  df-grp 18923  df-minusg 18924  df-sbg 18925  df-mulg 19055  df-subg 19110  df-ghm 19200  df-gim 19246  df-cntz 19304  df-oppg 19333  df-symg 19355  df-pmtr 19428  df-psgn 19477  df-evpm 19478  df-cmn 19768  df-abl 19769  df-mgp 20106  df-rng 20118  df-ur 20147  df-srg 20152  df-ring 20200  df-cring 20201  df-oppr 20302  df-dvdsr 20325  df-unit 20326  df-invr 20356  df-dvr 20369  df-rhm 20440  df-subrng 20514  df-subrg 20538  df-drng 20699  df-lmod 20828  df-lss 20898  df-sra 21140  df-rgmod 21141  df-cnfld 21327  df-zring 21420  df-zrh 21476  df-dsmm 21706  df-frlm 21721  df-assa 21827  df-ascl 21829  df-psr 21883  df-mvr 21884  df-mpl 21885  df-opsr 21887  df-psr1 22129  df-vr1 22130  df-ply1 22131  df-coe1 22132  df-mamu 22343  df-mat 22360  df-mdet 22539  df-madu 22588  df-cpmat 22660  df-mat2pmat 22661  df-cpmat2mat 22662  df-decpmat 22717  df-pm2mp 22747  df-chpmat 22781
This theorem is referenced by:  cayleyhamilton1  22846
  Copyright terms: Public domain W3C validator