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

Theorem cramerimp 19711
Description: One direction of Cramer's rule (according to Wikipedia "Cramer's rule", 21-Feb-2019, https://en.wikipedia.org/wiki/Cramer%27s_rule: "[Cramer's rule] ... expresses the solution [of a system of linear equations] in terms of the determinants of the (square) coefficient matrix and of matrices obtained from it by replacing one column by the column vector of right-hand sides of the equations."): The ith component of the solution vector of a system of linear equations equals the determinant of the matrix of the system of linear equations with the ith column replaced by the righthand side vector of the system of linear equations divided by the determinant of the matrix of the system of linear equations. (Contributed by AV, 19-Feb-2019.) (Revised by AV, 1-Mar-2019.)
Hypotheses
Ref Expression
cramerimp.a  |-  A  =  ( N Mat  R )
cramerimp.b  |-  B  =  ( Base `  A
)
cramerimp.v  |-  V  =  ( ( Base `  R
)  ^m  N )
cramerimp.e  |-  E  =  ( ( ( 1r
`  A ) ( N matRepV  R ) Z ) `
 I )
cramerimp.h  |-  H  =  ( ( X ( N matRepV  R ) Y ) `
 I )
cramerimp.x  |-  .x.  =  ( R maVecMul  <. N ,  N >. )
cramerimp.d  |-  D  =  ( N maDet  R )
cramerimp.q  |-  ./  =  (/r
`  R )
Assertion
Ref Expression
cramerimp  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( Z `  I
)  =  ( ( D `  H ) 
./  ( D `  X ) ) )

Proof of Theorem cramerimp
StepHypRef Expression
1 crngring 17791 . . . . . 6  |-  ( R  e.  CRing  ->  R  e.  Ring )
21adantr 467 . . . . 5  |-  ( ( R  e.  CRing  /\  I  e.  N )  ->  R  e.  Ring )
323ad2ant1 1029 . . . 4  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  ->  R  e.  Ring )
4 cramerimp.d . . . . . . . 8  |-  D  =  ( N maDet  R )
5 cramerimp.a . . . . . . . 8  |-  A  =  ( N Mat  R )
6 cramerimp.b . . . . . . . 8  |-  B  =  ( Base `  A
)
7 eqid 2451 . . . . . . . 8  |-  ( Base `  R )  =  (
Base `  R )
84, 5, 6, 7mdetf 19620 . . . . . . 7  |-  ( R  e.  CRing  ->  D : B
--> ( Base `  R
) )
98adantr 467 . . . . . 6  |-  ( ( R  e.  CRing  /\  I  e.  N )  ->  D : B --> ( Base `  R
) )
1093ad2ant1 1029 . . . . 5  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  ->  D : B --> ( Base `  R ) )
11 cramerimp.e . . . . . 6  |-  E  =  ( ( ( 1r
`  A ) ( N matRepV  R ) Z ) `
 I )
125, 6matrcl 19437 . . . . . . . . . . 11  |-  ( X  e.  B  ->  ( N  e.  Fin  /\  R  e.  _V ) )
1312simpld 461 . . . . . . . . . 10  |-  ( X  e.  B  ->  N  e.  Fin )
1413adantr 467 . . . . . . . . 9  |-  ( ( X  e.  B  /\  Y  e.  V )  ->  N  e.  Fin )
152, 14anim12i 570 . . . . . . . 8  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V ) )  -> 
( R  e.  Ring  /\  N  e.  Fin )
)
16153adant3 1028 . . . . . . 7  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( R  e.  Ring  /\  N  e.  Fin )
)
17 ne0i 3737 . . . . . . . . . . 11  |-  ( I  e.  N  ->  N  =/=  (/) )
181, 17anim12ci 571 . . . . . . . . . 10  |-  ( ( R  e.  CRing  /\  I  e.  N )  ->  ( N  =/=  (/)  /\  R  e. 
Ring ) )
1918anim1i 572 . . . . . . . . 9  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V ) )  -> 
( ( N  =/=  (/)  /\  R  e.  Ring )  /\  ( X  e.  B  /\  Y  e.  V ) ) )
20193adant3 1028 . . . . . . . 8  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( ( N  =/=  (/)  /\  R  e.  Ring )  /\  ( X  e.  B  /\  Y  e.  V ) ) )
21 simpl 459 . . . . . . . . 9  |-  ( ( ( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) )  ->  ( X  .x.  Z )  =  Y )
22213ad2ant3 1031 . . . . . . . 8  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( X  .x.  Z
)  =  Y )
23 cramerimp.v . . . . . . . . 9  |-  V  =  ( ( Base `  R
)  ^m  N )
24 cramerimp.x . . . . . . . . 9  |-  .x.  =  ( R maVecMul  <. N ,  N >. )
255, 6, 23, 24slesolvec 19704 . . . . . . . 8  |-  ( ( ( N  =/=  (/)  /\  R  e.  Ring )  /\  ( X  e.  B  /\  Y  e.  V )
)  ->  ( ( X  .x.  Z )  =  Y  ->  Z  e.  V ) )
2620, 22, 25sylc 62 . . . . . . 7  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  ->  Z  e.  V )
27 simpr 463 . . . . . . . 8  |-  ( ( R  e.  CRing  /\  I  e.  N )  ->  I  e.  N )
28273ad2ant1 1029 . . . . . . 7  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  ->  I  e.  N )
29 eqid 2451 . . . . . . . 8  |-  ( 1r
`  A )  =  ( 1r `  A
)
305, 6, 23, 29ma1repvcl 19595 . . . . . . 7  |-  ( ( ( R  e.  Ring  /\  N  e.  Fin )  /\  ( Z  e.  V  /\  I  e.  N
) )  ->  (
( ( 1r `  A ) ( N matRepV  R ) Z ) `
 I )  e.  B )
3116, 26, 28, 30syl12anc 1266 . . . . . 6  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( ( ( 1r
`  A ) ( N matRepV  R ) Z ) `
 I )  e.  B )
3211, 31syl5eqel 2533 . . . . 5  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  ->  E  e.  B )
3310, 32ffvelrnd 6023 . . . 4  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( D `  E
)  e.  ( Base `  R ) )
34 simpr 463 . . . . 5  |-  ( ( ( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) )  ->  ( D `  X )  e.  (Unit `  R )
)
35343ad2ant3 1031 . . . 4  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( D `  X
)  e.  (Unit `  R ) )
36 eqid 2451 . . . . 5  |-  (Unit `  R )  =  (Unit `  R )
37 cramerimp.q . . . . 5  |-  ./  =  (/r
`  R )
38 eqid 2451 . . . . 5  |-  ( .r
`  R )  =  ( .r `  R
)
397, 36, 37, 38dvrcan3 17920 . . . 4  |-  ( ( R  e.  Ring  /\  ( D `  E )  e.  ( Base `  R
)  /\  ( D `  X )  e.  (Unit `  R ) )  -> 
( ( ( D `
 E ) ( .r `  R ) ( D `  X
) )  ./  ( D `  X )
)  =  ( D `
 E ) )
