![]() |
Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
|
Mirrors > Home > MPE Home > Th. List > cayleyhamilton | Structured version Visualization version GIF version |
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.) |
Ref | Expression |
---|---|
cayleyhamilton.a | ⊢ 𝐴 = (𝑁 Mat 𝑅) |
cayleyhamilton.b | ⊢ 𝐵 = (Base‘𝐴) |
cayleyhamilton.0 | ⊢ 0 = (0g‘𝐴) |
cayleyhamilton.c | ⊢ 𝐶 = (𝑁 CharPlyMat 𝑅) |
cayleyhamilton.k | ⊢ 𝐾 = (coe1‘(𝐶‘𝑀)) |
cayleyhamilton.m | ⊢ ∗ = ( ·𝑠 ‘𝐴) |
cayleyhamilton.e | ⊢ ↑ = (.g‘(mulGrp‘𝐴)) |
Ref | Expression |
---|---|
cayleyhamilton | ⊢ ((𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵) → (𝐴 Σg (𝑛 ∈ ℕ0 ↦ ((𝐾‘𝑛) ∗ (𝑛 ↑ 𝑀)))) = 0 ) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | cayleyhamilton.a | . 2 ⊢ 𝐴 = (𝑁 Mat 𝑅) | |
2 | cayleyhamilton.b | . 2 ⊢ 𝐵 = (Base‘𝐴) | |
3 | cayleyhamilton.0 | . 2 ⊢ 0 = (0g‘𝐴) | |
4 | eqid 2737 | . 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 2737 | . 2 ⊢ (Poly1‘𝑅) = (Poly1‘𝑅) | |
10 | eqid 2737 | . 2 ⊢ (𝑁 Mat (Poly1‘𝑅)) = (𝑁 Mat (Poly1‘𝑅)) | |
11 | eqid 2737 | . 2 ⊢ (.r‘(𝑁 Mat (Poly1‘𝑅))) = (.r‘(𝑁 Mat (Poly1‘𝑅))) | |
12 | eqid 2737 | . 2 ⊢ (-g‘(𝑁 Mat (Poly1‘𝑅))) = (-g‘(𝑁 Mat (Poly1‘𝑅))) | |
13 | eqid 2737 | . 2 ⊢ (0g‘(𝑁 Mat (Poly1‘𝑅))) = (0g‘(𝑁 Mat (Poly1‘𝑅))) | |
14 | eqid 2737 | . 2 ⊢ (Base‘(𝑁 Mat (Poly1‘𝑅))) = (Base‘(𝑁 Mat (Poly1‘𝑅))) | |
15 | eqid 2737 | . 2 ⊢ (.g‘(mulGrp‘(𝑁 Mat (Poly1‘𝑅)))) = (.g‘(mulGrp‘(𝑁 Mat (Poly1‘𝑅)))) | |
16 | eqid 2737 | . 2 ⊢ (𝑁 matToPolyMat 𝑅) = (𝑁 matToPolyMat 𝑅) | |
17 | eqeq1 2741 | . . . 4 ⊢ (𝑙 = 𝑛 → (𝑙 = 0 ↔ 𝑛 = 0)) | |
18 | eqeq1 2741 | . . . . 5 ⊢ (𝑙 = 𝑛 → (𝑙 = (𝑥 + 1) ↔ 𝑛 = (𝑥 + 1))) | |
19 | breq2 5155 | . . . . . 6 ⊢ (𝑙 = 𝑛 → ((𝑥 + 1) < 𝑙 ↔ (𝑥 + 1) < 𝑛)) | |
20 | fvoveq1 7461 | . . . . . . . 8 ⊢ (𝑙 = 𝑛 → (𝑦‘(𝑙 − 1)) = (𝑦‘(𝑛 − 1))) | |
21 | 20 | fveq2d 6918 | . . . . . . 7 ⊢ (𝑙 = 𝑛 → ((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑙 − 1))) = ((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑛 − 1)))) |
22 | 2fveq3 6919 | . . . . . . . 8 ⊢ (𝑙 = 𝑛 → ((𝑁 matToPolyMat 𝑅)‘(𝑦‘𝑙)) = ((𝑁 matToPolyMat 𝑅)‘(𝑦‘𝑛))) | |
23 | 22 | oveq2d 7454 | . . . . . . 7 ⊢ (𝑙 = 𝑛 → (((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1‘𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦‘𝑙))) = (((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1‘𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦‘𝑛)))) |
24 | 21, 23 | oveq12d 7456 | . . . . . 6 ⊢ (𝑙 = 𝑛 → (((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑙 − 1)))(-g‘(𝑁 Mat (Poly1‘𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1‘𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦‘𝑙)))) = (((𝑁 matToPolyMat 𝑅)‘(𝑦‘(𝑛 − 1)))(-g‘(𝑁 Mat (Poly1‘𝑅)))(((𝑁 matToPolyMat 𝑅)‘𝑀)(.r‘(𝑁 Mat (Poly1‘𝑅)))((𝑁 matToPolyMat 𝑅)‘(𝑦‘𝑛))))) |
25 | 19, 24 | ifbieq2d 4560 | . . . . 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 𝑅)‘(𝑦‘𝑛)))))) |
26 | 18, 25 | ifbieq2d 4560 | . . . 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 𝑅)‘(𝑦‘𝑛))))))) |
27 | 17, 26 | ifbieq2d 4560 | . . 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 𝑅)‘(𝑦‘𝑛)))))))) |
28 | 27 | cbvmptv 5264 | . 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 2737 | . 2 ⊢ (𝑁 cPolyMatToMat 𝑅) = (𝑁 cPolyMatToMat 𝑅) | |
30 | 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 28, 29 | cayleyhamilton0 22920 | 1 ⊢ ((𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝑀 ∈ 𝐵) → (𝐴 Σg (𝑛 ∈ ℕ0 ↦ ((𝐾‘𝑛) ∗ (𝑛 ↑ 𝑀)))) = 0 ) |
Colors of variables: wff setvar class |
Syntax hints: → wi 4 ∧ w3a 1087 = wceq 1539 ∈ wcel 2108 ifcif 4534 class class class wbr 5151 ↦ cmpt 5234 ‘cfv 6569 (class class class)co 7438 Fincfn 8993 0cc0 11162 1c1 11163 + caddc 11165 < clt 11302 − cmin 11499 ℕ0cn0 12533 Basecbs 17254 .rcmulr 17308 ·𝑠 cvsca 17311 0gc0g 17495 Σg cgsu 17496 -gcsg 18975 .gcmg 19107 mulGrpcmgp 20161 1rcur 20208 CRingccrg 20261 Poly1cpl1 22203 coe1cco1 22204 Mat cmat 22436 matToPolyMat cmat2pmat 22735 cPolyMatToMat ccpmat2mat 22736 CharPlyMat cchpmat 22857 |
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 1910 ax-6 1967 ax-7 2007 ax-8 2110 ax-9 2118 ax-10 2141 ax-11 2157 ax-12 2177 ax-ext 2708 ax-rep 5288 ax-sep 5305 ax-nul 5315 ax-pow 5374 ax-pr 5441 ax-un 7761 ax-cnex 11218 ax-resscn 11219 ax-1cn 11220 ax-icn 11221 ax-addcl 11222 ax-addrcl 11223 ax-mulcl 11224 ax-mulrcl 11225 ax-mulcom 11226 ax-addass 11227 ax-mulass 11228 ax-distr 11229 ax-i2m1 11230 ax-1ne0 11231 ax-1rid 11232 ax-rnegex 11233 ax-rrecex 11234 ax-cnre 11235 ax-pre-lttri 11236 ax-pre-lttrn 11237 ax-pre-ltadd 11238 ax-pre-mulgt0 11239 ax-addf 11241 ax-mulf 11242 |
This theorem depends on definitions: df-bi 207 df-an 396 df-or 849 df-3or 1088 df-3an 1089 df-xor 1511 df-tru 1542 df-fal 1552 df-ex 1779 df-nf 1783 df-sb 2065 df-mo 2540 df-eu 2569 df-clab 2715 df-cleq 2729 df-clel 2816 df-nfc 2892 df-ne 2941 df-nel 3047 df-ral 3062 df-rex 3071 df-rmo 3380 df-reu 3381 df-rab 3437 df-v 3483 df-sbc 3795 df-csb 3912 df-dif 3969 df-un 3971 df-in 3973 df-ss 3983 df-pss 3986 df-nul 4343 df-if 4535 df-pw 4610 df-sn 4635 df-pr 4637 df-tp 4639 df-op 4641 df-ot 4643 df-uni 4916 df-int 4955 df-iun 5001 df-iin 5002 df-br 5152 df-opab 5214 df-mpt 5235 df-tr 5269 df-id 5587 df-eprel 5593 df-po 5601 df-so 5602 df-fr 5645 df-se 5646 df-we 5647 df-xp 5699 df-rel 5700 df-cnv 5701 df-co 5702 df-dm 5703 df-rn 5704 df-res 5705 df-ima 5706 df-pred 6329 df-ord 6395 df-on 6396 df-lim 6397 df-suc 6398 df-iota 6522 df-fun 6571 df-fn 6572 df-f 6573 df-f1 6574 df-fo 6575 df-f1o 6576 df-fv 6577 df-isom 6578 df-riota 7395 df-ov 7441 df-oprab 7442 df-mpo 7443 df-of 7704 df-ofr 7705 df-om 7895 df-1st 8022 df-2nd 8023 df-supp 8194 df-tpos 8259 df-cur 8300 df-frecs 8314 df-wrecs 8345 df-recs 8419 df-rdg 8458 df-1o 8514 df-2o 8515 df-er 8753 df-map 8876 df-pm 8877 df-ixp 8946 df-en 8994 df-dom 8995 df-sdom 8996 df-fin 8997 df-fsupp 9409 df-sup 9489 df-oi 9557 df-card 9986 df-pnf 11304 df-mnf 11305 df-xr 11306 df-ltxr 11307 df-le 11308 df-sub 11501 df-neg 11502 df-div 11928 df-nn 12274 df-2 12336 df-3 12337 df-4 12338 df-5 12339 df-6 12340 df-7 12341 df-8 12342 df-9 12343 df-n0 12534 df-xnn0 12607 df-z 12621 df-dec 12741 df-uz 12886 df-rp 13042 df-fz 13554 df-fzo 13701 df-seq 14049 df-exp 14109 df-hash 14376 df-word 14559 df-lsw 14607 df-concat 14615 df-s1 14640 df-substr 14685 df-pfx 14715 df-splice 14794 df-reverse 14803 df-s2 14893 df-struct 17190 df-sets 17207 df-slot 17225 df-ndx 17237 df-base 17255 df-ress 17284 df-plusg 17320 df-mulr 17321 df-starv 17322 df-sca 17323 df-vsca 17324 df-ip 17325 df-tset 17326 df-ple 17327 df-ds 17329 df-unif 17330 df-hom 17331 df-cco 17332 df-0g 17497 df-gsum 17498 df-prds 17503 df-pws 17505 df-mre 17640 df-mrc 17641 df-acs 17643 df-mgm 18675 df-sgrp 18754 df-mnd 18770 df-mhm 18818 df-submnd 18819 df-efmnd 18904 df-grp 18976 df-minusg 18977 df-sbg 18978 df-mulg 19108 df-subg 19163 df-ghm 19253 df-gim 19299 df-cntz 19357 df-oppg 19386 df-symg 19411 df-pmtr 19484 df-psgn 19533 df-evpm 19534 df-cmn 19824 df-abl 19825 df-mgp 20162 df-rng 20180 df-ur 20209 df-srg 20214 df-ring 20262 df-cring 20263 df-oppr 20360 df-dvdsr 20383 df-unit 20384 df-invr 20414 df-dvr 20427 df-rhm 20498 df-subrng 20572 df-subrg 20596 df-drng 20757 df-lmod 20886 df-lss 20957 df-sra 21199 df-rgmod 21200 df-cnfld 21392 df-zring 21485 df-zrh 21541 df-dsmm 21779 df-frlm 21794 df-assa 21900 df-ascl 21902 df-psr 21956 df-mvr 21957 df-mpl 21958 df-opsr 21960 df-psr1 22206 df-vr1 22207 df-ply1 22208 df-coe1 22209 df-mamu 22420 df-mat 22437 df-mdet 22616 df-madu 22665 df-cpmat 22737 df-mat2pmat 22738 df-cpmat2mat 22739 df-decpmat 22794 df-pm2mp 22824 df-chpmat 22858 |
This theorem is referenced by: cayleyhamilton1 22923 |
Copyright terms: Public domain | W3C validator |