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

Theorem cramerimp 21289
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 𝐴 = (𝑁 Mat 𝑅)
cramerimp.b 𝐵 = (Base‘𝐴)
cramerimp.v 𝑉 = ((Base‘𝑅) ↑m 𝑁)
cramerimp.e 𝐸 = (((1r𝐴)(𝑁 matRepV 𝑅)𝑍)‘𝐼)
cramerimp.h 𝐻 = ((𝑋(𝑁 matRepV 𝑅)𝑌)‘𝐼)
cramerimp.x · = (𝑅 maVecMul ⟨𝑁, 𝑁⟩)
cramerimp.d 𝐷 = (𝑁 maDet 𝑅)
cramerimp.q / = (/r𝑅)
Assertion
Ref Expression
cramerimp (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑍𝐼) = ((𝐷𝐻) / (𝐷𝑋)))

Proof of Theorem cramerimp
StepHypRef Expression
1 crngring 19302 . . . . . 6 (𝑅 ∈ CRing → 𝑅 ∈ Ring)
21adantr 483 . . . . 5 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → 𝑅 ∈ Ring)
323ad2ant1 1129 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝑅 ∈ Ring)
4 cramerimp.d . . . . . . . 8 𝐷 = (𝑁 maDet 𝑅)
5 cramerimp.a . . . . . . . 8 𝐴 = (𝑁 Mat 𝑅)
6 cramerimp.b . . . . . . . 8 𝐵 = (Base‘𝐴)
7 eqid 2821 . . . . . . . 8 (Base‘𝑅) = (Base‘𝑅)
84, 5, 6, 7mdetf 21198 . . . . . . 7 (𝑅 ∈ CRing → 𝐷:𝐵⟶(Base‘𝑅))
98adantr 483 . . . . . 6 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → 𝐷:𝐵⟶(Base‘𝑅))
1093ad2ant1 1129 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝐷:𝐵⟶(Base‘𝑅))
11 cramerimp.e . . . . . 6 𝐸 = (((1r𝐴)(𝑁 matRepV 𝑅)𝑍)‘𝐼)
125, 6matrcl 21015 . . . . . . . . . . 11 (𝑋𝐵 → (𝑁 ∈ Fin ∧ 𝑅 ∈ V))
1312simpld 497 . . . . . . . . . 10 (𝑋𝐵𝑁 ∈ Fin)
1413adantr 483 . . . . . . . . 9 ((𝑋𝐵𝑌𝑉) → 𝑁 ∈ Fin)
152, 14anim12i 614 . . . . . . . 8 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → (𝑅 ∈ Ring ∧ 𝑁 ∈ Fin))
16153adant3 1128 . . . . . . 7 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑅 ∈ Ring ∧ 𝑁 ∈ Fin))
17 ne0i 4300 . . . . . . . . . . 11 (𝐼𝑁𝑁 ≠ ∅)
181, 17anim12ci 615 . . . . . . . . . 10 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → (𝑁 ≠ ∅ ∧ 𝑅 ∈ Ring))
1918anim1i 616 . . . . . . . . 9 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → ((𝑁 ≠ ∅ ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐵𝑌𝑉)))
20193adant3 1128 . . . . . . . 8 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → ((𝑁 ≠ ∅ ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐵𝑌𝑉)))
21 simpl 485 . . . . . . . . 9 (((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅)) → (𝑋 · 𝑍) = 𝑌)
22213ad2ant3 1131 . . . . . . . 8 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑋 · 𝑍) = 𝑌)
23 cramerimp.v . . . . . . . . 9 𝑉 = ((Base‘𝑅) ↑m 𝑁)
24 cramerimp.x . . . . . . . . 9 · = (𝑅 maVecMul ⟨𝑁, 𝑁⟩)
255, 6, 23, 24slesolvec 21282 . . . . . . . 8 (((𝑁 ≠ ∅ ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐵𝑌𝑉)) → ((𝑋 · 𝑍) = 𝑌𝑍𝑉))
2620, 22, 25sylc 65 . . . . . . 7 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝑍𝑉)
27 simpr 487 . . . . . . . 8 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → 𝐼𝑁)
28273ad2ant1 1129 . . . . . . 7 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝐼𝑁)
29 eqid 2821 . . . . . . . 8 (1r𝐴) = (1r𝐴)
305, 6, 23, 29ma1repvcl 21173 . . . . . . 7 (((𝑅 ∈ Ring ∧ 𝑁 ∈ Fin) ∧ (𝑍𝑉𝐼𝑁)) → (((1r𝐴)(𝑁 matRepV 𝑅)𝑍)‘𝐼) ∈ 𝐵)
3116, 26, 28, 30syl12anc 834 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (((1r𝐴)(𝑁 matRepV 𝑅)𝑍)‘𝐼) ∈ 𝐵)
3211, 31eqeltrid 2917 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝐸𝐵)
3310, 32ffvelrnd 6847 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝐷𝐸) ∈ (Base‘𝑅))
34 simpr 487 . . . . 5 (((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅)) → (𝐷𝑋) ∈ (Unit‘𝑅))
35343ad2ant3 1131 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝐷𝑋) ∈ (Unit‘𝑅))
36 eqid 2821 . . . . 5 (Unit‘𝑅) = (Unit‘𝑅)
37 cramerimp.q . . . . 5 / = (/r𝑅)
38 eqid 2821 . . . . 5 (.r𝑅) = (.r𝑅)
397, 36, 37, 38dvrcan3 19436 . . . 4 ((𝑅 ∈ Ring ∧ (𝐷𝐸) ∈ (Base‘𝑅) ∧ (𝐷𝑋) ∈ (Unit‘𝑅)) → (((𝐷𝐸)(.r𝑅)(𝐷𝑋)) / (𝐷𝑋)) = (𝐷𝐸))
403, 33, 35, 39syl3anc 1367 . . 3 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (((𝐷𝐸)(.r𝑅)(𝐷𝑋)) / (𝐷𝑋)) = (𝐷𝐸))
41 simpl 485 . . . . . 6 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → 𝑅 ∈ CRing)
42413ad2ant1 1129 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝑅 ∈ CRing)
437, 36unitcl 19403 . . . . . . 7 ((𝐷𝑋) ∈ (Unit‘𝑅) → (𝐷𝑋) ∈ (Base‘𝑅))
4443adantl 484 . . . . . 6 (((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅)) → (𝐷𝑋) ∈ (Base‘𝑅))
45443ad2ant3 1131 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝐷𝑋) ∈ (Base‘𝑅))
467, 38crngcom 19306 . . . . 5 ((𝑅 ∈ CRing ∧ (𝐷𝐸) ∈ (Base‘𝑅) ∧ (𝐷𝑋) ∈ (Base‘𝑅)) → ((𝐷𝐸)(.r𝑅)(𝐷𝑋)) = ((𝐷𝑋)(.r𝑅)(𝐷𝐸)))
4742, 33, 45, 46syl3anc 1367 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → ((𝐷𝐸)(.r𝑅)(𝐷𝑋)) = ((𝐷𝑋)(.r𝑅)(𝐷𝐸)))
4847oveq1d 7165 . . 3 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (((𝐷𝐸)(.r𝑅)(𝐷𝑋)) / (𝐷𝑋)) = (((𝐷𝑋)(.r𝑅)(𝐷𝐸)) / (𝐷𝑋)))
4914adantl 484 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → 𝑁 ∈ Fin)
5041adantr 483 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → 𝑅 ∈ CRing)
5127adantr 483 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → 𝐼𝑁)
5249, 50, 513jca 1124 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → (𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝐼𝑁))
53523adant3 1128 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝐼𝑁))
545, 23, 11, 4cramerimplem1 21286 . . . 4 (((𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ 𝑍𝑉) → (𝐷𝐸) = (𝑍𝐼))
5553, 26, 54syl2anc 586 . . 3 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝐷𝐸) = (𝑍𝐼))
5640, 48, 553eqtr3rd 2865 . 2 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑍𝐼) = (((𝐷𝑋)(.r𝑅)(𝐷𝐸)) / (𝐷𝑋)))
57 cramerimp.h . . . . 5 𝐻 = ((𝑋(𝑁 matRepV 𝑅)𝑌)‘𝐼)
585, 6, 23, 11, 57, 24, 4, 38cramerimplem3 21288 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ (𝑋 · 𝑍) = 𝑌) → ((𝐷𝑋)(.r𝑅)(𝐷𝐸)) = (𝐷𝐻))
59583adant3r 1177 . . 3 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → ((𝐷𝑋)(.r𝑅)(𝐷𝐸)) = (𝐷𝐻))
6059oveq1d 7165 . 2 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (((𝐷𝑋)(.r𝑅)(𝐷𝐸)) / (𝐷𝑋)) = ((𝐷𝐻) / (𝐷𝑋)))
6156, 60eqtrd 2856 1 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑍𝐼) = ((𝐷𝐻) / (𝐷𝑋)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 398  w3a 1083   = wceq 1533  wcel 2110  wne 3016  Vcvv 3495  c0 4291  cop 4567  wf 6346  cfv 6350  (class class class)co 7150  m cmap 8400  Fincfn 8503  Basecbs 16477  .rcmulr 16560  1rcur 19245  Ringcrg 19291  CRingccrg 19292  Unitcui 19383  /rcdvr 19426   Mat cmat 21010   maVecMul cmvmul 21143   matRepV cmatrepV 21160   maDet cmdat 21187
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1792  ax-4 1806  ax-5 1907  ax-6 1966  ax-7 2011  ax-8 2112  ax-9 2120  ax-10 2141  ax-11 2156  ax-12 2172  ax-ext 2793  ax-rep 5183  ax-sep 5196  ax-nul 5203  ax-pow 5259  ax-pr 5322  ax-un 7455  ax-cnex 10587  ax-resscn 10588  ax-1cn 10589  ax-icn 10590  ax-addcl 10591  ax-addrcl 10592  ax-mulcl 10593  ax-mulrcl 10594  ax-mulcom 10595  ax-addass 10596  ax-mulass 10597  ax-distr 10598  ax-i2m1 10599  ax-1ne0 10600  ax-1rid 10601  ax-rnegex 10602  ax-rrecex 10603  ax-cnre 10604  ax-pre-lttri 10605  ax-pre-lttrn 10606  ax-pre-ltadd 10607  ax-pre-mulgt0 10608  ax-addf 10610  ax-mulf 10611
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3or 1084  df-3an 1085  df-xor 1501  df-tru 1536  df-fal 1546  df-ex 1777  df-nf 1781  df-sb 2066  df-mo 2618  df-eu 2650  df-clab 2800  df-cleq 2814  df-clel 2893  df-nfc 2963  df-ne 3017  df-nel 3124  df-ral 3143  df-rex 3144  df-reu 3145  df-rmo 3146  df-rab 3147  df-v 3497  df-sbc 3773  df-csb 3884  df-dif 3939  df-un 3941  df-in 3943  df-ss 3952  df-pss 3954  df-nul 4292  df-if 4468  df-pw 4541  df-sn 4562  df-pr 4564  df-tp 4566  df-op 4568  df-ot 4570  df-uni 4833  df-int 4870  df-iun 4914  df-iin 4915  df-br 5060  df-opab 5122  df-mpt 5140  df-tr 5166  df-id 5455  df-eprel 5460  df-po 5469  df-so 5470  df-fr 5509  df-se 5510  df-we 5511  df-xp 5556  df-rel 5557  df-cnv 5558  df-co 5559  df-dm 5560  df-rn 5561  df-res 5562  df-ima 5563  df-pred 6143  df-ord 6189  df-on 6190  df-lim 6191  df-suc 6192  df-iota 6309  df-fun 6352  df-fn 6353  df-f 6354  df-f1 6355  df-fo 6356  df-f1o 6357  df-fv 6358  df-isom 6359  df-riota 7108  df-ov 7153  df-oprab 7154  df-mpo 7155  df-of 7403  df-om 7575  df-1st 7683  df-2nd 7684  df-supp 7825  df-tpos 7886  df-wrecs 7941  df-recs 8002  df-rdg 8040  df-1o 8096  df-2o 8097  df-oadd 8100  df-er 8283  df-map 8402  df-pm 8403  df-ixp 8456  df-en 8504  df-dom 8505  df-sdom 8506  df-fin 8507  df-fsupp 8828  df-sup 8900  df-oi 8968  df-card 9362  df-pnf 10671  df-mnf 10672  df-xr 10673  df-ltxr 10674  df-le 10675  df-sub 10866  df-neg 10867  df-div 11292  df-nn 11633  df-2 11694  df-3 11695  df-4 11696  df-5 11697  df-6 11698  df-7 11699  df-8 11700  df-9 11701  df-n0 11892  df-xnn0 11962  df-z 11976  df-dec 12093  df-uz 12238  df-rp 12384  df-fz 12887  df-fzo 13028  df-seq 13364  df-exp 13424  df-hash 13685  df-word 13856  df-lsw 13909  df-concat 13917  df-s1 13944  df-substr 13997  df-pfx 14027  df-splice 14106  df-reverse 14115  df-s2 14204  df-struct 16479  df-ndx 16480  df-slot 16481  df-base 16483  df-sets 16484  df-ress 16485  df-plusg 16572  df-mulr 16573  df-starv 16574  df-sca 16575  df-vsca 16576  df-ip 16577  df-tset 16578  df-ple 16579  df-ds 16581  df-unif 16582  df-hom 16583  df-cco 16584  df-0g 16709  df-gsum 16710  df-prds 16715  df-pws 16717  df-mre 16851  df-mrc 16852  df-acs 16854  df-mgm 17846  df-sgrp 17895  df-mnd 17906  df-mhm 17950  df-submnd 17951  df-efmnd 18028  df-grp 18100  df-minusg 18101  df-sbg 18102  df-mulg 18219  df-subg 18270  df-ghm 18350  df-gim 18393  df-cntz 18441  df-oppg 18468  df-symg 18490  df-pmtr 18564  df-psgn 18613  df-evpm 18614  df-cmn 18902  df-abl 18903  df-mgp 19234  df-ur 19246  df-srg 19250  df-ring 19293  df-cring 19294  df-oppr 19367  df-dvdsr 19385  df-unit 19386  df-invr 19416  df-dvr 19427  df-rnghom 19461  df-drng 19498  df-subrg 19527  df-lmod 19630  df-lss 19698  df-sra 19938  df-rgmod 19939  df-cnfld 20540  df-zring 20612  df-zrh 20645  df-dsmm 20870  df-frlm 20885  df-mamu 20989  df-mat 21011  df-mvmul 21144  df-marrep 21161  df-marepv 21162  df-subma 21180  df-mdet 21188  df-minmar1 21238
This theorem is referenced by:  cramerlem1  21290
  Copyright terms: Public domain W3C validator