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

Theorem resmhm 18743
Description: Restriction of a monoid homomorphism to a submonoid is a homomorphism. (Contributed by Mario Carneiro, 12-Mar-2015.)
Hypothesis
Ref Expression
resmhm.u π‘ˆ = (𝑆 β†Ύs 𝑋)
Assertion
Ref Expression
resmhm ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (𝐹 β†Ύ 𝑋) ∈ (π‘ˆ MndHom 𝑇))

Proof of Theorem resmhm
Dummy variables π‘₯ 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 mhmrcl2 18716 . . 3 (𝐹 ∈ (𝑆 MndHom 𝑇) β†’ 𝑇 ∈ Mnd)
2 resmhm.u . . . 4 π‘ˆ = (𝑆 β†Ύs 𝑋)
32submmnd 18736 . . 3 (𝑋 ∈ (SubMndβ€˜π‘†) β†’ π‘ˆ ∈ Mnd)
41, 3anim12ci 613 . 2 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (π‘ˆ ∈ Mnd ∧ 𝑇 ∈ Mnd))
5 eqid 2726 . . . . . 6 (Baseβ€˜π‘†) = (Baseβ€˜π‘†)
6 eqid 2726 . . . . . 6 (Baseβ€˜π‘‡) = (Baseβ€˜π‘‡)
75, 6mhmf 18717 . . . . 5 (𝐹 ∈ (𝑆 MndHom 𝑇) β†’ 𝐹:(Baseβ€˜π‘†)⟢(Baseβ€˜π‘‡))
85submss 18732 . . . . 5 (𝑋 ∈ (SubMndβ€˜π‘†) β†’ 𝑋 βŠ† (Baseβ€˜π‘†))
9 fssres 6750 . . . . 5 ((𝐹:(Baseβ€˜π‘†)⟢(Baseβ€˜π‘‡) ∧ 𝑋 βŠ† (Baseβ€˜π‘†)) β†’ (𝐹 β†Ύ 𝑋):π‘‹βŸΆ(Baseβ€˜π‘‡))
107, 8, 9syl2an 595 . . . 4 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (𝐹 β†Ύ 𝑋):π‘‹βŸΆ(Baseβ€˜π‘‡))
118adantl 481 . . . . . 6 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ 𝑋 βŠ† (Baseβ€˜π‘†))
122, 5ressbas2 17189 . . . . . 6 (𝑋 βŠ† (Baseβ€˜π‘†) β†’ 𝑋 = (Baseβ€˜π‘ˆ))
1311, 12syl 17 . . . . 5 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ 𝑋 = (Baseβ€˜π‘ˆ))
1413feq2d 6696 . . . 4 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ ((𝐹 β†Ύ 𝑋):π‘‹βŸΆ(Baseβ€˜π‘‡) ↔ (𝐹 β†Ύ 𝑋):(Baseβ€˜π‘ˆ)⟢(Baseβ€˜π‘‡)))
1510, 14mpbid 231 . . 3 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (𝐹 β†Ύ 𝑋):(Baseβ€˜π‘ˆ)⟢(Baseβ€˜π‘‡))
16 simpll 764 . . . . . . 7 (((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) ∧ (π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) β†’ 𝐹 ∈ (𝑆 MndHom 𝑇))
178ad2antlr 724 . . . . . . . 8 (((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) ∧ (π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) β†’ 𝑋 βŠ† (Baseβ€˜π‘†))
18 simprl 768 . . . . . . . 8 (((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) ∧ (π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) β†’ π‘₯ ∈ 𝑋)
1917, 18sseldd 3978 . . . . . . 7 (((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) ∧ (π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) β†’ π‘₯ ∈ (Baseβ€˜π‘†))
20 simprr 770 . . . . . . . 8 (((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) ∧ (π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) β†’ 𝑦 ∈ 𝑋)
2117, 20sseldd 3978 . . . . . . 7 (((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) ∧ (π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) β†’ 𝑦 ∈ (Baseβ€˜π‘†))
22 eqid 2726 . . . . . . . 8 (+gβ€˜π‘†) = (+gβ€˜π‘†)
23 eqid 2726 . . . . . . . 8 (+gβ€˜π‘‡) = (+gβ€˜π‘‡)
245, 22, 23mhmlin 18721 . . . . . . 7 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ π‘₯ ∈ (Baseβ€˜π‘†) ∧ 𝑦 ∈ (Baseβ€˜π‘†)) β†’ (πΉβ€˜(π‘₯(+gβ€˜π‘†)𝑦)) = ((πΉβ€˜π‘₯)(+gβ€˜π‘‡)(πΉβ€˜π‘¦)))
2516, 19, 21, 24syl3anc 1368 . . . . . 6 (((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) ∧ (π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) β†’ (πΉβ€˜(π‘₯(+gβ€˜π‘†)𝑦)) = ((πΉβ€˜π‘₯)(+gβ€˜π‘‡)(πΉβ€˜π‘¦)))
2622submcl 18735 . . . . . . . . 9 ((𝑋 ∈ (SubMndβ€˜π‘†) ∧ π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋) β†’ (π‘₯(+gβ€˜π‘†)𝑦) ∈ 𝑋)
27263expb 1117 . . . . . . . 8 ((𝑋 ∈ (SubMndβ€˜π‘†) ∧ (π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) β†’ (π‘₯(+gβ€˜π‘†)𝑦) ∈ 𝑋)
2827adantll 711 . . . . . . 7 (((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) ∧ (π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) β†’ (π‘₯(+gβ€˜π‘†)𝑦) ∈ 𝑋)
2928fvresd 6904 . . . . . 6 (((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) ∧ (π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) β†’ ((𝐹 β†Ύ 𝑋)β€˜(π‘₯(+gβ€˜π‘†)𝑦)) = (πΉβ€˜(π‘₯(+gβ€˜π‘†)𝑦)))
30 fvres 6903 . . . . . . . 8 (π‘₯ ∈ 𝑋 β†’ ((𝐹 β†Ύ 𝑋)β€˜π‘₯) = (πΉβ€˜π‘₯))
31 fvres 6903 . . . . . . . 8 (𝑦 ∈ 𝑋 β†’ ((𝐹 β†Ύ 𝑋)β€˜π‘¦) = (πΉβ€˜π‘¦))
3230, 31oveqan12d 7423 . . . . . . 7 ((π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋) β†’ (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦)) = ((πΉβ€˜π‘₯)(+gβ€˜π‘‡)(πΉβ€˜π‘¦)))
3332adantl 481 . . . . . 6 (((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) ∧ (π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) β†’ (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦)) = ((πΉβ€˜π‘₯)(+gβ€˜π‘‡)(πΉβ€˜π‘¦)))
3425, 29, 333eqtr4d 2776 . . . . 5 (((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) ∧ (π‘₯ ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) β†’ ((𝐹 β†Ύ 𝑋)β€˜(π‘₯(+gβ€˜π‘†)𝑦)) = (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦)))
3534ralrimivva 3194 . . . 4 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ βˆ€π‘₯ ∈ 𝑋 βˆ€π‘¦ ∈ 𝑋 ((𝐹 β†Ύ 𝑋)β€˜(π‘₯(+gβ€˜π‘†)𝑦)) = (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦)))
362, 22ressplusg 17242 . . . . . . . . 9 (𝑋 ∈ (SubMndβ€˜π‘†) β†’ (+gβ€˜π‘†) = (+gβ€˜π‘ˆ))
3736adantl 481 . . . . . . . 8 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (+gβ€˜π‘†) = (+gβ€˜π‘ˆ))
3837oveqd 7421 . . . . . . 7 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (π‘₯(+gβ€˜π‘†)𝑦) = (π‘₯(+gβ€˜π‘ˆ)𝑦))
3938fveqeq2d 6892 . . . . . 6 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (((𝐹 β†Ύ 𝑋)β€˜(π‘₯(+gβ€˜π‘†)𝑦)) = (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦)) ↔ ((𝐹 β†Ύ 𝑋)β€˜(π‘₯(+gβ€˜π‘ˆ)𝑦)) = (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦))))
4013, 39raleqbidv 3336 . . . . 5 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (βˆ€π‘¦ ∈ 𝑋 ((𝐹 β†Ύ 𝑋)β€˜(π‘₯(+gβ€˜π‘†)𝑦)) = (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦)) ↔ βˆ€π‘¦ ∈ (Baseβ€˜π‘ˆ)((𝐹 β†Ύ 𝑋)β€˜(π‘₯(+gβ€˜π‘ˆ)𝑦)) = (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦))))
4113, 40raleqbidv 3336 . . . 4 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (βˆ€π‘₯ ∈ 𝑋 βˆ€π‘¦ ∈ 𝑋 ((𝐹 β†Ύ 𝑋)β€˜(π‘₯(+gβ€˜π‘†)𝑦)) = (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦)) ↔ βˆ€π‘₯ ∈ (Baseβ€˜π‘ˆ)βˆ€π‘¦ ∈ (Baseβ€˜π‘ˆ)((𝐹 β†Ύ 𝑋)β€˜(π‘₯(+gβ€˜π‘ˆ)𝑦)) = (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦))))
4235, 41mpbid 231 . . 3 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ βˆ€π‘₯ ∈ (Baseβ€˜π‘ˆ)βˆ€π‘¦ ∈ (Baseβ€˜π‘ˆ)((𝐹 β†Ύ 𝑋)β€˜(π‘₯(+gβ€˜π‘ˆ)𝑦)) = (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦)))
43 eqid 2726 . . . . . . 7 (0gβ€˜π‘†) = (0gβ€˜π‘†)
4443subm0cl 18734 . . . . . 6 (𝑋 ∈ (SubMndβ€˜π‘†) β†’ (0gβ€˜π‘†) ∈ 𝑋)
4544adantl 481 . . . . 5 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (0gβ€˜π‘†) ∈ 𝑋)
4645fvresd 6904 . . . 4 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ ((𝐹 β†Ύ 𝑋)β€˜(0gβ€˜π‘†)) = (πΉβ€˜(0gβ€˜π‘†)))
472, 43subm0 18738 . . . . . 6 (𝑋 ∈ (SubMndβ€˜π‘†) β†’ (0gβ€˜π‘†) = (0gβ€˜π‘ˆ))
4847adantl 481 . . . . 5 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (0gβ€˜π‘†) = (0gβ€˜π‘ˆ))
4948fveq2d 6888 . . . 4 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ ((𝐹 β†Ύ 𝑋)β€˜(0gβ€˜π‘†)) = ((𝐹 β†Ύ 𝑋)β€˜(0gβ€˜π‘ˆ)))
50 eqid 2726 . . . . . 6 (0gβ€˜π‘‡) = (0gβ€˜π‘‡)
5143, 50mhm0 18722 . . . . 5 (𝐹 ∈ (𝑆 MndHom 𝑇) β†’ (πΉβ€˜(0gβ€˜π‘†)) = (0gβ€˜π‘‡))
5251adantr 480 . . . 4 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (πΉβ€˜(0gβ€˜π‘†)) = (0gβ€˜π‘‡))
5346, 49, 523eqtr3d 2774 . . 3 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ ((𝐹 β†Ύ 𝑋)β€˜(0gβ€˜π‘ˆ)) = (0gβ€˜π‘‡))
5415, 42, 533jca 1125 . 2 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ ((𝐹 β†Ύ 𝑋):(Baseβ€˜π‘ˆ)⟢(Baseβ€˜π‘‡) ∧ βˆ€π‘₯ ∈ (Baseβ€˜π‘ˆ)βˆ€π‘¦ ∈ (Baseβ€˜π‘ˆ)((𝐹 β†Ύ 𝑋)β€˜(π‘₯(+gβ€˜π‘ˆ)𝑦)) = (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦)) ∧ ((𝐹 β†Ύ 𝑋)β€˜(0gβ€˜π‘ˆ)) = (0gβ€˜π‘‡)))
55 eqid 2726 . . 3 (Baseβ€˜π‘ˆ) = (Baseβ€˜π‘ˆ)
56 eqid 2726 . . 3 (+gβ€˜π‘ˆ) = (+gβ€˜π‘ˆ)
57 eqid 2726 . . 3 (0gβ€˜π‘ˆ) = (0gβ€˜π‘ˆ)
5855, 6, 56, 23, 57, 50ismhm 18713 . 2 ((𝐹 β†Ύ 𝑋) ∈ (π‘ˆ MndHom 𝑇) ↔ ((π‘ˆ ∈ Mnd ∧ 𝑇 ∈ Mnd) ∧ ((𝐹 β†Ύ 𝑋):(Baseβ€˜π‘ˆ)⟢(Baseβ€˜π‘‡) ∧ βˆ€π‘₯ ∈ (Baseβ€˜π‘ˆ)βˆ€π‘¦ ∈ (Baseβ€˜π‘ˆ)((𝐹 β†Ύ 𝑋)β€˜(π‘₯(+gβ€˜π‘ˆ)𝑦)) = (((𝐹 β†Ύ 𝑋)β€˜π‘₯)(+gβ€˜π‘‡)((𝐹 β†Ύ 𝑋)β€˜π‘¦)) ∧ ((𝐹 β†Ύ 𝑋)β€˜(0gβ€˜π‘ˆ)) = (0gβ€˜π‘‡))))
594, 54, 58sylanbrc 582 1 ((𝐹 ∈ (𝑆 MndHom 𝑇) ∧ 𝑋 ∈ (SubMndβ€˜π‘†)) β†’ (𝐹 β†Ύ 𝑋) ∈ (π‘ˆ MndHom 𝑇))
Colors of variables: wff setvar class
Syntax hints:   β†’ wi 4   ∧ wa 395   ∧ w3a 1084   = wceq 1533   ∈ wcel 2098  βˆ€wral 3055   βŠ† wss 3943   β†Ύ cres 5671  βŸΆwf 6532  β€˜cfv 6536  (class class class)co 7404  Basecbs 17151   β†Ύs cress 17180  +gcplusg 17204  0gc0g 17392  Mndcmnd 18665   MndHom cmhm 18709  SubMndcsubmnd 18710
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1789  ax-4 1803  ax-5 1905  ax-6 1963  ax-7 2003  ax-8 2100  ax-9 2108  ax-10 2129  ax-11 2146  ax-12 2163  ax-ext 2697  ax-sep 5292  ax-nul 5299  ax-pow 5356  ax-pr 5420  ax-un 7721  ax-cnex 11165  ax-resscn 11166  ax-1cn 11167  ax-icn 11168  ax-addcl 11169  ax-addrcl 11170  ax-mulcl 11171  ax-mulrcl 11172  ax-mulcom 11173  ax-addass 11174  ax-mulass 11175  ax-distr 11176  ax-i2m1 11177  ax-1ne0 11178  ax-1rid 11179  ax-rnegex 11180  ax-rrecex 11181  ax-cnre 11182  ax-pre-lttri 11183  ax-pre-lttrn 11184  ax-pre-ltadd 11185  ax-pre-mulgt0 11186
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 845  df-3or 1085  df-3an 1086  df-tru 1536  df-fal 1546  df-ex 1774  df-nf 1778  df-sb 2060  df-mo 2528  df-eu 2557  df-clab 2704  df-cleq 2718  df-clel 2804  df-nfc 2879  df-ne 2935  df-nel 3041  df-ral 3056  df-rex 3065  df-rmo 3370  df-reu 3371  df-rab 3427  df-v 3470  df-sbc 3773  df-csb 3889  df-dif 3946  df-un 3948  df-in 3950  df-ss 3960  df-pss 3962  df-nul 4318  df-if 4524  df-pw 4599  df-sn 4624  df-pr 4626  df-op 4630  df-uni 4903  df-iun 4992  df-br 5142  df-opab 5204  df-mpt 5225  df-tr 5259  df-id 5567  df-eprel 5573  df-po 5581  df-so 5582  df-fr 5624  df-we 5626  df-xp 5675  df-rel 5676  df-cnv 5677  df-co 5678  df-dm 5679  df-rn 5680  df-res 5681  df-ima 5682  df-pred 6293  df-ord 6360  df-on 6361  df-lim 6362  df-suc 6363  df-iota 6488  df-fun 6538  df-fn 6539  df-f 6540  df-f1 6541  df-fo 6542  df-f1o 6543  df-fv 6544  df-riota 7360  df-ov 7407  df-oprab 7408  df-mpo 7409  df-om 7852  df-2nd 7972  df-frecs 8264  df-wrecs 8295  df-recs 8369  df-rdg 8408  df-er 8702  df-map 8821  df-en 8939  df-dom 8940  df-sdom 8941  df-pnf 11251  df-mnf 11252  df-xr 11253  df-ltxr 11254  df-le 11255  df-sub 11447  df-neg 11448  df-nn 12214  df-2 12276  df-sets 17104  df-slot 17122  df-ndx 17134  df-base 17152  df-ress 17181  df-plusg 17217  df-0g 17394  df-mgm 18571  df-sgrp 18650  df-mnd 18666  df-mhm 18711  df-submnd 18712
This theorem is referenced by:  resrhm  20501  dchrghm  27140
  Copyright terms: Public domain W3C validator