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

Theorem cramerimp 20311
 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‘𝑅) ↑𝑚 𝑁)
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 18381 . . . . . 6 (𝑅 ∈ CRing → 𝑅 ∈ Ring)
21adantr 480 . . . . 5 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → 𝑅 ∈ Ring)
323ad2ant1 1075 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝑅 ∈ Ring)
4 cramerimp.d . . . . . . . 8 𝐷 = (𝑁 maDet 𝑅)
5 cramerimp.a . . . . . . . 8 𝐴 = (𝑁 Mat 𝑅)
6 cramerimp.b . . . . . . . 8 𝐵 = (Base‘𝐴)
7 eqid 2610 . . . . . . . 8 (Base‘𝑅) = (Base‘𝑅)
84, 5, 6, 7mdetf 20220 . . . . . . 7 (𝑅 ∈ CRing → 𝐷:𝐵⟶(Base‘𝑅))
98adantr 480 . . . . . 6 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → 𝐷:𝐵⟶(Base‘𝑅))
1093ad2ant1 1075 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝐷:𝐵⟶(Base‘𝑅))
11 cramerimp.e . . . . . 6 𝐸 = (((1r𝐴)(𝑁 matRepV 𝑅)𝑍)‘𝐼)
125, 6matrcl 20037 . . . . . . . . . . 11 (𝑋𝐵 → (𝑁 ∈ Fin ∧ 𝑅 ∈ V))
1312simpld 474 . . . . . . . . . 10 (𝑋𝐵𝑁 ∈ Fin)
1413adantr 480 . . . . . . . . 9 ((𝑋𝐵𝑌𝑉) → 𝑁 ∈ Fin)
152, 14anim12i 588 . . . . . . . 8 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → (𝑅 ∈ Ring ∧ 𝑁 ∈ Fin))
16153adant3 1074 . . . . . . 7 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑅 ∈ Ring ∧ 𝑁 ∈ Fin))
17 ne0i 3880 . . . . . . . . . . 11 (𝐼𝑁𝑁 ≠ ∅)
181, 17anim12ci 589 . . . . . . . . . 10 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → (𝑁 ≠ ∅ ∧ 𝑅 ∈ Ring))
1918anim1i 590 . . . . . . . . 9 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → ((𝑁 ≠ ∅ ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐵𝑌𝑉)))
20193adant3 1074 . . . . . . . 8 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → ((𝑁 ≠ ∅ ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐵𝑌𝑉)))
21 simpl 472 . . . . . . . . 9 (((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅)) → (𝑋 · 𝑍) = 𝑌)
22213ad2ant3 1077 . . . . . . . 8 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑋 · 𝑍) = 𝑌)
23 cramerimp.v . . . . . . . . 9 𝑉 = ((Base‘𝑅) ↑𝑚 𝑁)
24 cramerimp.x . . . . . . . . 9 · = (𝑅 maVecMul ⟨𝑁, 𝑁⟩)
255, 6, 23, 24slesolvec 20304 . . . . . . . 8 (((𝑁 ≠ ∅ ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐵𝑌𝑉)) → ((𝑋 · 𝑍) = 𝑌𝑍𝑉))
2620, 22, 25sylc 63 . . . . . . 7 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝑍𝑉)
27 simpr 476 . . . . . . . 8 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → 𝐼𝑁)
28273ad2ant1 1075 . . . . . . 7 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝐼𝑁)
29 eqid 2610 . . . . . . . 8 (1r𝐴) = (1r𝐴)
305, 6, 23, 29ma1repvcl 20195 . . . . . . 7 (((𝑅 ∈ Ring ∧ 𝑁 ∈ Fin) ∧ (𝑍𝑉𝐼𝑁)) → (((1r𝐴)(𝑁 matRepV 𝑅)𝑍)‘𝐼) ∈ 𝐵)
3116, 26, 28, 30syl12anc 1316 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (((1r𝐴)(𝑁 matRepV 𝑅)𝑍)‘𝐼) ∈ 𝐵)
3211, 31syl5eqel 2692 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝐸𝐵)
3310, 32ffvelrnd 6268 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝐷𝐸) ∈ (Base‘𝑅))
34 simpr 476 . . . . 5 (((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅)) → (𝐷𝑋) ∈ (Unit‘𝑅))
35343ad2ant3 1077 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝐷𝑋) ∈ (Unit‘𝑅))
36 eqid 2610 . . . . 5 (Unit‘𝑅) = (Unit‘𝑅)
37 cramerimp.q . . . . 5 / = (/r𝑅)
38 eqid 2610 . . . . 5 (.r𝑅) = (.r𝑅)
397, 36, 37, 38dvrcan3 18515 . . . 4 ((𝑅 ∈ Ring ∧ (𝐷𝐸) ∈ (Base‘𝑅) ∧ (𝐷𝑋) ∈ (Unit‘𝑅)) → (((𝐷𝐸)(.r𝑅)(𝐷𝑋)) / (𝐷𝑋)) = (𝐷𝐸))
403, 33, 35, 39syl3anc 1318 . . 3 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (((𝐷𝐸)(.r𝑅)(𝐷𝑋)) / (𝐷𝑋)) = (𝐷𝐸))
41 simpl 472 . . . . . 6 ((𝑅 ∈ CRing ∧ 𝐼𝑁) → 𝑅 ∈ CRing)
42413ad2ant1 1075 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → 𝑅 ∈ CRing)
437, 36unitcl 18482 . . . . . . 7 ((𝐷𝑋) ∈ (Unit‘𝑅) → (𝐷𝑋) ∈ (Base‘𝑅))
4443adantl 481 . . . . . 6 (((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅)) → (𝐷𝑋) ∈ (Base‘𝑅))
45443ad2ant3 1077 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝐷𝑋) ∈ (Base‘𝑅))
467, 38crngcom 18385 . . . . 5 ((𝑅 ∈ CRing ∧ (𝐷𝐸) ∈ (Base‘𝑅) ∧ (𝐷𝑋) ∈ (Base‘𝑅)) → ((𝐷𝐸)(.r𝑅)(𝐷𝑋)) = ((𝐷𝑋)(.r𝑅)(𝐷𝐸)))
4742, 33, 45, 46syl3anc 1318 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → ((𝐷𝐸)(.r𝑅)(𝐷𝑋)) = ((𝐷𝑋)(.r𝑅)(𝐷𝐸)))
4847oveq1d 6564 . . 3 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (((𝐷𝐸)(.r𝑅)(𝐷𝑋)) / (𝐷𝑋)) = (((𝐷𝑋)(.r𝑅)(𝐷𝐸)) / (𝐷𝑋)))
4914adantl 481 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → 𝑁 ∈ Fin)
5041adantr 480 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → 𝑅 ∈ CRing)
5127adantr 480 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → 𝐼𝑁)
5249, 50, 513jca 1235 . . . . 5 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉)) → (𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝐼𝑁))
53523adant3 1074 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝐼𝑁))
545, 6, 23, 11, 4cramerimplem1 20308 . . . 4 (((𝑁 ∈ Fin ∧ 𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ 𝑍𝑉) → (𝐷𝐸) = (𝑍𝐼))
5553, 26, 54syl2anc 691 . . 3 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝐷𝐸) = (𝑍𝐼))
5640, 48, 553eqtr3rd 2653 . 2 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑍𝐼) = (((𝐷𝑋)(.r𝑅)(𝐷𝐸)) / (𝐷𝑋)))
57 cramerimp.h . . . . 5 𝐻 = ((𝑋(𝑁 matRepV 𝑅)𝑌)‘𝐼)
585, 6, 23, 11, 57, 24, 4, 38cramerimplem3 20310 . . . 4 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ (𝑋 · 𝑍) = 𝑌) → ((𝐷𝑋)(.r𝑅)(𝐷𝐸)) = (𝐷𝐻))
59583adant3r 1315 . . 3 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → ((𝐷𝑋)(.r𝑅)(𝐷𝐸)) = (𝐷𝐻))
6059oveq1d 6564 . 2 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (((𝐷𝑋)(.r𝑅)(𝐷𝐸)) / (𝐷𝑋)) = ((𝐷𝐻) / (𝐷𝑋)))
6156, 60eqtrd 2644 1 (((𝑅 ∈ CRing ∧ 𝐼𝑁) ∧ (𝑋𝐵𝑌𝑉) ∧ ((𝑋 · 𝑍) = 𝑌 ∧ (𝐷𝑋) ∈ (Unit‘𝑅))) → (𝑍𝐼) = ((𝐷𝐻) / (𝐷𝑋)))
 Colors of variables: wff setvar class Syntax hints:   → wi 4   ∧ wa 383   ∧ w3a 1031   = wceq 1475   ∈ wcel 1977   ≠ wne 2780  Vcvv 3173  ∅c0 3874  ⟨cop 4131  ⟶wf 5800  ‘cfv 5804  (class class class)co 6549   ↑𝑚 cmap 7744  Fincfn 7841  Basecbs 15695  .rcmulr 15769  1rcur 18324  Ringcrg 18370  CRingccrg 18371  Unitcui 18462  /rcdvr 18505   Mat cmat 20032   maVecMul cmvmul 20165   matRepV cmatrepV 20182   maDet cmdat 20209 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-8 1979  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-rep 4699  ax-sep 4709  ax-nul 4717  ax-pow 4769  ax-pr 4833  ax-un 6847  ax-inf2 8421  ax-cnex 9871  ax-resscn 9872  ax-1cn 9873  ax-icn 9874  ax-addcl 9875  ax-addrcl 9876  ax-mulcl 9877  ax-mulrcl 9878  ax-mulcom 9879  ax-addass 9880  ax-mulass 9881  ax-distr 9882  ax-i2m1 9883  ax-1ne0 9884  ax-1rid 9885  ax-rnegex 9886  ax-rrecex 9887  ax-cnre 9888  ax-pre-lttri 9889  ax-pre-lttrn 9890  ax-pre-ltadd 9891  ax-pre-mulgt0 9892  ax-addf 9894  ax-mulf 9895 This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3or 1032  df-3an 1033  df-xor 1457  df-tru 1478  df-fal 1481  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ne 2782  df-nel 2783  df-ral 2901  df-rex 2902  df-reu 2903  df-rmo 2904  df-rab 2905  df-v 3175  df-sbc 3403  df-csb 3500  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-pss 3556  df-nul 3875  df-if 4037  df-pw 4110  df-sn 4126  df-pr 4128  df-tp 4130  df-op 4132  df-ot 4134  df-uni 4373  df-int 4411  df-iun 4457  df-iin 4458  df-br 4584  df-opab 4644  df-mpt 4645  df-tr 4681  df-eprel 4949  df-id 4953  df-po 4959  df-so 4960  df-fr 4997  df-se 4998  df-we 4999  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-dm 5048  df-rn 5049  df-res 5050  df-ima 5051  df-pred 5597  df-ord 5643  df-on 5644  df-lim 5645  df-suc 5646  df-iota 5768  df-fun 5806  df-fn 5807  df-f 5808  df-f1 5809  df-fo 5810  df-f1o 5811  df-fv 5812  df-isom 5813  df-riota 6511  df-ov 6552  df-oprab 6553  df-mpt2 6554  df-of 6795  df-om 6958  df-1st 7059  df-2nd 7060  df-supp 7183  df-tpos 7239  df-wrecs 7294  df-recs 7355  df-rdg 7393  df-1o 7447  df-2o 7448  df-oadd 7451  df-er 7629  df-map 7746  df-pm 7747  df-ixp 7795  df-en 7842  df-dom 7843  df-sdom 7844  df-fin 7845  df-fsupp 8159  df-sup 8231  df-oi 8298  df-card 8648  df-pnf 9955  df-mnf 9956  df-xr 9957  df-ltxr 9958  df-le 9959  df-sub 10147  df-neg 10148  df-div 10564  df-nn 10898  df-2 10956  df-3 10957  df-4 10958  df-5 10959  df-6 10960  df-7 10961  df-8 10962  df-9 10963  df-n0 11170  df-xnn0 11241  df-z 11255  df-dec 11370  df-uz 11564  df-rp 11709  df-fz 12198  df-fzo 12335  df-seq 12664  df-exp 12723  df-hash 12980  df-word 13154  df-lsw 13155  df-concat 13156  df-s1 13157  df-substr 13158  df-splice 13159  df-reverse 13160  df-s2 13444  df-struct 15697  df-ndx 15698  df-slot 15699  df-base 15700  df-sets 15701  df-ress 15702  df-plusg 15781  df-mulr 15782  df-starv 15783  df-sca 15784  df-vsca 15785  df-ip 15786  df-tset 15787  df-ple 15788  df-ds 15791  df-unif 15792  df-hom 15793  df-cco 15794  df-0g 15925  df-gsum 15926  df-prds 15931  df-pws 15933  df-mre 16069  df-mrc 16070  df-acs 16072  df-mgm 17065  df-sgrp 17107  df-mnd 17118  df-mhm 17158  df-submnd 17159  df-grp 17248  df-minusg 17249  df-sbg 17250  df-mulg 17364  df-subg 17414  df-ghm 17481  df-gim 17524  df-cntz 17573  df-oppg 17599  df-symg 17621  df-pmtr 17685  df-psgn 17734  df-evpm 17735  df-cmn 18018  df-abl 18019  df-mgp 18313  df-ur 18325  df-srg 18329  df-ring 18372  df-cring 18373  df-oppr 18446  df-dvdsr 18464  df-unit 18465  df-invr 18495  df-dvr 18506  df-rnghom 18538  df-drng 18572  df-subrg 18601  df-lmod 18688  df-lss 18754  df-sra 18993  df-rgmod 18994  df-cnfld 19568  df-zring 19638  df-zrh 19671  df-dsmm 19895  df-frlm 19910  df-mamu 20009  df-mat 20033  df-mvmul 20166  df-marrep 20183  df-marepv 20184  df-subma 20202  df-mdet 20210  df-minmar1 20260 This theorem is referenced by:  cramerlem1  20312
 Copyright terms: Public domain W3C validator