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

Theorem cramerimp 21287
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 19300 . . . . . 6 (𝑅 ∈ CRing → 𝑅 ∈ Ring)
21adantr 483 . . . . 5 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → 𝑅 ∈ Ring)
323ad2ant1 1128 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝑅 ∈ Ring)
4 cramerimp.d . . . . . . . 8 𝐷 = (𝑁 maDet 𝑅)
5 cramerimp.a . . . . . . . 8 𝐴 = (𝑁 Mat 𝑅)
6 cramerimp.b . . . . . . . 8 𝐵 = (Base‘𝐴)
7 eqid 2819 . . . . . . . 8 (Base‘𝑅) = (Base‘𝑅)
84, 5, 6, 7mdetf 21196 . . . . . . 7 (𝑅 ∈ CRing → 𝐷:𝐵⟶(Base‘𝑅))
98adantr 483 . . . . . 6 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → 𝐷:𝐵⟶(Base‘𝑅))
1093ad2ant1 1128 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝐷:𝐵⟶(Base‘𝑅))
11 cramerimp.e . . . . . 6 𝐸 = (((1r𝐴)(𝑁 matRepV 𝑅)𝑍)‘𝐼)
125, 6matrcl 21013 . . . . . . . . . . 11 (𝑋𝐵 → (𝑁 ∈ Fin ∧ 𝑅 ∈ V))
1312simpld 497 . . . . . . . . . 10 (𝑋𝐵𝑁 ∈ Fin)
1413adantr 483 . . . . . . . . 9 ((𝑋𝐵𝑌𝑉) → 𝑁 ∈ Fin)
152, 14anim12i 614 . . . . . . . 8 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → (𝑅 ∈ Ring ∧ 𝑁 ∈ Fin))
16153adant3 1127 . . . . . . 7 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑅 ∈ Ring ∧ 𝑁 ∈ Fin))
17 ne0i 4298 . . . . . . . . . . 11 (𝐼𝑁𝑁 ≠ ∅)
181, 17anim12ci 615 . . . . . . . . . 10 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → (𝑁 ≠ ∅ ∧ 𝑅 ∈ Ring))
1918anim1i 616 . . . . . . . . 9 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → ((𝑁 ≠ ∅ ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐵𝑌𝑉)))
20193adant3 1127 . . . . . . . 8 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → ((𝑁 ≠ ∅ ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐵𝑌𝑉)))
21 simpl 485 . . . . . . . . 9 (((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅)) → (𝑋 · 𝑍) = 𝑌)
22213ad2ant3 1130 . . . . . . . 8 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑋 · 𝑍) = 𝑌)
23 cramerimp.v . . . . . . . . 9 𝑉 = ((Base‘𝑅) ↑m 𝑁)
24 cramerimp.x . . . . . . . . 9 · = (𝑅 maVecMul ⟨𝑁, 𝑁⟩)
255, 6, 23, 24slesolvec 21280 . . . . . . . 8 (((𝑁 ≠ ∅ ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐵𝑌𝑉)) → ((𝑋 · 𝑍) = 𝑌𝑍𝑉))
2620, 22, 25sylc 65 . . . . . . 7 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝑍𝑉)
27 simpr 487 . . . . . . . 8 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → 𝐼𝑁)
28273ad2ant1 1128 . . . . . . 7 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝐼𝑁)
29 eqid 2819 . . . . . . . 8 (1r𝐴) = (1r𝐴)
305, 6, 23, 29ma1repvcl 21171 . . . . . . 7 (((𝑅 ∈ Ring ∧ 𝑁 ∈ Fin) ∧ (𝑍𝑉𝐼𝑁)) → (((1r𝐴)(𝑁 matRepV 𝑅)𝑍)‘𝐼) ∈ 𝐵)
3116, 26, 28, 30syl12anc 834 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (((1r𝐴)(𝑁 matRepV 𝑅)𝑍)‘𝐼) ∈ 𝐵)
3211, 31eqeltrid 2915 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝐸𝐵)
3310, 32ffvelrnd 6845 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝐷𝐸) ∈ (Base‘𝑅))
34 simpr 487 . . . . 5 (((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅)) → (𝐷𝑋) ∈ (Unit‘𝑅))
35343ad2ant3 1130 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝐷𝑋) ∈ (Unit‘𝑅))
36 eqid 2819 . . . . 5 (Unit‘𝑅) = (Unit‘𝑅)
37 cramerimp.q . . . . 5 / = (/r𝑅)
38 eqid 2819 . . . . 5 (.r𝑅) = (.r𝑅)
397, 36, 37, 38dvrcan3 19434 . . . 4 ((𝑅 ∈ Ring ∧ (𝐷𝐸) ∈ (Base‘𝑅) ∧ (𝐷𝑋) ∈ (Unit‘𝑅)) → (((𝐷𝐸)(.r𝑅)(𝐷𝑋)) / (𝐷𝑋)) = (𝐷𝐸))
403, 33, 35, 39syl3anc 1366 . . 3 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (((𝐷𝐸)(.r𝑅)(𝐷𝑋)) / (𝐷𝑋)) = (𝐷𝐸))
41 simpl 485 . . . . . 6 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → 𝑅 ∈ CRing)
42413ad2ant1 1128 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝑅 ∈ CRing)
437, 36unitcl 19401 . . . . . . 7 ((𝐷𝑋) ∈ (Unit‘𝑅) → (𝐷𝑋) ∈ (Base‘𝑅))
4443adantl 484 . . . . . 6 (((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅)) → (𝐷𝑋) ∈ (Base‘𝑅))
45443ad2ant3 1130 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝐷𝑋) ∈ (Base‘𝑅))
467, 38crngcom 19304 . . . . 5 ((𝑅 ∈ CRing ∧ (𝐷𝐸) ∈ (Base‘𝑅) ∧ (𝐷𝑋) ∈ (Base‘𝑅)) → ((𝐷𝐸)(.r𝑅)(𝐷𝑋)) = ((𝐷𝑋)(.r𝑅)(𝐷𝐸)))
4742, 33, 45, 46syl3anc 1366 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → ((𝐷𝐸)(.r𝑅)(𝐷𝑋)) = ((𝐷𝑋)(.r𝑅)(𝐷𝐸)))
4847oveq1d 7163 . . 3 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (((𝐷𝐸)(.r𝑅)(𝐷𝑋)) / (𝐷𝑋)) = (((𝐷𝑋)(.r𝑅)(𝐷𝐸)) / (𝐷𝑋)))
4914adantl 484 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → 𝑁 ∈ Fin)
5041adantr 483 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → 𝑅 ∈ CRing)
5127adantr 483 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → 𝐼𝑁)
5249, 50, 513jca 1123 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → (𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝐼𝑁))
53523adant3 1127 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝐼𝑁))
545, 23, 11, 4cramerimplem1 21284 . . . 4 (((𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ 𝑍𝑉) → (𝐷𝐸) = (𝑍𝐼))
5553, 26, 54syl2anc 586 . . 3 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝐷𝐸) = (𝑍𝐼))
5640, 48, 553eqtr3rd 2863 . 2 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑍𝐼) = (((𝐷𝑋)(.r𝑅)(𝐷𝐸)) / (𝐷𝑋)))
57 cramerimp.h . . . . 5 𝐻 = ((𝑋(𝑁 matRepV 𝑅)𝑌)‘𝐼)
585, 6, 23, 11, 57, 24, 4, 38cramerimplem3 21286 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ (𝑋 · 𝑍) = 𝑌) → ((𝐷𝑋)(.r𝑅)(𝐷𝐸)) = (𝐷𝐻))
59583adant3r 1176 . . 3 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → ((𝐷𝑋)(.r𝑅)(𝐷𝐸)) = (𝐷𝐻))
6059oveq1d 7163 . 2 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (((𝐷𝑋)(.r𝑅)(𝐷𝐸)) / (𝐷𝑋)) = ((𝐷𝐻) / (𝐷𝑋)))
6156, 60eqtrd 2854 1 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑍𝐼) = ((𝐷𝐻) / (𝐷𝑋)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 398  w3a 1082   = wceq 1531  wcel 2108  wne 3014  Vcvv 3493  c0 4289  cop 4565  wf 6344  cfv 6348  (class class class)co 7148  m cmap 8398  Fincfn 8501  Basecbs 16475  .rcmulr 16558  1rcur 19243  Ringcrg 19289  CRingccrg 19290  Unitcui 19381  /rcdvr 19424   Mat cmat 21008   maVecMul cmvmul 21141   matRepV cmatrepV 21158   maDet cmdat 21185
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1790  ax-4 1804  ax-5 1905  ax-6 1964  ax-7 2009  ax-8 2110  ax-9 2118  ax-10 2139  ax-11 2154  ax-12 2170  ax-ext 2791  ax-rep 5181  ax-sep 5194  ax-nul 5201  ax-pow 5257  ax-pr 5320  ax-un 7453  ax-cnex 10585  ax-resscn 10586  ax-1cn 10587  ax-icn 10588  ax-addcl 10589  ax-addrcl 10590  ax-mulcl 10591  ax-mulrcl 10592  ax-mulcom 10593  ax-addass 10594  ax-mulass 10595  ax-distr 10596  ax-i2m1 10597  ax-1ne0 10598  ax-1rid 10599  ax-rnegex 10600  ax-rrecex 10601  ax-cnre 10602  ax-pre-lttri 10603  ax-pre-lttrn 10604  ax-pre-ltadd 10605  ax-pre-mulgt0 10606  ax-addf 10608  ax-mulf 10609
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3or 1083  df-3an 1084  df-xor 1499  df-tru 1534  df-fal 1544  df-ex 1775  df-nf 1779  df-sb 2064  df-mo 2616  df-eu 2648  df-clab 2798  df-cleq 2812  df-clel 2891  df-nfc 2961  df-ne 3015  df-nel 3122  df-ral 3141  df-rex 3142  df-reu 3143  df-rmo 3144  df-rab 3145  df-v 3495  df-sbc 3771  df-csb 3882  df-dif 3937  df-un 3939  df-in 3941  df-ss 3950  df-pss 3952  df-nul 4290  df-if 4466  df-pw 4539  df-sn 4560  df-pr 4562  df-tp 4564  df-op 4566  df-ot 4568  df-uni 4831  df-int 4868  df-iun 4912  df-iin 4913  df-br 5058  df-opab 5120  df-mpt 5138  df-tr 5164  df-id 5453  df-eprel 5458  df-po 5467  df-so 5468  df-fr 5507  df-se 5508  df-we 5509  df-xp 5554  df-rel 5555  df-cnv 5556  df-co 5557  df-dm 5558  df-rn 5559  df-res 5560  df-ima 5561  df-pred 6141  df-ord 6187  df-on 6188  df-lim 6189  df-suc 6190  df-iota 6307  df-fun 6350  df-fn 6351  df-f 6352  df-f1 6353  df-fo 6354  df-f1o 6355  df-fv 6356  df-isom 6357  df-riota 7106  df-ov 7151  df-oprab 7152  df-mpo 7153  df-of 7401  df-om 7573  df-1st 7681  df-2nd 7682  df-supp 7823  df-tpos 7884  df-wrecs 7939  df-recs 8000  df-rdg 8038  df-1o 8094  df-2o 8095  df-oadd 8098  df-er 8281  df-map 8400  df-pm 8401  df-ixp 8454  df-en 8502  df-dom 8503  df-sdom 8504  df-fin 8505  df-fsupp 8826  df-sup 8898  df-oi 8966  df-card 9360  df-pnf 10669  df-mnf 10670  df-xr 10671  df-ltxr 10672  df-le 10673  df-sub 10864  df-neg 10865  df-div 11290  df-nn 11631  df-2 11692  df-3 11693  df-4 11694  df-5 11695  df-6 11696  df-7 11697  df-8 11698  df-9 11699  df-n0 11890  df-xnn0 11960  df-z 11974  df-dec 12091  df-uz 12236  df-rp 12382  df-fz 12885  df-fzo 13026  df-seq 13362  df-exp 13422  df-hash 13683  df-word 13854  df-lsw 13907  df-concat 13915  df-s1 13942  df-substr 13995  df-pfx 14025  df-splice 14104  df-reverse 14113  df-s2 14202  df-struct 16477  df-ndx 16478  df-slot 16479  df-base 16481  df-sets 16482  df-ress 16483  df-plusg 16570  df-mulr 16571  df-starv 16572  df-sca 16573  df-vsca 16574  df-ip 16575  df-tset 16576  df-ple 16577  df-ds 16579  df-unif 16580  df-hom 16581  df-cco 16582  df-0g 16707  df-gsum 16708  df-prds 16713  df-pws 16715  df-mre 16849  df-mrc 16850  df-acs 16852  df-mgm 17844  df-sgrp 17893  df-mnd 17904  df-mhm 17948  df-submnd 17949  df-efmnd 18026  df-grp 18098  df-minusg 18099  df-sbg 18100  df-mulg 18217  df-subg 18268  df-ghm 18348  df-gim 18391  df-cntz 18439  df-oppg 18466  df-symg 18488  df-pmtr 18562  df-psgn 18611  df-evpm 18612  df-cmn 18900  df-abl 18901  df-mgp 19232  df-ur 19244  df-srg 19248  df-ring 19291  df-cring 19292  df-oppr 19365  df-dvdsr 19383  df-unit 19384  df-invr 19414  df-dvr 19425  df-rnghom 19459  df-drng 19496  df-subrg 19525  df-lmod 19628  df-lss 19696  df-sra 19936  df-rgmod 19937  df-cnfld 20538  df-zring 20610  df-zrh 20643  df-dsmm 20868  df-frlm 20883  df-mamu 20987  df-mat 21009  df-mvmul 21142  df-marrep 21159  df-marepv 21160  df-subma 21178  df-mdet 21186  df-minmar1 21236
This theorem is referenced by:  cramerlem1  21288
  Copyright terms: Public domain W3C validator