403, 33, 35, 39syl3anc 1268 . . 3  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( ( ( D `
 E ) ( .r `  R ) ( D `  X
) )  ./  ( D `  X )
)  =  ( D `
 E ) )
41 simpl 459 . . . . . 6  |-  ( ( R  e.  CRing  /\  I  e.  N )  ->  R  e.  CRing )
42413ad2ant1 1029 . . . . 5  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  ->  R  e.  CRing )
437, 36unitcl 17887 . . . . . . 7  |-  ( ( D `  X )  e.  (Unit `  R
)  ->  ( D `  X )  e.  (
Base `  R )
)
4443adantl 468 . . . . . 6  |-  ( ( ( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) )  ->  ( D `  X )  e.  ( Base `  R
) )
45443ad2ant3 1031 . . . . 5  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( D `  X
)  e.  ( Base `  R ) )
467, 38crngcom 17795 . . . . 5  |-  ( ( R  e.  CRing  /\  ( D `  E )  e.  ( Base `  R
)  /\  ( D `  X )  e.  (
Base `  R )
)  ->  ( ( D `  E )
( .r `  R
) ( D `  X ) )  =  ( ( D `  X ) ( .r
`  R ) ( D `  E ) ) )
4742, 33, 45, 46syl3anc 1268 . . . 4  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( ( D `  E ) ( .r
`  R ) ( D `  X ) )  =  ( ( D `  X ) ( .r `  R
) ( D `  E ) ) )
4847oveq1d 6305 . . 3  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( ( ( D `
 E ) ( .r `  R ) ( D `  X
) )  ./  ( D `  X )
)  =  ( ( ( D `  X
) ( .r `  R ) ( D `
 E ) ) 
./  ( D `  X ) ) )
4914adantl 468 . . . . . 6  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V ) )  ->  N  e.  Fin )
5041adantr 467 . . . . . 6  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V ) )  ->  R  e.  CRing )
5127adantr 467 . . . . . 6  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V ) )  ->  I  e.  N )
5249, 50, 513jca 1188 . . . . 5  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V ) )  -> 
( N  e.  Fin  /\  R  e.  CRing  /\  I  e.  N ) )
53523adant3 1028 . . . 4  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( N  e.  Fin  /\  R  e.  CRing  /\  I  e.  N ) )
545, 6, 23, 11, 4cramerimplem1 19708 . . . 4  |-  ( ( ( N  e.  Fin  /\  R  e.  CRing  /\  I  e.  N )  /\  Z  e.  V )  ->  ( D `  E )  =  ( Z `  I ) )
5553, 26, 54syl2anc 667 . . 3  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( D `  E
)  =  ( Z `
 I ) )
5640, 48, 553eqtr3rd 2494 . 2  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( Z `  I
)  =  ( ( ( D `  X
) ( .r `  R ) ( D `
 E ) ) 
./  ( D `  X ) ) )
57 cramerimp.h . . . . 5  |-  H  =  ( ( X ( N matRepV  R ) Y ) `
 I )
585, 6, 23, 11, 57, 24, 4, 38cramerimplem3 19710 . . . 4  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  ( X  .x.  Z )  =  Y )  ->  (
( D `  X
) ( .r `  R ) ( D `
 E ) )  =  ( D `  H ) )
59583adant3r 1265 . . 3  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( ( D `  X ) ( .r
`  R ) ( D `  E ) )  =  ( D `
 H ) )
6059oveq1d 6305 . 2  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( ( ( D `
 X ) ( .r `  R ) ( D `  E
) )  ./  ( D `  X )
)  =  ( ( D `  H ) 
./  ( D `  X ) ) )
6156, 60eqtrd 2485 1  |-  ( ( ( R  e.  CRing  /\  I  e.  N )  /\  ( X  e.  B  /\  Y  e.  V )  /\  (
( X  .x.  Z
)  =  Y  /\  ( D `  X )  e.  (Unit `  R
) ) )  -> 
( Z `  I
)  =  ( ( D `  H ) 
./  ( D `  X ) ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    /\ wa 371    /\ w3a 985    = wceq 1444    e. wcel 1887    =/= wne 2622   _Vcvv 3045   (/)c0 3731   <.cop 3974   -->wf 5578   ` cfv 5582  (class class class)co 6290    ^m cmap 7472   Fincfn 7569   Basecbs 15121   .rcmulr 15191   1rcur 17735   Ringcrg 17780   CRingccrg 17781  Unitcui 17867  /rcdvr 17910   Mat cmat 19432   maVecMul cmvmul 19565   matRepV cmatrepV 19582   maDet cmdat 19609
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1669  ax-4 1682  ax-5 1758  ax-6 1805  ax-7 1851  ax-8 1889  ax-9 1896  ax-10 1915  ax-11 1920  ax-12 1933  ax-13 2091  ax-ext 2431  ax-rep 4515  ax-sep 4525  ax-nul 4534  ax-pow 4581  ax-pr 4639  ax-un 6583  ax-inf2 8146  ax-cnex 9595  ax-resscn 9596  ax-1cn 9597  ax-icn 9598  ax-addcl 9599  ax-addrcl 9600  ax-mulcl 9601  ax-mulrcl 9602  ax-mulcom 9603  ax-addass 9604  ax-mulass 9605  ax-distr 9606  ax-i2m1 9607  ax-1ne0 9608  ax-1rid 9609  ax-rnegex 9610  ax-rrecex 9611  ax-cnre 9612  ax-pre-lttri 9613  ax-pre-lttrn 9614  ax-pre-ltadd 9615  ax-pre-mulgt0 9616  ax-addf 9618  ax-mulf 9619
This theorem depends on definitions:  df-bi 189  df-or 372  df-an 373  df-3or 986  df-3an 987  df-xor 1406  df-tru 1447  df-fal 1450  df-ex 1664  df-nf 1668  df-sb 1798  df-eu 2303  df-mo 2304  df-clab 2438  df-cleq 2444  df-clel 2447  df-nfc 2581  df-ne 2624  df-nel 2625  df-ral 2742  df-rex 2743  df-reu 2744  df-rmo 2745  df-rab 2746  df-v 3047  df-sbc 3268  df-csb 3364  df-dif 3407  df-un 3409  df-in 3411  df-ss 3418  df-pss 3420  df-nul 3732  df-if 3882  df-pw 3953  df-sn 3969  df-pr 3971  df-tp 3973  df-op 3975  df-ot 3977  df-uni 4199  df-int 4235  df-iun 4280  df-iin 4281  df-br 4403  df-opab 4462  df-mpt 4463  df-tr 4498  df-eprel 4745  df-id 4749  df-po 4755  df-so 4756  df-fr 4793  df-se 4794  df-we 4795  df-xp 4840  df-rel 4841  df-cnv 4842  df-co 4843  df-dm 4844  df-rn 4845  df-res 4846  df-ima 4847  df-pred 5380  df-ord 5426  df-on 5427  df-lim 5428  df-suc 5429  df-iota 5546  df-fun 5584  df-fn 5585  df-f 5586  df-f1 5587  df-fo 5588  df-f1o 5589  df-fv 5590  df-isom 5591  df-riota 6252  df-ov 6293  df-oprab 6294  df-mpt2 6295  df-of 6531  df-om 6693  df-1st 6793  df-2nd 6794  df-supp 6915  df-tpos 6973  df-wrecs 7028  df-recs 7090  df-rdg 7128  df-1o 7182  df-2o 7183  df-oadd 7186  df-er 7363  df-map 7474  df-pm 7475  df-ixp 7523  df-en 7570  df-dom 7571  df-sdom 7572  df-fin 7573  df-fsupp 7884  df-sup 7956  df-oi 8025  df-card 8373  df-cda 8598  df-pnf 9677  df-mnf 9678  df-xr 9679  df-ltxr 9680  df-le 9681  df-sub 9862  df-neg 9863  df-div 10270  df-nn 10610  df-2 10668  df-3 10669  df-4 10670  df-5 10671  df-6 10672  df-7 10673  df-8 10674  df-9 10675  df-10 10676  df-n0 10870  df-z 10938  df-dec 11052  df-uz 11160  df-rp 11303  df-fz 11785  df-fzo 11916  df-seq 12214  df-exp 12273  df-hash 12516  df-word 12664  df-lsw 12665  df-concat 12666  df-s1 12667  df-substr 12668  df-splice 12669  df-reverse 12670  df-s2 12944  df-struct 15123  df-ndx 15124  df-slot 15125  df-base 15126  df-sets 15127  df-ress 15128  df-plusg 15203  df-mulr 15204  df-starv 15205  df-sca 15206  df-vsca 15207  df-ip 15208  df-tset 15209  df-ple 15210  df-ds 15212  df-unif 15213  df-hom 15214  df-cco 15215  df-0g 15340  df-gsum 15341  df-prds 15346  df-pws 15348  df-mre 15492  df-mrc 15493  df-acs 15495  df-mgm 16488  df-sgrp 16527  df-mnd 16537  df-mhm 16582  df-submnd 16583  df-grp 16673  df-minusg 16674  df-sbg 16675  df-mulg 16676  df-subg 16814  df-ghm 16881  df-gim 16923  df-cntz 16971  df-oppg 16997  df-symg 17019  df-pmtr 17083  df-psgn 17132  df-evpm 17133  df-cmn 17432  df-abl 17433  df-mgp 17724  df-ur 17736  df-srg 17740  df-ring 17782  df-cring 17783  df-oppr 17851  df-dvdsr 17869  df-unit 17870  df-invr 17900  df-dvr 17911  df-rnghom 17943  df-drng 17977  df-subrg 18006  df-lmod 18093  df-lss 18156  df-sra 18395  df-rgmod 18396  df-cnfld 18971  df-zring 19040  df-zrh 19075  df-dsmm 19295  df-frlm 19310  df-mamu 19409  df-mat 19433  df-mvmul 19566  df-marrep 19583  df-marepv 19584  df-subma 19602  df-mdet 19610  df-minmar1 19660
This theorem is referenced by:  cramerlem1  19712
  Copyright terms: Public domain W3C validator