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

Theorem lmodcom 18674
Description: Left module vector sum is commutative. (Contributed by Gérard Lang, 25-Jun-2014.)
Hypotheses
Ref Expression
lmodcom.v 𝑉 = (Base‘𝑊)
lmodcom.a + = (+g𝑊)
Assertion
Ref Expression
lmodcom ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (𝑋 + 𝑌) = (𝑌 + 𝑋))

Proof of Theorem lmodcom
StepHypRef Expression
1 simp1 1053 . . . . . . . 8 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → 𝑊 ∈ LMod)
2 eqid 2605 . . . . . . . . . . 11 (Scalar‘𝑊) = (Scalar‘𝑊)
3 eqid 2605 . . . . . . . . . . 11 (Base‘(Scalar‘𝑊)) = (Base‘(Scalar‘𝑊))
4 eqid 2605 . . . . . . . . . . 11 (1r‘(Scalar‘𝑊)) = (1r‘(Scalar‘𝑊))
52, 3, 4lmod1cl 18655 . . . . . . . . . 10 (𝑊 ∈ LMod → (1r‘(Scalar‘𝑊)) ∈ (Base‘(Scalar‘𝑊)))
61, 5syl 17 . . . . . . . . 9 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (1r‘(Scalar‘𝑊)) ∈ (Base‘(Scalar‘𝑊)))
7 eqid 2605 . . . . . . . . . 10 (+g‘(Scalar‘𝑊)) = (+g‘(Scalar‘𝑊))
82, 3, 7lmodacl 18639 . . . . . . . . 9 ((𝑊 ∈ LMod ∧ (1r‘(Scalar‘𝑊)) ∈ (Base‘(Scalar‘𝑊)) ∧ (1r‘(Scalar‘𝑊)) ∈ (Base‘(Scalar‘𝑊))) → ((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊))) ∈ (Base‘(Scalar‘𝑊)))
91, 6, 6, 8syl3anc 1317 . . . . . . . 8 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊))) ∈ (Base‘(Scalar‘𝑊)))
10 simp2 1054 . . . . . . . 8 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → 𝑋𝑉)
11 simp3 1055 . . . . . . . 8 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → 𝑌𝑉)
12 lmodcom.v . . . . . . . . 9 𝑉 = (Base‘𝑊)
13 lmodcom.a . . . . . . . . 9 + = (+g𝑊)
14 eqid 2605 . . . . . . . . 9 ( ·𝑠𝑊) = ( ·𝑠𝑊)
1512, 13, 2, 14, 3lmodvsdi 18651 . . . . . . . 8 ((𝑊 ∈ LMod ∧ (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊))) ∈ (Base‘(Scalar‘𝑊)) ∧ 𝑋𝑉𝑌𝑉)) → (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)(𝑋 + 𝑌)) = ((((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑋) + (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑌)))
161, 9, 10, 11, 15syl13anc 1319 . . . . . . 7 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)(𝑋 + 𝑌)) = ((((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑋) + (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑌)))
1712, 13lmodvacl 18642 . . . . . . . 8 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (𝑋 + 𝑌) ∈ 𝑉)
1812, 13, 2, 14, 3, 7lmodvsdir 18652 . . . . . . . 8 ((𝑊 ∈ LMod ∧ ((1r‘(Scalar‘𝑊)) ∈ (Base‘(Scalar‘𝑊)) ∧ (1r‘(Scalar‘𝑊)) ∈ (Base‘(Scalar‘𝑊)) ∧ (𝑋 + 𝑌) ∈ 𝑉)) → (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)(𝑋 + 𝑌)) = (((1r‘(Scalar‘𝑊))( ·𝑠𝑊)(𝑋 + 𝑌)) + ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)(𝑋 + 𝑌))))
191, 6, 6, 17, 18syl13anc 1319 . . . . . . 7 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)(𝑋 + 𝑌)) = (((1r‘(Scalar‘𝑊))( ·𝑠𝑊)(𝑋 + 𝑌)) + ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)(𝑋 + 𝑌))))
2016, 19eqtr3d 2641 . . . . . 6 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑋) + (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑌)) = (((1r‘(Scalar‘𝑊))( ·𝑠𝑊)(𝑋 + 𝑌)) + ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)(𝑋 + 𝑌))))
2112, 13, 2, 14, 3, 7lmodvsdir 18652 . . . . . . . . 9 ((𝑊 ∈ LMod ∧ ((1r‘(Scalar‘𝑊)) ∈ (Base‘(Scalar‘𝑊)) ∧ (1r‘(Scalar‘𝑊)) ∈ (Base‘(Scalar‘𝑊)) ∧ 𝑋𝑉)) → (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑋) = (((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑋) + ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑋)))
221, 6, 6, 10, 21syl13anc 1319 . . . . . . . 8 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑋) = (((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑋) + ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑋)))
2312, 2, 14, 4lmodvs1 18656 . . . . . . . . . 10 ((𝑊 ∈ LMod ∧ 𝑋𝑉) → ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑋) = 𝑋)
241, 10, 23syl2anc 690 . . . . . . . . 9 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑋) = 𝑋)
2524, 24oveq12d 6541 . . . . . . . 8 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑋) + ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑋)) = (𝑋 + 𝑋))
2622, 25eqtrd 2639 . . . . . . 7 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑋) = (𝑋 + 𝑋))
2712, 13, 2, 14, 3, 7lmodvsdir 18652 . . . . . . . . 9 ((𝑊 ∈ LMod ∧ ((1r‘(Scalar‘𝑊)) ∈ (Base‘(Scalar‘𝑊)) ∧ (1r‘(Scalar‘𝑊)) ∈ (Base‘(Scalar‘𝑊)) ∧ 𝑌𝑉)) → (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑌) = (((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑌) + ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑌)))
281, 6, 6, 11, 27syl13anc 1319 . . . . . . . 8 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑌) = (((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑌) + ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑌)))
2912, 2, 14, 4lmodvs1 18656 . . . . . . . . . 10 ((𝑊 ∈ LMod ∧ 𝑌𝑉) → ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑌) = 𝑌)
301, 11, 29syl2anc 690 . . . . . . . . 9 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑌) = 𝑌)
3130, 30oveq12d 6541 . . . . . . . 8 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑌) + ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)𝑌)) = (𝑌 + 𝑌))
3228, 31eqtrd 2639 . . . . . . 7 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑌) = (𝑌 + 𝑌))
3326, 32oveq12d 6541 . . . . . 6 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑋) + (((1r‘(Scalar‘𝑊))(+g‘(Scalar‘𝑊))(1r‘(Scalar‘𝑊)))( ·𝑠𝑊)𝑌)) = ((𝑋 + 𝑋) + (𝑌 + 𝑌)))
3412, 2, 14, 4lmodvs1 18656 . . . . . . . 8 ((𝑊 ∈ LMod ∧ (𝑋 + 𝑌) ∈ 𝑉) → ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)(𝑋 + 𝑌)) = (𝑋 + 𝑌))
351, 17, 34syl2anc 690 . . . . . . 7 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)(𝑋 + 𝑌)) = (𝑋 + 𝑌))
3635, 35oveq12d 6541 . . . . . 6 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (((1r‘(Scalar‘𝑊))( ·𝑠𝑊)(𝑋 + 𝑌)) + ((1r‘(Scalar‘𝑊))( ·𝑠𝑊)(𝑋 + 𝑌))) = ((𝑋 + 𝑌) + (𝑋 + 𝑌)))
3720, 33, 363eqtr3d 2647 . . . . 5 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((𝑋 + 𝑋) + (𝑌 + 𝑌)) = ((𝑋 + 𝑌) + (𝑋 + 𝑌)))
3812, 13lmodvacl 18642 . . . . . . 7 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑋𝑉) → (𝑋 + 𝑋) ∈ 𝑉)
391, 10, 10, 38syl3anc 1317 . . . . . 6 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (𝑋 + 𝑋) ∈ 𝑉)
4012, 13lmodass 18643 . . . . . 6 ((𝑊 ∈ LMod ∧ ((𝑋 + 𝑋) ∈ 𝑉𝑌𝑉𝑌𝑉)) → (((𝑋 + 𝑋) + 𝑌) + 𝑌) = ((𝑋 + 𝑋) + (𝑌 + 𝑌)))
411, 39, 11, 11, 40syl13anc 1319 . . . . 5 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (((𝑋 + 𝑋) + 𝑌) + 𝑌) = ((𝑋 + 𝑋) + (𝑌 + 𝑌)))
4212, 13lmodass 18643 . . . . . 6 ((𝑊 ∈ LMod ∧ ((𝑋 + 𝑌) ∈ 𝑉𝑋𝑉𝑌𝑉)) → (((𝑋 + 𝑌) + 𝑋) + 𝑌) = ((𝑋 + 𝑌) + (𝑋 + 𝑌)))
431, 17, 10, 11, 42syl13anc 1319 . . . . 5 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (((𝑋 + 𝑌) + 𝑋) + 𝑌) = ((𝑋 + 𝑌) + (𝑋 + 𝑌)))
4437, 41, 433eqtr4d 2649 . . . 4 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (((𝑋 + 𝑋) + 𝑌) + 𝑌) = (((𝑋 + 𝑌) + 𝑋) + 𝑌))
45 lmodgrp 18635 . . . . . 6 (𝑊 ∈ LMod → 𝑊 ∈ Grp)
461, 45syl 17 . . . . 5 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → 𝑊 ∈ Grp)
4712, 13lmodvacl 18642 . . . . . 6 ((𝑊 ∈ LMod ∧ (𝑋 + 𝑋) ∈ 𝑉𝑌𝑉) → ((𝑋 + 𝑋) + 𝑌) ∈ 𝑉)
481, 39, 11, 47syl3anc 1317 . . . . 5 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((𝑋 + 𝑋) + 𝑌) ∈ 𝑉)
4912, 13lmodvacl 18642 . . . . . 6 ((𝑊 ∈ LMod ∧ (𝑋 + 𝑌) ∈ 𝑉𝑋𝑉) → ((𝑋 + 𝑌) + 𝑋) ∈ 𝑉)
501, 17, 10, 49syl3anc 1317 . . . . 5 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((𝑋 + 𝑌) + 𝑋) ∈ 𝑉)
5112, 13grprcan 17220 . . . . 5 ((𝑊 ∈ Grp ∧ (((𝑋 + 𝑋) + 𝑌) ∈ 𝑉 ∧ ((𝑋 + 𝑌) + 𝑋) ∈ 𝑉𝑌𝑉)) → ((((𝑋 + 𝑋) + 𝑌) + 𝑌) = (((𝑋 + 𝑌) + 𝑋) + 𝑌) ↔ ((𝑋 + 𝑋) + 𝑌) = ((𝑋 + 𝑌) + 𝑋)))
5246, 48, 50, 11, 51syl13anc 1319 . . . 4 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((((𝑋 + 𝑋) + 𝑌) + 𝑌) = (((𝑋 + 𝑌) + 𝑋) + 𝑌) ↔ ((𝑋 + 𝑋) + 𝑌) = ((𝑋 + 𝑌) + 𝑋)))
5344, 52mpbid 220 . . 3 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((𝑋 + 𝑋) + 𝑌) = ((𝑋 + 𝑌) + 𝑋))
5412, 13lmodass 18643 . . . 4 ((𝑊 ∈ LMod ∧ (𝑋𝑉𝑋𝑉𝑌𝑉)) → ((𝑋 + 𝑋) + 𝑌) = (𝑋 + (𝑋 + 𝑌)))
551, 10, 10, 11, 54syl13anc 1319 . . 3 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((𝑋 + 𝑋) + 𝑌) = (𝑋 + (𝑋 + 𝑌)))
5612, 13lmodass 18643 . . . 4 ((𝑊 ∈ LMod ∧ (𝑋𝑉𝑌𝑉𝑋𝑉)) → ((𝑋 + 𝑌) + 𝑋) = (𝑋 + (𝑌 + 𝑋)))
571, 10, 11, 10, 56syl13anc 1319 . . 3 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((𝑋 + 𝑌) + 𝑋) = (𝑋 + (𝑌 + 𝑋)))
5853, 55, 573eqtr3d 2647 . 2 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (𝑋 + (𝑋 + 𝑌)) = (𝑋 + (𝑌 + 𝑋)))
5912, 13lmodvacl 18642 . . . 4 ((𝑊 ∈ LMod ∧ 𝑌𝑉𝑋𝑉) → (𝑌 + 𝑋) ∈ 𝑉)
60593com23 1262 . . 3 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (𝑌 + 𝑋) ∈ 𝑉)
6112, 13lmodlcan 18644 . . 3 ((𝑊 ∈ LMod ∧ ((𝑋 + 𝑌) ∈ 𝑉 ∧ (𝑌 + 𝑋) ∈ 𝑉𝑋𝑉)) → ((𝑋 + (𝑋 + 𝑌)) = (𝑋 + (𝑌 + 𝑋)) ↔ (𝑋 + 𝑌) = (𝑌 + 𝑋)))
621, 17, 60, 10, 61syl13anc 1319 . 2 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → ((𝑋 + (𝑋 + 𝑌)) = (𝑋 + (𝑌 + 𝑋)) ↔ (𝑋 + 𝑌) = (𝑌 + 𝑋)))
6358, 62mpbid 220 1 ((𝑊 ∈ LMod ∧ 𝑋𝑉𝑌𝑉) → (𝑋 + 𝑌) = (𝑌 + 𝑋))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 194  w3a 1030   = wceq 1474  wcel 1975  cfv 5786  (class class class)co 6523  Basecbs 15637  +gcplusg 15710  Scalarcsca 15713   ·𝑠 cvsca 15714  Grpcgrp 17187  1rcur 18266  LModclmod 18628
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1711  ax-4 1726  ax-5 1825  ax-6 1873  ax-7 1920  ax-8 1977  ax-9 1984  ax-10 2004  ax-11 2019  ax-12 2031  ax-13 2228  ax-ext 2585  ax-rep 4689  ax-sep 4699  ax-nul 4708  ax-pow 4760  ax-pr 4824  ax-un 6820  ax-cnex 9844  ax-resscn 9845  ax-1cn 9846  ax-icn 9847  ax-addcl 9848  ax-addrcl 9849  ax-mulcl 9850  ax-mulrcl 9851  ax-mulcom 9852  ax-addass 9853  ax-mulass 9854  ax-distr 9855  ax-i2m1 9856  ax-1ne0 9857  ax-1rid 9858  ax-rnegex 9859  ax-rrecex 9860  ax-cnre 9861  ax-pre-lttri 9862  ax-pre-lttrn 9863  ax-pre-ltadd 9864  ax-pre-mulgt0 9865
This theorem depends on definitions:  df-bi 195  df-or 383  df-an 384  df-3or 1031  df-3an 1032  df-tru 1477  df-ex 1695  df-nf 1700  df-sb 1866  df-eu 2457  df-mo 2458  df-clab 2592  df-cleq 2598  df-clel 2601  df-nfc 2735  df-ne 2777  df-nel 2778  df-ral 2896  df-rex 2897  df-reu 2898  df-rmo 2899  df-rab 2900  df-v 3170  df-sbc 3398  df-csb 3495  df-dif 3538  df-un 3540  df-in 3542  df-ss 3549  df-pss 3551  df-nul 3870  df-if 4032  df-pw 4105  df-sn 4121  df-pr 4123  df-tp 4125  df-op 4127  df-uni 4363  df-iun 4447  df-br 4574  df-opab 4634  df-mpt 4635  df-tr 4671  df-eprel 4935  df-id 4939  df-po 4945  df-so 4946  df-fr 4983  df-we 4985  df-xp 5030  df-rel 5031  df-cnv 5032  df-co 5033  df-dm 5034  df-rn 5035  df-res 5036  df-ima 5037  df-pred 5579  df-ord 5625  df-on 5626  df-lim 5627  df-suc 5628  df-iota 5750  df-fun 5788  df-fn 5789  df-f 5790  df-f1 5791  df-fo 5792  df-f1o 5793  df-fv 5794  df-riota 6485  df-ov 6526  df-oprab 6527  df-mpt2 6528  df-om 6931  df-wrecs 7267  df-recs 7328  df-rdg 7366  df-er 7602  df-en 7815  df-dom 7816  df-sdom 7817  df-pnf 9928  df-mnf 9929  df-xr 9930  df-ltxr 9931  df-le 9932  df-sub 10115  df-neg 10116  df-nn 10864  df-2 10922  df-ndx 15640  df-slot 15641  df-base 15642  df-sets 15643  df-plusg 15723  df-0g 15867  df-mgm 17007  df-sgrp 17049  df-mnd 17060  df-grp 17190  df-minusg 17191  df-mgp 18255  df-ur 18267  df-ring 18314  df-lmod 18630
This theorem is referenced by:  lmodabl  18675  lssvsubcl  18707  lssvancl2  18709  lspsolv  18906  lflsub  33171  lcfrlem21  35669  lcfrlem42  35690  mapdindp4  35829
  Copyright terms: Public domain W3C validator