Users' Mathboxes Mathbox for Jeff Madsen < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  rngohomco Structured version   Visualization version   GIF version

Theorem rngohomco 35256
Description: The composition of two ring homomorphisms is a ring homomorphism. (Contributed by Jeff Madsen, 16-Jun-2011.)
Assertion
Ref Expression
rngohomco (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐺𝐹) ∈ (𝑅 RngHom 𝑇))

Proof of Theorem rngohomco
Dummy variables 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2824 . . . . . . 7 (1st𝑆) = (1st𝑆)
2 eqid 2824 . . . . . . 7 ran (1st𝑆) = ran (1st𝑆)
3 eqid 2824 . . . . . . 7 (1st𝑇) = (1st𝑇)
4 eqid 2824 . . . . . . 7 ran (1st𝑇) = ran (1st𝑇)
51, 2, 3, 4rngohomf 35248 . . . . . 6 ((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → 𝐺:ran (1st𝑆)⟶ran (1st𝑇))
653expa 1114 . . . . 5 (((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → 𝐺:ran (1st𝑆)⟶ran (1st𝑇))
763adantl1 1162 . . . 4 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → 𝐺:ran (1st𝑆)⟶ran (1st𝑇))
87adantrl 714 . . 3 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → 𝐺:ran (1st𝑆)⟶ran (1st𝑇))
9 eqid 2824 . . . . . . 7 (1st𝑅) = (1st𝑅)
10 eqid 2824 . . . . . . 7 ran (1st𝑅) = ran (1st𝑅)
119, 10, 1, 2rngohomf 35248 . . . . . 6 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → 𝐹:ran (1st𝑅)⟶ran (1st𝑆))
12113expa 1114 . . . . 5 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → 𝐹:ran (1st𝑅)⟶ran (1st𝑆))
13123adantl3 1164 . . . 4 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → 𝐹:ran (1st𝑅)⟶ran (1st𝑆))
1413adantrr 715 . . 3 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → 𝐹:ran (1st𝑅)⟶ran (1st𝑆))
15 fco 6534 . . 3 ((𝐺:ran (1st𝑆)⟶ran (1st𝑇) ∧ 𝐹:ran (1st𝑅)⟶ran (1st𝑆)) → (𝐺𝐹):ran (1st𝑅)⟶ran (1st𝑇))
168, 14, 15syl2anc 586 . 2 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐺𝐹):ran (1st𝑅)⟶ran (1st𝑇))
17 eqid 2824 . . . . . . 7 (2nd𝑅) = (2nd𝑅)
18 eqid 2824 . . . . . . 7 (GId‘(2nd𝑅)) = (GId‘(2nd𝑅))
1910, 17, 18rngo1cl 35221 . . . . . 6 (𝑅 ∈ RingOps → (GId‘(2nd𝑅)) ∈ ran (1st𝑅))
20193ad2ant1 1129 . . . . 5 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) → (GId‘(2nd𝑅)) ∈ ran (1st𝑅))
2120adantr 483 . . . 4 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (GId‘(2nd𝑅)) ∈ ran (1st𝑅))
22 fvco3 6763 . . . 4 ((𝐹:ran (1st𝑅)⟶ran (1st𝑆) ∧ (GId‘(2nd𝑅)) ∈ ran (1st𝑅)) → ((𝐺𝐹)‘(GId‘(2nd𝑅))) = (𝐺‘(𝐹‘(GId‘(2nd𝑅)))))
2314, 21, 22syl2anc 586 . . 3 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → ((𝐺𝐹)‘(GId‘(2nd𝑅))) = (𝐺‘(𝐹‘(GId‘(2nd𝑅)))))
24 eqid 2824 . . . . . . . . 9 (2nd𝑆) = (2nd𝑆)
25 eqid 2824 . . . . . . . . 9 (GId‘(2nd𝑆)) = (GId‘(2nd𝑆))
2617, 18, 24, 25rngohom1 35250 . . . . . . . 8 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → (𝐹‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑆)))
27263expa 1114 . . . . . . 7 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → (𝐹‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑆)))
28273adantl3 1164 . . . . . 6 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → (𝐹‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑆)))
2928adantrr 715 . . . . 5 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐹‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑆)))
3029fveq2d 6677 . . . 4 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐺‘(𝐹‘(GId‘(2nd𝑅)))) = (𝐺‘(GId‘(2nd𝑆))))
31 eqid 2824 . . . . . . . 8 (2nd𝑇) = (2nd𝑇)
32 eqid 2824 . . . . . . . 8 (GId‘(2nd𝑇)) = (GId‘(2nd𝑇))
3324, 25, 31, 32rngohom1 35250 . . . . . . 7 ((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (𝐺‘(GId‘(2nd𝑆))) = (GId‘(2nd𝑇)))
34333expa 1114 . . . . . 6 (((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (𝐺‘(GId‘(2nd𝑆))) = (GId‘(2nd𝑇)))
35343adantl1 1162 . . . . 5 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (𝐺‘(GId‘(2nd𝑆))) = (GId‘(2nd𝑇)))
3635adantrl 714 . . . 4 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐺‘(GId‘(2nd𝑆))) = (GId‘(2nd𝑇)))
3730, 36eqtrd 2859 . . 3 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐺‘(𝐹‘(GId‘(2nd𝑅)))) = (GId‘(2nd𝑇)))
3823, 37eqtrd 2859 . 2 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → ((𝐺𝐹)‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑇)))
399, 10, 1rngohomadd 35251 . . . . . . . . . . . 12 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐹‘(𝑥(1st𝑅)𝑦)) = ((𝐹𝑥)(1st𝑆)(𝐹𝑦)))
4039ex 415 . . . . . . . . . . 11 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹‘(𝑥(1st𝑅)𝑦)) = ((𝐹𝑥)(1st𝑆)(𝐹𝑦))))
41403expa 1114 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹‘(𝑥(1st𝑅)𝑦)) = ((𝐹𝑥)(1st𝑆)(𝐹𝑦))))
42413adantl3 1164 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹‘(𝑥(1st𝑅)𝑦)) = ((𝐹𝑥)(1st𝑆)(𝐹𝑦))))
4342imp 409 . . . . . . . 8 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐹‘(𝑥(1st𝑅)𝑦)) = ((𝐹𝑥)(1st𝑆)(𝐹𝑦)))
4443adantlrr 719 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐹‘(𝑥(1st𝑅)𝑦)) = ((𝐹𝑥)(1st𝑆)(𝐹𝑦)))
4544fveq2d 6677 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐺‘(𝐹‘(𝑥(1st𝑅)𝑦))) = (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))))
469, 10, 1, 2rngohomcl 35249 . . . . . . . . . . . . 13 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ 𝑥 ∈ ran (1st𝑅)) → (𝐹𝑥) ∈ ran (1st𝑆))
479, 10, 1, 2rngohomcl 35249 . . . . . . . . . . . . 13 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹𝑦) ∈ ran (1st𝑆))
4846, 47anim12dan 620 . . . . . . . . . . . 12 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)))
4948ex 415 . . . . . . . . . . 11 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))))
50493expa 1114 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))))
51503adantl3 1164 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))))
5251imp 409 . . . . . . . 8 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)))
5352adantlrr 719 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)))
541, 2, 3rngohomadd 35251 . . . . . . . . . . . 12 (((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) ∧ ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
5554ex 415 . . . . . . . . . . 11 ((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦)))))
56553expa 1114 . . . . . . . . . 10 (((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦)))))
57563adantl1 1162 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦)))))
5857imp 409 . . . . . . . 8 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) ∧ ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
5958adantlrl 718 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
6053, 59syldan 593 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
6145, 60eqtrd 2859 . . . . 5 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐺‘(𝐹‘(𝑥(1st𝑅)𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
629, 10rngogcl 35194 . . . . . . . . 9 ((𝑅 ∈ RingOps ∧ 𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝑥(1st𝑅)𝑦) ∈ ran (1st𝑅))
63623expb 1116 . . . . . . . 8 ((𝑅 ∈ RingOps ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝑥(1st𝑅)𝑦) ∈ ran (1st𝑅))
64633ad2antl1 1181 . . . . . . 7 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝑥(1st𝑅)𝑦) ∈ ran (1st𝑅))
6564adantlr 713 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝑥(1st𝑅)𝑦) ∈ ran (1st𝑅))
66 fvco3 6763 . . . . . . 7 ((𝐹:ran (1st𝑅)⟶ran (1st𝑆) ∧ (𝑥(1st𝑅)𝑦) ∈ ran (1st𝑅)) → ((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (𝐺‘(𝐹‘(𝑥(1st𝑅)𝑦))))
6714, 66sylan 582 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥(1st𝑅)𝑦) ∈ ran (1st𝑅)) → ((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (𝐺‘(𝐹‘(𝑥(1st𝑅)𝑦))))
6865, 67syldan 593 . . . . 5 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (𝐺‘(𝐹‘(𝑥(1st𝑅)𝑦))))
69 fvco3 6763 . . . . . . . 8 ((𝐹:ran (1st𝑅)⟶ran (1st𝑆) ∧ 𝑥 ∈ ran (1st𝑅)) → ((𝐺𝐹)‘𝑥) = (𝐺‘(𝐹𝑥)))
7014, 69sylan 582 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ 𝑥 ∈ ran (1st𝑅)) → ((𝐺𝐹)‘𝑥) = (𝐺‘(𝐹𝑥)))
71 fvco3 6763 . . . . . . . 8 ((𝐹:ran (1st𝑅)⟶ran (1st𝑆) ∧ 𝑦 ∈ ran (1st𝑅)) → ((𝐺𝐹)‘𝑦) = (𝐺‘(𝐹𝑦)))
7214, 71sylan 582 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ 𝑦 ∈ ran (1st𝑅)) → ((𝐺𝐹)‘𝑦) = (𝐺‘(𝐹𝑦)))
7370, 72anim12dan 620 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (((𝐺𝐹)‘𝑥) = (𝐺‘(𝐹𝑥)) ∧ ((𝐺𝐹)‘𝑦) = (𝐺‘(𝐹𝑦))))
74 oveq12 7168 . . . . . 6 ((((𝐺𝐹)‘𝑥) = (𝐺‘(𝐹𝑥)) ∧ ((𝐺𝐹)‘𝑦) = (𝐺‘(𝐹𝑦))) → (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
7573, 74syl 17 . . . . 5 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
7661, 68, 753eqtr4d 2869 . . . 4 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)))
779, 10, 17, 24rngohommul 35252 . . . . . . . . . . . 12 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐹‘(𝑥(2nd𝑅)𝑦)) = ((𝐹𝑥)(2nd𝑆)(𝐹𝑦)))
7877ex 415 . . . . . . . . . . 11 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹‘(𝑥(2nd𝑅)𝑦)) = ((𝐹𝑥)(2nd𝑆)(𝐹𝑦))))
79783expa 1114 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹‘(𝑥(2nd𝑅)𝑦)) = ((𝐹𝑥)(2nd𝑆)(𝐹𝑦))))
80793adantl3 1164 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹‘(𝑥(2nd𝑅)𝑦)) = ((𝐹𝑥)(2nd𝑆)(𝐹𝑦))))
8180imp 409 . . . . . . . 8 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐹‘(𝑥(2nd𝑅)𝑦)) = ((𝐹𝑥)(2nd𝑆)(𝐹𝑦)))
8281adantlrr 719 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐹‘(𝑥(2nd𝑅)𝑦)) = ((𝐹𝑥)(2nd𝑆)(𝐹𝑦)))
8382fveq2d 6677 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐺‘(𝐹‘(𝑥(2nd𝑅)𝑦))) = (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))))
841, 2, 24, 31rngohommul 35252 . . . . . . . . . . . 12 (((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) ∧ ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
8584ex 415 . . . . . . . . . . 11 ((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦)))))
86853expa 1114 . . . . . . . . . 10 (((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦)))))
87863adantl1 1162 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦)))))
8887imp 409 . . . . . . . 8 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) ∧ ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
8988adantlrl 718 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
9053, 89syldan 593 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
9183, 90eqtrd 2859 . . . . 5 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐺‘(𝐹‘(𝑥(2nd𝑅)𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
929, 17, 10rngocl 35183 . . . . . . . . 9 ((𝑅 ∈ RingOps ∧ 𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝑥(2nd𝑅)𝑦) ∈ ran (1st𝑅))
93923expb 1116 . . . . . . . 8 ((𝑅 ∈ RingOps ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝑥(2nd𝑅)𝑦) ∈ ran (1st𝑅))
94933ad2antl1 1181 . . . . . . 7 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝑥(2nd𝑅)𝑦) ∈ ran (1st𝑅))
9594adantlr 713 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝑥(2nd𝑅)𝑦) ∈ ran (1st𝑅))
96 fvco3 6763 . . . . . . 7 ((𝐹:ran (1st𝑅)⟶ran (1st𝑆) ∧ (𝑥(2nd𝑅)𝑦) ∈ ran (1st𝑅)) → ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (𝐺‘(𝐹‘(𝑥(2nd𝑅)𝑦))))
9714, 96sylan 582 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥(2nd𝑅)𝑦) ∈ ran (1st𝑅)) → ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (𝐺‘(𝐹‘(𝑥(2nd𝑅)𝑦))))
9895, 97syldan 593 . . . . 5 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (𝐺‘(𝐹‘(𝑥(2nd𝑅)𝑦))))
99 oveq12 7168 . . . . . 6 ((((𝐺𝐹)‘𝑥) = (𝐺‘(𝐹𝑥)) ∧ ((𝐺𝐹)‘𝑦) = (𝐺‘(𝐹𝑦))) → (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦)) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
10073, 99syl 17 . . . . 5 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦)) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
10191, 98, 1003eqtr4d 2869 . . . 4 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦)))
10276, 101jca 514 . . 3 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)) ∧ ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦))))
103102ralrimivva 3194 . 2 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → ∀𝑥 ∈ ran (1st𝑅)∀𝑦 ∈ ran (1st𝑅)(((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)) ∧ ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦))))
1049, 17, 10, 18, 3, 31, 4, 32isrngohom 35247 . . . 4 ((𝑅 ∈ RingOps ∧ 𝑇 ∈ RingOps) → ((𝐺𝐹) ∈ (𝑅 RngHom 𝑇) ↔ ((𝐺𝐹):ran (1st𝑅)⟶ran (1st𝑇) ∧ ((𝐺𝐹)‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑇)) ∧ ∀𝑥 ∈ ran (1st𝑅)∀𝑦 ∈ ran (1st𝑅)(((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)) ∧ ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦))))))
1051043adant2 1127 . . 3 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) → ((𝐺𝐹) ∈ (𝑅 RngHom 𝑇) ↔ ((𝐺𝐹):ran (1st𝑅)⟶ran (1st𝑇) ∧ ((𝐺𝐹)‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑇)) ∧ ∀𝑥 ∈ ran (1st𝑅)∀𝑦 ∈ ran (1st𝑅)(((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)) ∧ ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦))))))
106105adantr 483 . 2 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → ((𝐺𝐹) ∈ (𝑅 RngHom 𝑇) ↔ ((𝐺𝐹):ran (1st𝑅)⟶ran (1st𝑇) ∧ ((𝐺𝐹)‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑇)) ∧ ∀𝑥 ∈ ran (1st𝑅)∀𝑦 ∈ ran (1st𝑅)(((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)) ∧ ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦))))))
10716, 38, 103, 106mpbir3and 1338 1 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐺𝐹) ∈ (𝑅 RngHom 𝑇))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 398  w3a 1083   = wceq 1536  wcel 2113  wral 3141  ran crn 5559  ccom 5562  wf 6354  cfv 6358  (class class class)co 7159  1st c1st 7690  2nd c2nd 7691  GIdcgi 28270  RingOpscrngo 35176   RngHom crnghom 35242
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1969  ax-7 2014  ax-8 2115  ax-9 2123  ax-10 2144  ax-11 2160  ax-12 2176  ax-ext 2796  ax-sep 5206  ax-nul 5213  ax-pow 5269  ax-pr 5333  ax-un 7464
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3an 1085  df-tru 1539  df-ex 1780  df-nf 1784  df-sb 2069  df-mo 2621  df-eu 2653  df-clab 2803  df-cleq 2817  df-clel 2896  df-nfc 2966  df-ne 3020  df-ral 3146  df-rex 3147  df-reu 3148  df-rmo 3149  df-rab 3150  df-v 3499  df-sbc 3776  df-csb 3887  df-dif 3942  df-un 3944  df-in 3946  df-ss 3955  df-nul 4295  df-if 4471  df-pw 4544  df-sn 4571  df-pr 4573  df-op 4577  df-uni 4842  df-iun 4924  df-br 5070  df-opab 5132  df-mpt 5150  df-id 5463  df-xp 5564  df-rel 5565  df-cnv 5566  df-co 5567  df-dm 5568  df-rn 5569  df-res 5570  df-ima 5571  df-iota 6317  df-fun 6360  df-fn 6361  df-f 6362  df-fo 6364  df-fv 6366  df-riota 7117  df-ov 7162  df-oprab 7163  df-mpo 7164  df-1st 7692  df-2nd 7693  df-map 8411  df-grpo 28273  df-gid 28274  df-ablo 28325  df-ass 35125  df-exid 35127  df-mgmOLD 35131  df-sgrOLD 35143  df-mndo 35149  df-rngo 35177  df-rngohom 35245
This theorem is referenced by:  rngoisoco  35264
  Copyright terms: Public domain W3C validator