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

Theorem frlmbas 20444
Description: Base set of the free module. (Contributed by Stefan O'Rear, 1-Feb-2015.) (Revised by AV, 23-Jun-2019.)
Hypotheses
Ref Expression
frlmval.f 𝐹 = (𝑅 freeLMod 𝐼)
frlmbas.n 𝑁 = (Base‘𝑅)
frlmbas.z 0 = (0g𝑅)
frlmbas.b 𝐵 = {𝑘 ∈ (𝑁m 𝐼) ∣ 𝑘 finSupp 0 }
Assertion
Ref Expression
frlmbas ((𝑅𝑉𝐼𝑊) → 𝐵 = (Base‘𝐹))
Distinct variable groups:   𝑘,𝑁   𝑅,𝑘   𝑘,𝐼   𝑘,𝑊   𝑘,𝑉   0 ,𝑘
Allowed substitution hints:   𝐵(𝑘)   𝐹(𝑘)

Proof of Theorem frlmbas
Dummy variable 𝑥 is distinct from all other variables.
StepHypRef Expression
1 fvex 6658 . . . . 5 (ringLMod‘𝑅) ∈ V
2 fnconstg 6541 . . . . 5 ((ringLMod‘𝑅) ∈ V → (𝐼 × {(ringLMod‘𝑅)}) Fn 𝐼)
31, 2ax-mp 5 . . . 4 (𝐼 × {(ringLMod‘𝑅)}) Fn 𝐼
4 eqid 2798 . . . . 5 (𝑅Xs(𝐼 × {(ringLMod‘𝑅)})) = (𝑅Xs(𝐼 × {(ringLMod‘𝑅)}))
5 eqid 2798 . . . . 5 {𝑘 ∈ (Base‘(𝑅Xs(𝐼 × {(ringLMod‘𝑅)}))) ∣ dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) ∈ Fin} = {𝑘 ∈ (Base‘(𝑅Xs(𝐼 × {(ringLMod‘𝑅)}))) ∣ dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) ∈ Fin}
64, 5dsmmbas2 20426 . . . 4 (((𝐼 × {(ringLMod‘𝑅)}) Fn 𝐼𝐼𝑊) → {𝑘 ∈ (Base‘(𝑅Xs(𝐼 × {(ringLMod‘𝑅)}))) ∣ dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) ∈ Fin} = (Base‘(𝑅m (𝐼 × {(ringLMod‘𝑅)}))))
73, 6mpan 689 . . 3 (𝐼𝑊 → {𝑘 ∈ (Base‘(𝑅Xs(𝐼 × {(ringLMod‘𝑅)}))) ∣ dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) ∈ Fin} = (Base‘(𝑅m (𝐼 × {(ringLMod‘𝑅)}))))
87adantl 485 . 2 ((𝑅𝑉𝐼𝑊) → {𝑘 ∈ (Base‘(𝑅Xs(𝐼 × {(ringLMod‘𝑅)}))) ∣ dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) ∈ Fin} = (Base‘(𝑅m (𝐼 × {(ringLMod‘𝑅)}))))
9 frlmbas.b . . 3 𝐵 = {𝑘 ∈ (𝑁m 𝐼) ∣ 𝑘 finSupp 0 }
10 fvco2 6735 . . . . . . . . . . . . 13 (((𝐼 × {(ringLMod‘𝑅)}) Fn 𝐼𝑥𝐼) → ((0g ∘ (𝐼 × {(ringLMod‘𝑅)}))‘𝑥) = (0g‘((𝐼 × {(ringLMod‘𝑅)})‘𝑥)))
113, 10mpan 689 . . . . . . . . . . . 12 (𝑥𝐼 → ((0g ∘ (𝐼 × {(ringLMod‘𝑅)}))‘𝑥) = (0g‘((𝐼 × {(ringLMod‘𝑅)})‘𝑥)))
1211adantl 485 . . . . . . . . . . 11 ((((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) ∧ 𝑥𝐼) → ((0g ∘ (𝐼 × {(ringLMod‘𝑅)}))‘𝑥) = (0g‘((𝐼 × {(ringLMod‘𝑅)})‘𝑥)))
131fvconst2 6943 . . . . . . . . . . . . . 14 (𝑥𝐼 → ((𝐼 × {(ringLMod‘𝑅)})‘𝑥) = (ringLMod‘𝑅))
1413adantl 485 . . . . . . . . . . . . 13 ((((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) ∧ 𝑥𝐼) → ((𝐼 × {(ringLMod‘𝑅)})‘𝑥) = (ringLMod‘𝑅))
1514fveq2d 6649 . . . . . . . . . . . 12 ((((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) ∧ 𝑥𝐼) → (0g‘((𝐼 × {(ringLMod‘𝑅)})‘𝑥)) = (0g‘(ringLMod‘𝑅)))
16 frlmbas.z . . . . . . . . . . . . 13 0 = (0g𝑅)
17 rlm0 19962 . . . . . . . . . . . . 13 (0g𝑅) = (0g‘(ringLMod‘𝑅))
1816, 17eqtri 2821 . . . . . . . . . . . 12 0 = (0g‘(ringLMod‘𝑅))
1915, 18eqtr4di 2851 . . . . . . . . . . 11 ((((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) ∧ 𝑥𝐼) → (0g‘((𝐼 × {(ringLMod‘𝑅)})‘𝑥)) = 0 )
2012, 19eqtrd 2833 . . . . . . . . . 10 ((((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) ∧ 𝑥𝐼) → ((0g ∘ (𝐼 × {(ringLMod‘𝑅)}))‘𝑥) = 0 )
2120neeq2d 3047 . . . . . . . . 9 ((((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) ∧ 𝑥𝐼) → ((𝑘𝑥) ≠ ((0g ∘ (𝐼 × {(ringLMod‘𝑅)}))‘𝑥) ↔ (𝑘𝑥) ≠ 0 ))
2221rabbidva 3425 . . . . . . . 8 (((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) → {𝑥𝐼 ∣ (𝑘𝑥) ≠ ((0g ∘ (𝐼 × {(ringLMod‘𝑅)}))‘𝑥)} = {𝑥𝐼 ∣ (𝑘𝑥) ≠ 0 })
23 elmapfn 8412 . . . . . . . . . 10 (𝑘 ∈ (𝑁m 𝐼) → 𝑘 Fn 𝐼)
2423adantl 485 . . . . . . . . 9 (((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) → 𝑘 Fn 𝐼)
25 fn0g 17865 . . . . . . . . . 10 0g Fn V
26 ssv 3939 . . . . . . . . . 10 ran (𝐼 × {(ringLMod‘𝑅)}) ⊆ V
27 fnco 6437 . . . . . . . . . 10 ((0g Fn V ∧ (𝐼 × {(ringLMod‘𝑅)}) Fn 𝐼 ∧ ran (𝐼 × {(ringLMod‘𝑅)}) ⊆ V) → (0g ∘ (𝐼 × {(ringLMod‘𝑅)})) Fn 𝐼)
2825, 3, 26, 27mp3an 1458 . . . . . . . . 9 (0g ∘ (𝐼 × {(ringLMod‘𝑅)})) Fn 𝐼
29 fndmdif 6789 . . . . . . . . 9 ((𝑘 Fn 𝐼 ∧ (0g ∘ (𝐼 × {(ringLMod‘𝑅)})) Fn 𝐼) → dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) = {𝑥𝐼 ∣ (𝑘𝑥) ≠ ((0g ∘ (𝐼 × {(ringLMod‘𝑅)}))‘𝑥)})
3024, 28, 29sylancl 589 . . . . . . . 8 (((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) → dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) = {𝑥𝐼 ∣ (𝑘𝑥) ≠ ((0g ∘ (𝐼 × {(ringLMod‘𝑅)}))‘𝑥)})
31 simplr 768 . . . . . . . . 9 (((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) → 𝐼𝑊)
3216fvexi 6659 . . . . . . . . . 10 0 ∈ V
3332a1i 11 . . . . . . . . 9 (((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) → 0 ∈ V)
34 suppvalfn 7820 . . . . . . . . 9 ((𝑘 Fn 𝐼𝐼𝑊0 ∈ V) → (𝑘 supp 0 ) = {𝑥𝐼 ∣ (𝑘𝑥) ≠ 0 })
3524, 31, 33, 34syl3anc 1368 . . . . . . . 8 (((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) → (𝑘 supp 0 ) = {𝑥𝐼 ∣ (𝑘𝑥) ≠ 0 })
3622, 30, 353eqtr4d 2843 . . . . . . 7 (((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) → dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) = (𝑘 supp 0 ))
3736eleq1d 2874 . . . . . 6 (((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) → (dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) ∈ Fin ↔ (𝑘 supp 0 ) ∈ Fin))
38 elmapfun 8413 . . . . . . . . 9 (𝑘 ∈ (𝑁m 𝐼) → Fun 𝑘)
39 id 22 . . . . . . . . 9 (𝑘 ∈ (𝑁m 𝐼) → 𝑘 ∈ (𝑁m 𝐼))
4032a1i 11 . . . . . . . . 9 (𝑘 ∈ (𝑁m 𝐼) → 0 ∈ V)
4138, 39, 403jca 1125 . . . . . . . 8 (𝑘 ∈ (𝑁m 𝐼) → (Fun 𝑘𝑘 ∈ (𝑁m 𝐼) ∧ 0 ∈ V))
4241adantl 485 . . . . . . 7 (((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) → (Fun 𝑘𝑘 ∈ (𝑁m 𝐼) ∧ 0 ∈ V))
43 funisfsupp 8822 . . . . . . 7 ((Fun 𝑘𝑘 ∈ (𝑁m 𝐼) ∧ 0 ∈ V) → (𝑘 finSupp 0 ↔ (𝑘 supp 0 ) ∈ Fin))
4442, 43syl 17 . . . . . 6 (((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) → (𝑘 finSupp 0 ↔ (𝑘 supp 0 ) ∈ Fin))
4537, 44bitr4d 285 . . . . 5 (((𝑅𝑉𝐼𝑊) ∧ 𝑘 ∈ (𝑁m 𝐼)) → (dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) ∈ Fin ↔ 𝑘 finSupp 0 ))
4645rabbidva 3425 . . . 4 ((𝑅𝑉𝐼𝑊) → {𝑘 ∈ (𝑁m 𝐼) ∣ dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) ∈ Fin} = {𝑘 ∈ (𝑁m 𝐼) ∣ 𝑘 finSupp 0 })
47 eqid 2798 . . . . . . . . 9 ((ringLMod‘𝑅) ↑s 𝐼) = ((ringLMod‘𝑅) ↑s 𝐼)
48 frlmbas.n . . . . . . . . . 10 𝑁 = (Base‘𝑅)
49 rlmbas 19960 . . . . . . . . . 10 (Base‘𝑅) = (Base‘(ringLMod‘𝑅))
5048, 49eqtri 2821 . . . . . . . . 9 𝑁 = (Base‘(ringLMod‘𝑅))
5147, 50pwsbas 16752 . . . . . . . 8 (((ringLMod‘𝑅) ∈ V ∧ 𝐼𝑊) → (𝑁m 𝐼) = (Base‘((ringLMod‘𝑅) ↑s 𝐼)))
521, 51mpan 689 . . . . . . 7 (𝐼𝑊 → (𝑁m 𝐼) = (Base‘((ringLMod‘𝑅) ↑s 𝐼)))
5352adantl 485 . . . . . 6 ((𝑅𝑉𝐼𝑊) → (𝑁m 𝐼) = (Base‘((ringLMod‘𝑅) ↑s 𝐼)))
54 eqid 2798 . . . . . . . . . . 11 (Scalar‘(ringLMod‘𝑅)) = (Scalar‘(ringLMod‘𝑅))
5547, 54pwsval 16751 . . . . . . . . . 10 (((ringLMod‘𝑅) ∈ V ∧ 𝐼𝑊) → ((ringLMod‘𝑅) ↑s 𝐼) = ((Scalar‘(ringLMod‘𝑅))Xs(𝐼 × {(ringLMod‘𝑅)})))
561, 55mpan 689 . . . . . . . . 9 (𝐼𝑊 → ((ringLMod‘𝑅) ↑s 𝐼) = ((Scalar‘(ringLMod‘𝑅))Xs(𝐼 × {(ringLMod‘𝑅)})))
5756adantl 485 . . . . . . . 8 ((𝑅𝑉𝐼𝑊) → ((ringLMod‘𝑅) ↑s 𝐼) = ((Scalar‘(ringLMod‘𝑅))Xs(𝐼 × {(ringLMod‘𝑅)})))
58 rlmsca 19965 . . . . . . . . . 10 (𝑅𝑉𝑅 = (Scalar‘(ringLMod‘𝑅)))
5958adantr 484 . . . . . . . . 9 ((𝑅𝑉𝐼𝑊) → 𝑅 = (Scalar‘(ringLMod‘𝑅)))
6059oveq1d 7150 . . . . . . . 8 ((𝑅𝑉𝐼𝑊) → (𝑅Xs(𝐼 × {(ringLMod‘𝑅)})) = ((Scalar‘(ringLMod‘𝑅))Xs(𝐼 × {(ringLMod‘𝑅)})))
6157, 60eqtr4d 2836 . . . . . . 7 ((𝑅𝑉𝐼𝑊) → ((ringLMod‘𝑅) ↑s 𝐼) = (𝑅Xs(𝐼 × {(ringLMod‘𝑅)})))
6261fveq2d 6649 . . . . . 6 ((𝑅𝑉𝐼𝑊) → (Base‘((ringLMod‘𝑅) ↑s 𝐼)) = (Base‘(𝑅Xs(𝐼 × {(ringLMod‘𝑅)}))))
6353, 62eqtrd 2833 . . . . 5 ((𝑅𝑉𝐼𝑊) → (𝑁m 𝐼) = (Base‘(𝑅Xs(𝐼 × {(ringLMod‘𝑅)}))))
6463rabeqdv 3432 . . . 4 ((𝑅𝑉𝐼𝑊) → {𝑘 ∈ (𝑁m 𝐼) ∣ dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) ∈ Fin} = {𝑘 ∈ (Base‘(𝑅Xs(𝐼 × {(ringLMod‘𝑅)}))) ∣ dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) ∈ Fin})
6546, 64eqtr3d 2835 . . 3 ((𝑅𝑉𝐼𝑊) → {𝑘 ∈ (𝑁m 𝐼) ∣ 𝑘 finSupp 0 } = {𝑘 ∈ (Base‘(𝑅Xs(𝐼 × {(ringLMod‘𝑅)}))) ∣ dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) ∈ Fin})
669, 65syl5eq 2845 . 2 ((𝑅𝑉𝐼𝑊) → 𝐵 = {𝑘 ∈ (Base‘(𝑅Xs(𝐼 × {(ringLMod‘𝑅)}))) ∣ dom (𝑘 ∖ (0g ∘ (𝐼 × {(ringLMod‘𝑅)}))) ∈ Fin})
67 frlmval.f . . . 4 𝐹 = (𝑅 freeLMod 𝐼)
6867frlmval 20437 . . 3 ((𝑅𝑉𝐼𝑊) → 𝐹 = (𝑅m (𝐼 × {(ringLMod‘𝑅)})))
6968fveq2d 6649 . 2 ((𝑅𝑉𝐼𝑊) → (Base‘𝐹) = (Base‘(𝑅m (𝐼 × {(ringLMod‘𝑅)}))))
708, 66, 693eqtr4d 2843 1 ((𝑅𝑉𝐼𝑊) → 𝐵 = (Base‘𝐹))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 399  w3a 1084   = wceq 1538  wcel 2111  wne 2987  {crab 3110  Vcvv 3441  cdif 3878  wss 3881  {csn 4525   class class class wbr 5030   × cxp 5517  dom cdm 5519  ran crn 5520  ccom 5523  Fun wfun 6318   Fn wfn 6319  cfv 6324  (class class class)co 7135   supp csupp 7813  m cmap 8389  Fincfn 8492   finSupp cfsupp 8817  Basecbs 16475  Scalarcsca 16560  0gc0g 16705  Xscprds 16711  s cpws 16712  ringLModcrglmod 19934  m cdsmm 20420   freeLMod cfrlm 20435
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2113  ax-9 2121  ax-10 2142  ax-11 2158  ax-12 2175  ax-ext 2770  ax-rep 5154  ax-sep 5167  ax-nul 5174  ax-pow 5231  ax-pr 5295  ax-un 7441  ax-cnex 10582  ax-resscn 10583  ax-1cn 10584  ax-icn 10585  ax-addcl 10586  ax-addrcl 10587  ax-mulcl 10588  ax-mulrcl 10589  ax-mulcom 10590  ax-addass 10591  ax-mulass 10592  ax-distr 10593  ax-i2m1 10594  ax-1ne0 10595  ax-1rid 10596  ax-rnegex 10597  ax-rrecex 10598  ax-cnre 10599  ax-pre-lttri 10600  ax-pre-lttrn 10601  ax-pre-ltadd 10602  ax-pre-mulgt0 10603
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2598  df-eu 2629  df-clab 2777  df-cleq 2791  df-clel 2870  df-nfc 2938  df-ne 2988  df-nel 3092  df-ral 3111  df-rex 3112  df-reu 3113  df-rab 3115  df-v 3443  df-sbc 3721  df-csb 3829  df-dif 3884  df-un 3886  df-in 3888  df-ss 3898  df-pss 3900  df-nul 4244  df-if 4426  df-pw 4499  df-sn 4526  df-pr 4528  df-tp 4530  df-op 4532  df-uni 4801  df-int 4839  df-iun 4883  df-br 5031  df-opab 5093  df-mpt 5111  df-tr 5137  df-id 5425  df-eprel 5430  df-po 5438  df-so 5439  df-fr 5478  df-we 5480  df-xp 5525  df-rel 5526  df-cnv 5527  df-co 5528  df-dm 5529  df-rn 5530  df-res 5531  df-ima 5532  df-pred 6116  df-ord 6162  df-on 6163  df-lim 6164  df-suc 6165  df-iota 6283  df-fun 6326  df-fn 6327  df-f 6328  df-f1 6329  df-fo 6330  df-f1o 6331  df-fv 6332  df-riota 7093  df-ov 7138  df-oprab 7139  df-mpo 7140  df-om 7561  df-1st 7671  df-2nd 7672  df-supp 7814  df-wrecs 7930  df-recs 7991  df-rdg 8029  df-1o 8085  df-oadd 8089  df-er 8272  df-map 8391  df-ixp 8445  df-en 8493  df-dom 8494  df-sdom 8495  df-fin 8496  df-fsupp 8818  df-sup 8890  df-pnf 10666  df-mnf 10667  df-xr 10668  df-ltxr 10669  df-le 10670  df-sub 10861  df-neg 10862  df-nn 11626  df-2 11688  df-3 11689  df-4 11690  df-5 11691  df-6 11692  df-7 11693  df-8 11694  df-9 11695  df-n0 11886  df-z 11970  df-dec 12087  df-uz 12232  df-fz 12886  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-sca 16573  df-vsca 16574  df-ip 16575  df-tset 16576  df-ple 16577  df-ds 16579  df-hom 16581  df-cco 16582  df-0g 16707  df-prds 16713  df-pws 16715  df-sra 19937  df-rgmod 19938  df-dsmm 20421  df-frlm 20436
This theorem is referenced by:  frlmelbas  20445  frlmfibas  20451  ellspd  20491  islindf4  20527  rrxbase  23992  rrxds  23997  frlmpwfi  40042
  Copyright terms: Public domain W3C validator