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

Theorem frlmup4 21347
Description: Universal property of the free module by existential uniqueness. (Contributed by Stefan O'Rear, 7-Mar-2015.)
Hypotheses
Ref Expression
frlmup4.r 𝑅 = (Scalarβ€˜π‘‡)
frlmup4.f 𝐹 = (𝑅 freeLMod 𝐼)
frlmup4.u π‘ˆ = (𝑅 unitVec 𝐼)
frlmup4.c 𝐢 = (Baseβ€˜π‘‡)
Assertion
Ref Expression
frlmup4 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ βˆƒ!π‘š ∈ (𝐹 LMHom 𝑇)(π‘š ∘ π‘ˆ) = 𝐴)
Distinct variable groups:   𝐴,π‘š   π‘š,𝐹   𝑇,π‘š   π‘ˆ,π‘š
Allowed substitution hints:   𝐢(π‘š)   𝑅(π‘š)   𝐼(π‘š)   𝑋(π‘š)

Proof of Theorem frlmup4
Dummy variables π‘₯ 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 frlmup4.f . . . 4 𝐹 = (𝑅 freeLMod 𝐼)
2 eqid 2732 . . . 4 (Baseβ€˜πΉ) = (Baseβ€˜πΉ)
3 frlmup4.c . . . 4 𝐢 = (Baseβ€˜π‘‡)
4 eqid 2732 . . . 4 ( ·𝑠 β€˜π‘‡) = ( ·𝑠 β€˜π‘‡)
5 eqid 2732 . . . 4 (π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) = (π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴)))
6 simp1 1136 . . . 4 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ 𝑇 ∈ LMod)
7 simp2 1137 . . . 4 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ 𝐼 ∈ 𝑋)
8 frlmup4.r . . . . 5 𝑅 = (Scalarβ€˜π‘‡)
98a1i 11 . . . 4 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ 𝑅 = (Scalarβ€˜π‘‡))
10 simp3 1138 . . . 4 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ 𝐴:𝐼⟢𝐢)
111, 2, 3, 4, 5, 6, 7, 9, 10frlmup1 21344 . . 3 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ (π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) ∈ (𝐹 LMHom 𝑇))
12 ovex 7438 . . . . . 6 (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴)) ∈ V
1312, 5fnmpti 6690 . . . . 5 (π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) Fn (Baseβ€˜πΉ)
148lmodring 20471 . . . . . . . 8 (𝑇 ∈ LMod β†’ 𝑅 ∈ Ring)
15143ad2ant1 1133 . . . . . . 7 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ 𝑅 ∈ Ring)
16 frlmup4.u . . . . . . . 8 π‘ˆ = (𝑅 unitVec 𝐼)
1716, 1, 2uvcff 21337 . . . . . . 7 ((𝑅 ∈ Ring ∧ 𝐼 ∈ 𝑋) β†’ π‘ˆ:𝐼⟢(Baseβ€˜πΉ))
1815, 7, 17syl2anc 584 . . . . . 6 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ π‘ˆ:𝐼⟢(Baseβ€˜πΉ))
1918ffnd 6715 . . . . 5 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ π‘ˆ Fn 𝐼)
2018frnd 6722 . . . . 5 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ ran π‘ˆ βŠ† (Baseβ€˜πΉ))
21 fnco 6664 . . . . 5 (((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) Fn (Baseβ€˜πΉ) ∧ π‘ˆ Fn 𝐼 ∧ ran π‘ˆ βŠ† (Baseβ€˜πΉ)) β†’ ((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) ∘ π‘ˆ) Fn 𝐼)
2213, 19, 20, 21mp3an2i 1466 . . . 4 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ ((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) ∘ π‘ˆ) Fn 𝐼)
23 ffn 6714 . . . . 5 (𝐴:𝐼⟢𝐢 β†’ 𝐴 Fn 𝐼)
24233ad2ant3 1135 . . . 4 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ 𝐴 Fn 𝐼)
2518adantr 481 . . . . . . 7 (((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) ∧ 𝑦 ∈ 𝐼) β†’ π‘ˆ:𝐼⟢(Baseβ€˜πΉ))
2625ffnd 6715 . . . . . 6 (((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) ∧ 𝑦 ∈ 𝐼) β†’ π‘ˆ Fn 𝐼)
27 simpr 485 . . . . . 6 (((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) ∧ 𝑦 ∈ 𝐼) β†’ 𝑦 ∈ 𝐼)
28 fvco2 6985 . . . . . 6 ((π‘ˆ Fn 𝐼 ∧ 𝑦 ∈ 𝐼) β†’ (((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) ∘ π‘ˆ)β€˜π‘¦) = ((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴)))β€˜(π‘ˆβ€˜π‘¦)))
2926, 27, 28syl2anc 584 . . . . 5 (((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) ∧ 𝑦 ∈ 𝐼) β†’ (((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) ∘ π‘ˆ)β€˜π‘¦) = ((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴)))β€˜(π‘ˆβ€˜π‘¦)))
30 simpl1 1191 . . . . . 6 (((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) ∧ 𝑦 ∈ 𝐼) β†’ 𝑇 ∈ LMod)
31 simpl2 1192 . . . . . 6 (((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) ∧ 𝑦 ∈ 𝐼) β†’ 𝐼 ∈ 𝑋)
328a1i 11 . . . . . 6 (((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) ∧ 𝑦 ∈ 𝐼) β†’ 𝑅 = (Scalarβ€˜π‘‡))
33 simpl3 1193 . . . . . 6 (((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) ∧ 𝑦 ∈ 𝐼) β†’ 𝐴:𝐼⟢𝐢)
341, 2, 3, 4, 5, 30, 31, 32, 33, 27, 16frlmup2 21345 . . . . 5 (((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) ∧ 𝑦 ∈ 𝐼) β†’ ((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴)))β€˜(π‘ˆβ€˜π‘¦)) = (π΄β€˜π‘¦))
3529, 34eqtrd 2772 . . . 4 (((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) ∧ 𝑦 ∈ 𝐼) β†’ (((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) ∘ π‘ˆ)β€˜π‘¦) = (π΄β€˜π‘¦))
3622, 24, 35eqfnfvd 7032 . . 3 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ ((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) ∘ π‘ˆ) = 𝐴)
37 coeq1 5855 . . . . 5 (π‘š = (π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) β†’ (π‘š ∘ π‘ˆ) = ((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) ∘ π‘ˆ))
3837eqeq1d 2734 . . . 4 (π‘š = (π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) β†’ ((π‘š ∘ π‘ˆ) = 𝐴 ↔ ((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) ∘ π‘ˆ) = 𝐴))
3938rspcev 3612 . . 3 (((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) ∈ (𝐹 LMHom 𝑇) ∧ ((π‘₯ ∈ (Baseβ€˜πΉ) ↦ (𝑇 Ξ£g (π‘₯ ∘f ( ·𝑠 β€˜π‘‡)𝐴))) ∘ π‘ˆ) = 𝐴) β†’ βˆƒπ‘š ∈ (𝐹 LMHom 𝑇)(π‘š ∘ π‘ˆ) = 𝐴)
4011, 36, 39syl2anc 584 . 2 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ βˆƒπ‘š ∈ (𝐹 LMHom 𝑇)(π‘š ∘ π‘ˆ) = 𝐴)
4118ffund 6718 . . . 4 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ Fun π‘ˆ)
42 funcoeqres 6861 . . . . . 6 ((Fun π‘ˆ ∧ (π‘š ∘ π‘ˆ) = 𝐴) β†’ (π‘š β†Ύ ran π‘ˆ) = (𝐴 ∘ β—‘π‘ˆ))
4342ex 413 . . . . 5 (Fun π‘ˆ β†’ ((π‘š ∘ π‘ˆ) = 𝐴 β†’ (π‘š β†Ύ ran π‘ˆ) = (𝐴 ∘ β—‘π‘ˆ)))
4443ralrimivw 3150 . . . 4 (Fun π‘ˆ β†’ βˆ€π‘š ∈ (𝐹 LMHom 𝑇)((π‘š ∘ π‘ˆ) = 𝐴 β†’ (π‘š β†Ύ ran π‘ˆ) = (𝐴 ∘ β—‘π‘ˆ)))
4541, 44syl 17 . . 3 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ βˆ€π‘š ∈ (𝐹 LMHom 𝑇)((π‘š ∘ π‘ˆ) = 𝐴 β†’ (π‘š β†Ύ ran π‘ˆ) = (𝐴 ∘ β—‘π‘ˆ)))
46 eqid 2732 . . . . . . 7 (LBasisβ€˜πΉ) = (LBasisβ€˜πΉ)
471, 16, 46frlmlbs 21343 . . . . . 6 ((𝑅 ∈ Ring ∧ 𝐼 ∈ 𝑋) β†’ ran π‘ˆ ∈ (LBasisβ€˜πΉ))
4815, 7, 47syl2anc 584 . . . . 5 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ ran π‘ˆ ∈ (LBasisβ€˜πΉ))
49 eqid 2732 . . . . . 6 (LSpanβ€˜πΉ) = (LSpanβ€˜πΉ)
502, 46, 49lbssp 20682 . . . . 5 (ran π‘ˆ ∈ (LBasisβ€˜πΉ) β†’ ((LSpanβ€˜πΉ)β€˜ran π‘ˆ) = (Baseβ€˜πΉ))
5148, 50syl 17 . . . 4 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ ((LSpanβ€˜πΉ)β€˜ran π‘ˆ) = (Baseβ€˜πΉ))
522, 49lspextmo 20659 . . . 4 ((ran π‘ˆ βŠ† (Baseβ€˜πΉ) ∧ ((LSpanβ€˜πΉ)β€˜ran π‘ˆ) = (Baseβ€˜πΉ)) β†’ βˆƒ*π‘š ∈ (𝐹 LMHom 𝑇)(π‘š β†Ύ ran π‘ˆ) = (𝐴 ∘ β—‘π‘ˆ))
5320, 51, 52syl2anc 584 . . 3 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ βˆƒ*π‘š ∈ (𝐹 LMHom 𝑇)(π‘š β†Ύ ran π‘ˆ) = (𝐴 ∘ β—‘π‘ˆ))
54 rmoim 3735 . . 3 (βˆ€π‘š ∈ (𝐹 LMHom 𝑇)((π‘š ∘ π‘ˆ) = 𝐴 β†’ (π‘š β†Ύ ran π‘ˆ) = (𝐴 ∘ β—‘π‘ˆ)) β†’ (βˆƒ*π‘š ∈ (𝐹 LMHom 𝑇)(π‘š β†Ύ ran π‘ˆ) = (𝐴 ∘ β—‘π‘ˆ) β†’ βˆƒ*π‘š ∈ (𝐹 LMHom 𝑇)(π‘š ∘ π‘ˆ) = 𝐴))
5545, 53, 54sylc 65 . 2 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ βˆƒ*π‘š ∈ (𝐹 LMHom 𝑇)(π‘š ∘ π‘ˆ) = 𝐴)
56 reu5 3378 . 2 (βˆƒ!π‘š ∈ (𝐹 LMHom 𝑇)(π‘š ∘ π‘ˆ) = 𝐴 ↔ (βˆƒπ‘š ∈ (𝐹 LMHom 𝑇)(π‘š ∘ π‘ˆ) = 𝐴 ∧ βˆƒ*π‘š ∈ (𝐹 LMHom 𝑇)(π‘š ∘ π‘ˆ) = 𝐴))
5740, 55, 56sylanbrc 583 1 ((𝑇 ∈ LMod ∧ 𝐼 ∈ 𝑋 ∧ 𝐴:𝐼⟢𝐢) β†’ βˆƒ!π‘š ∈ (𝐹 LMHom 𝑇)(π‘š ∘ π‘ˆ) = 𝐴)
Colors of variables: wff setvar class
Syntax hints:   β†’ wi 4   ∧ wa 396   ∧ w3a 1087   = wceq 1541   ∈ wcel 2106  βˆ€wral 3061  βˆƒwrex 3070  βˆƒ!wreu 3374  βˆƒ*wrmo 3375   βŠ† wss 3947   ↦ cmpt 5230  β—‘ccnv 5674  ran crn 5676   β†Ύ cres 5677   ∘ ccom 5679  Fun wfun 6534   Fn wfn 6535  βŸΆwf 6536  β€˜cfv 6540  (class class class)co 7405   ∘f cof 7664  Basecbs 17140  Scalarcsca 17196   ·𝑠 cvsca 17197   Ξ£g cgsu 17382  Ringcrg 20049  LModclmod 20463  LSpanclspn 20574   LMHom clmhm 20622  LBasisclbs 20677   freeLMod cfrlm 21292   unitVec cuvc 21328
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 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2703  ax-rep 5284  ax-sep 5298  ax-nul 5305  ax-pow 5362  ax-pr 5426  ax-un 7721  ax-cnex 11162  ax-resscn 11163  ax-1cn 11164  ax-icn 11165  ax-addcl 11166  ax-addrcl 11167  ax-mulcl 11168  ax-mulrcl 11169  ax-mulcom 11170  ax-addass 11171  ax-mulass 11172  ax-distr 11173  ax-i2m1 11174  ax-1ne0 11175  ax-1rid 11176  ax-rnegex 11177  ax-rrecex 11178  ax-cnre 11179  ax-pre-lttri 11180  ax-pre-lttrn 11181  ax-pre-ltadd 11182  ax-pre-mulgt0 11183
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 846  df-3or 1088  df-3an 1089  df-tru 1544  df-fal 1554  df-ex 1782  df-nf 1786  df-sb 2068  df-mo 2534  df-eu 2563  df-clab 2710  df-cleq 2724  df-clel 2810  df-nfc 2885  df-ne 2941  df-nel 3047  df-ral 3062  df-rex 3071  df-rmo 3376  df-reu 3377  df-rab 3433  df-v 3476  df-sbc 3777  df-csb 3893  df-dif 3950  df-un 3952  df-in 3954  df-ss 3964  df-pss 3966  df-nul 4322  df-if 4528  df-pw 4603  df-sn 4628  df-pr 4630  df-tp 4632  df-op 4634  df-uni 4908  df-int 4950  df-iun 4998  df-iin 4999  df-br 5148  df-opab 5210  df-mpt 5231  df-tr 5265  df-id 5573  df-eprel 5579  df-po 5587  df-so 5588  df-fr 5630  df-se 5631  df-we 5632  df-xp 5681  df-rel 5682  df-cnv 5683  df-co 5684  df-dm 5685  df-rn 5686  df-res 5687  df-ima 5688  df-pred 6297  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6492  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-isom 6549  df-riota 7361  df-ov 7408  df-oprab 7409  df-mpo 7410  df-of 7666  df-om 7852  df-1st 7971  df-2nd 7972  df-supp 8143  df-frecs 8262  df-wrecs 8293  df-recs 8367  df-rdg 8406  df-1o 8462  df-er 8699  df-map 8818  df-ixp 8888  df-en 8936  df-dom 8937  df-sdom 8938  df-fin 8939  df-fsupp 9358  df-sup 9433  df-oi 9501  df-card 9930  df-pnf 11246  df-mnf 11247  df-xr 11248  df-ltxr 11249  df-le 11250  df-sub 11442  df-neg 11443  df-nn 12209  df-2 12271  df-3 12272  df-4 12273  df-5 12274  df-6 12275  df-7 12276  df-8 12277  df-9 12278  df-n0 12469  df-z 12555  df-dec 12674  df-uz 12819  df-fz 13481  df-fzo 13624  df-seq 13963  df-hash 14287  df-struct 17076  df-sets 17093  df-slot 17111  df-ndx 17123  df-base 17141  df-ress 17170  df-plusg 17206  df-mulr 17207  df-sca 17209  df-vsca 17210  df-ip 17211  df-tset 17212  df-ple 17213  df-ds 17215  df-hom 17217  df-cco 17218  df-0g 17383  df-gsum 17384  df-prds 17389  df-pws 17391  df-mre 17526  df-mrc 17527  df-acs 17529  df-mgm 18557  df-sgrp 18606  df-mnd 18622  df-mhm 18667  df-submnd 18668  df-grp 18818  df-minusg 18819  df-sbg 18820  df-mulg 18945  df-subg 18997  df-ghm 19084  df-cntz 19175  df-cmn 19644  df-abl 19645  df-mgp 19982  df-ur 19999  df-ring 20051  df-nzr 20284  df-subrg 20353  df-lmod 20465  df-lss 20535  df-lsp 20575  df-lmhm 20625  df-lbs 20678  df-sra 20777  df-rgmod 20778  df-dsmm 21278  df-frlm 21293  df-uvc 21329
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator