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 36188
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 2737 . . . . . . 7 (1st𝑆) = (1st𝑆)
2 eqid 2737 . . . . . . 7 ran (1st𝑆) = ran (1st𝑆)
3 eqid 2737 . . . . . . 7 (1st𝑇) = (1st𝑇)
4 eqid 2737 . . . . . . 7 ran (1st𝑇) = ran (1st𝑇)
51, 2, 3, 4rngohomf 36180 . . . . . 6 ((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → 𝐺:ran (1st𝑆)⟶ran (1st𝑇))
653expa 1117 . . . . 5 (((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → 𝐺:ran (1st𝑆)⟶ran (1st𝑇))
763adantl1 1165 . . . 4 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → 𝐺:ran (1st𝑆)⟶ran (1st𝑇))
87adantrl 713 . . 3 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → 𝐺:ran (1st𝑆)⟶ran (1st𝑇))
9 eqid 2737 . . . . . . 7 (1st𝑅) = (1st𝑅)
10 eqid 2737 . . . . . . 7 ran (1st𝑅) = ran (1st𝑅)
119, 10, 1, 2rngohomf 36180 . . . . . 6 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → 𝐹:ran (1st𝑅)⟶ran (1st𝑆))
12113expa 1117 . . . . 5 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → 𝐹:ran (1st𝑅)⟶ran (1st𝑆))
13123adantl3 1167 . . . 4 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → 𝐹:ran (1st𝑅)⟶ran (1st𝑆))
1413adantrr 714 . . 3 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → 𝐹:ran (1st𝑅)⟶ran (1st𝑆))
15 fco 6661 . . 3 ((𝐺:ran (1st𝑆)⟶ran (1st𝑇) ∧ 𝐹:ran (1st𝑅)⟶ran (1st𝑆)) → (𝐺𝐹):ran (1st𝑅)⟶ran (1st𝑇))
168, 14, 15syl2anc 584 . 2 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐺𝐹):ran (1st𝑅)⟶ran (1st𝑇))
17 eqid 2737 . . . . . . 7 (2nd𝑅) = (2nd𝑅)
18 eqid 2737 . . . . . . 7 (GId‘(2nd𝑅)) = (GId‘(2nd𝑅))
1910, 17, 18rngo1cl 36153 . . . . . 6 (𝑅 ∈ RingOps → (GId‘(2nd𝑅)) ∈ ran (1st𝑅))
20193ad2ant1 1132 . . . . 5 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) → (GId‘(2nd𝑅)) ∈ ran (1st𝑅))
2120adantr 481 . . . 4 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (GId‘(2nd𝑅)) ∈ ran (1st𝑅))
22 fvco3 6906 . . . 4 ((𝐹:ran (1st𝑅)⟶ran (1st𝑆) ∧ (GId‘(2nd𝑅)) ∈ ran (1st𝑅)) → ((𝐺𝐹)‘(GId‘(2nd𝑅))) = (𝐺‘(𝐹‘(GId‘(2nd𝑅)))))
2314, 21, 22syl2anc 584 . . 3 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → ((𝐺𝐹)‘(GId‘(2nd𝑅))) = (𝐺‘(𝐹‘(GId‘(2nd𝑅)))))
24 eqid 2737 . . . . . . . . 9 (2nd𝑆) = (2nd𝑆)
25 eqid 2737 . . . . . . . . 9 (GId‘(2nd𝑆)) = (GId‘(2nd𝑆))
2617, 18, 24, 25rngohom1 36182 . . . . . . . 8 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → (𝐹‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑆)))
27263expa 1117 . . . . . . 7 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → (𝐹‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑆)))
28273adantl3 1167 . . . . . 6 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → (𝐹‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑆)))
2928adantrr 714 . . . . 5 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐹‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑆)))
3029fveq2d 6815 . . . 4 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐺‘(𝐹‘(GId‘(2nd𝑅)))) = (𝐺‘(GId‘(2nd𝑆))))
31 eqid 2737 . . . . . . . 8 (2nd𝑇) = (2nd𝑇)
32 eqid 2737 . . . . . . . 8 (GId‘(2nd𝑇)) = (GId‘(2nd𝑇))
3324, 25, 31, 32rngohom1 36182 . . . . . . 7 ((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (𝐺‘(GId‘(2nd𝑆))) = (GId‘(2nd𝑇)))
34333expa 1117 . . . . . 6 (((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (𝐺‘(GId‘(2nd𝑆))) = (GId‘(2nd𝑇)))
35343adantl1 1165 . . . . 5 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (𝐺‘(GId‘(2nd𝑆))) = (GId‘(2nd𝑇)))
3635adantrl 713 . . . 4 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐺‘(GId‘(2nd𝑆))) = (GId‘(2nd𝑇)))
3730, 36eqtrd 2777 . . 3 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐺‘(𝐹‘(GId‘(2nd𝑅)))) = (GId‘(2nd𝑇)))
3823, 37eqtrd 2777 . 2 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → ((𝐺𝐹)‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑇)))
399, 10, 1rngohomadd 36183 . . . . . . . . . . . 12 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐹‘(𝑥(1st𝑅)𝑦)) = ((𝐹𝑥)(1st𝑆)(𝐹𝑦)))
4039ex 413 . . . . . . . . . . 11 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹‘(𝑥(1st𝑅)𝑦)) = ((𝐹𝑥)(1st𝑆)(𝐹𝑦))))
41403expa 1117 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹‘(𝑥(1st𝑅)𝑦)) = ((𝐹𝑥)(1st𝑆)(𝐹𝑦))))
42413adantl3 1167 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹‘(𝑥(1st𝑅)𝑦)) = ((𝐹𝑥)(1st𝑆)(𝐹𝑦))))
4342imp 407 . . . . . . . 8 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐹‘(𝑥(1st𝑅)𝑦)) = ((𝐹𝑥)(1st𝑆)(𝐹𝑦)))
4443adantlrr 718 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐹‘(𝑥(1st𝑅)𝑦)) = ((𝐹𝑥)(1st𝑆)(𝐹𝑦)))
4544fveq2d 6815 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐺‘(𝐹‘(𝑥(1st𝑅)𝑦))) = (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))))
469, 10, 1, 2rngohomcl 36181 . . . . . . . . . . . . 13 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ 𝑥 ∈ ran (1st𝑅)) → (𝐹𝑥) ∈ ran (1st𝑆))
479, 10, 1, 2rngohomcl 36181 . . . . . . . . . . . . 13 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹𝑦) ∈ ran (1st𝑆))
4846, 47anim12dan 619 . . . . . . . . . . . 12 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)))
4948ex 413 . . . . . . . . . . 11 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))))
50493expa 1117 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))))
51503adantl3 1167 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))))
5251imp 407 . . . . . . . 8 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)))
5352adantlrr 718 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)))
541, 2, 3rngohomadd 36183 . . . . . . . . . . . 12 (((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) ∧ ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
5554ex 413 . . . . . . . . . . 11 ((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦)))))
56553expa 1117 . . . . . . . . . 10 (((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦)))))
57563adantl1 1165 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦)))))
5857imp 407 . . . . . . . 8 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) ∧ ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
5958adantlrl 717 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
6053, 59syldan 591 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐺‘((𝐹𝑥)(1st𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
6145, 60eqtrd 2777 . . . . 5 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐺‘(𝐹‘(𝑥(1st𝑅)𝑦))) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
629, 10rngogcl 36126 . . . . . . . . 9 ((𝑅 ∈ RingOps ∧ 𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝑥(1st𝑅)𝑦) ∈ ran (1st𝑅))
63623expb 1119 . . . . . . . 8 ((𝑅 ∈ RingOps ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝑥(1st𝑅)𝑦) ∈ ran (1st𝑅))
64633ad2antl1 1184 . . . . . . 7 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝑥(1st𝑅)𝑦) ∈ ran (1st𝑅))
6564adantlr 712 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝑥(1st𝑅)𝑦) ∈ ran (1st𝑅))
66 fvco3 6906 . . . . . . 7 ((𝐹:ran (1st𝑅)⟶ran (1st𝑆) ∧ (𝑥(1st𝑅)𝑦) ∈ ran (1st𝑅)) → ((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (𝐺‘(𝐹‘(𝑥(1st𝑅)𝑦))))
6714, 66sylan 580 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥(1st𝑅)𝑦) ∈ ran (1st𝑅)) → ((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (𝐺‘(𝐹‘(𝑥(1st𝑅)𝑦))))
6865, 67syldan 591 . . . . 5 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (𝐺‘(𝐹‘(𝑥(1st𝑅)𝑦))))
69 fvco3 6906 . . . . . . . 8 ((𝐹:ran (1st𝑅)⟶ran (1st𝑆) ∧ 𝑥 ∈ ran (1st𝑅)) → ((𝐺𝐹)‘𝑥) = (𝐺‘(𝐹𝑥)))
7014, 69sylan 580 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ 𝑥 ∈ ran (1st𝑅)) → ((𝐺𝐹)‘𝑥) = (𝐺‘(𝐹𝑥)))
71 fvco3 6906 . . . . . . . 8 ((𝐹:ran (1st𝑅)⟶ran (1st𝑆) ∧ 𝑦 ∈ ran (1st𝑅)) → ((𝐺𝐹)‘𝑦) = (𝐺‘(𝐹𝑦)))
7214, 71sylan 580 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ 𝑦 ∈ ran (1st𝑅)) → ((𝐺𝐹)‘𝑦) = (𝐺‘(𝐹𝑦)))
7370, 72anim12dan 619 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (((𝐺𝐹)‘𝑥) = (𝐺‘(𝐹𝑥)) ∧ ((𝐺𝐹)‘𝑦) = (𝐺‘(𝐹𝑦))))
74 oveq12 7324 . . . . . 6 ((((𝐺𝐹)‘𝑥) = (𝐺‘(𝐹𝑥)) ∧ ((𝐺𝐹)‘𝑦) = (𝐺‘(𝐹𝑦))) → (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
7573, 74syl 17 . . . . 5 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)) = ((𝐺‘(𝐹𝑥))(1st𝑇)(𝐺‘(𝐹𝑦))))
7661, 68, 753eqtr4d 2787 . . . 4 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)))
779, 10, 17, 24rngohommul 36184 . . . . . . . . . . . 12 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐹‘(𝑥(2nd𝑅)𝑦)) = ((𝐹𝑥)(2nd𝑆)(𝐹𝑦)))
7877ex 413 . . . . . . . . . . 11 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹‘(𝑥(2nd𝑅)𝑦)) = ((𝐹𝑥)(2nd𝑆)(𝐹𝑦))))
79783expa 1117 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹‘(𝑥(2nd𝑅)𝑦)) = ((𝐹𝑥)(2nd𝑆)(𝐹𝑦))))
80793adantl3 1167 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) → ((𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝐹‘(𝑥(2nd𝑅)𝑦)) = ((𝐹𝑥)(2nd𝑆)(𝐹𝑦))))
8180imp 407 . . . . . . . 8 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐹 ∈ (𝑅 RngHom 𝑆)) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐹‘(𝑥(2nd𝑅)𝑦)) = ((𝐹𝑥)(2nd𝑆)(𝐹𝑦)))
8281adantlrr 718 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐹‘(𝑥(2nd𝑅)𝑦)) = ((𝐹𝑥)(2nd𝑆)(𝐹𝑦)))
8382fveq2d 6815 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐺‘(𝐹‘(𝑥(2nd𝑅)𝑦))) = (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))))
841, 2, 24, 31rngohommul 36184 . . . . . . . . . . . 12 (((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) ∧ ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
8584ex 413 . . . . . . . . . . 11 ((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦)))))
86853expa 1117 . . . . . . . . . 10 (((𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦)))))
87863adantl1 1165 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) → (((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆)) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦)))))
8887imp 407 . . . . . . . 8 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇)) ∧ ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
8988adantlrl 717 . . . . . . 7 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ ((𝐹𝑥) ∈ ran (1st𝑆) ∧ (𝐹𝑦) ∈ ran (1st𝑆))) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
9053, 89syldan 591 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐺‘((𝐹𝑥)(2nd𝑆)(𝐹𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
9183, 90eqtrd 2777 . . . . 5 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝐺‘(𝐹‘(𝑥(2nd𝑅)𝑦))) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
929, 17, 10rngocl 36115 . . . . . . . . 9 ((𝑅 ∈ RingOps ∧ 𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅)) → (𝑥(2nd𝑅)𝑦) ∈ ran (1st𝑅))
93923expb 1119 . . . . . . . 8 ((𝑅 ∈ RingOps ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝑥(2nd𝑅)𝑦) ∈ ran (1st𝑅))
94933ad2antl1 1184 . . . . . . 7 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝑥(2nd𝑅)𝑦) ∈ ran (1st𝑅))
9594adantlr 712 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (𝑥(2nd𝑅)𝑦) ∈ ran (1st𝑅))
96 fvco3 6906 . . . . . . 7 ((𝐹:ran (1st𝑅)⟶ran (1st𝑆) ∧ (𝑥(2nd𝑅)𝑦) ∈ ran (1st𝑅)) → ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (𝐺‘(𝐹‘(𝑥(2nd𝑅)𝑦))))
9714, 96sylan 580 . . . . . 6 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥(2nd𝑅)𝑦) ∈ ran (1st𝑅)) → ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (𝐺‘(𝐹‘(𝑥(2nd𝑅)𝑦))))
9895, 97syldan 591 . . . . 5 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (𝐺‘(𝐹‘(𝑥(2nd𝑅)𝑦))))
99 oveq12 7324 . . . . . 6 ((((𝐺𝐹)‘𝑥) = (𝐺‘(𝐹𝑥)) ∧ ((𝐺𝐹)‘𝑦) = (𝐺‘(𝐹𝑦))) → (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦)) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
10073, 99syl 17 . . . . 5 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦)) = ((𝐺‘(𝐹𝑥))(2nd𝑇)(𝐺‘(𝐹𝑦))))
10191, 98, 1003eqtr4d 2787 . . . 4 ((((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) ∧ (𝑥 ∈ ran (1st𝑅) ∧ 𝑦 ∈ ran (1st𝑅))) → ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦)))
10276, 101jca 512 . . 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 36179 . . . 4 ((𝑅 ∈ RingOps ∧ 𝑇 ∈ RingOps) → ((𝐺𝐹) ∈ (𝑅 RngHom 𝑇) ↔ ((𝐺𝐹):ran (1st𝑅)⟶ran (1st𝑇) ∧ ((𝐺𝐹)‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑇)) ∧ ∀𝑥 ∈ ran (1st𝑅)∀𝑦 ∈ ran (1st𝑅)(((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)) ∧ ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦))))))
1051043adant2 1130 . . 3 ((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) → ((𝐺𝐹) ∈ (𝑅 RngHom 𝑇) ↔ ((𝐺𝐹):ran (1st𝑅)⟶ran (1st𝑇) ∧ ((𝐺𝐹)‘(GId‘(2nd𝑅))) = (GId‘(2nd𝑇)) ∧ ∀𝑥 ∈ ran (1st𝑅)∀𝑦 ∈ ran (1st𝑅)(((𝐺𝐹)‘(𝑥(1st𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(1st𝑇)((𝐺𝐹)‘𝑦)) ∧ ((𝐺𝐹)‘(𝑥(2nd𝑅)𝑦)) = (((𝐺𝐹)‘𝑥)(2nd𝑇)((𝐺𝐹)‘𝑦))))))
106105adantr 481 . 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 1341 1 (((𝑅 ∈ RingOps ∧ 𝑆 ∈ RingOps ∧ 𝑇 ∈ RingOps) ∧ (𝐹 ∈ (𝑅 RngHom 𝑆) ∧ 𝐺 ∈ (𝑆 RngHom 𝑇))) → (𝐺𝐹) ∈ (𝑅 RngHom 𝑇))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 396  w3a 1086   = wceq 1540  wcel 2105  wral 3062  ran crn 5608  ccom 5611  wf 6461  cfv 6465  (class class class)co 7315  1st c1st 7874  2nd c2nd 7875  GIdcgi 28961  RingOpscrngo 36108   RngHom crnghom 36174
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1912  ax-6 1970  ax-7 2010  ax-8 2107  ax-9 2115  ax-10 2136  ax-11 2153  ax-12 2170  ax-ext 2708  ax-sep 5238  ax-nul 5245  ax-pow 5303  ax-pr 5367  ax-un 7628
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1781  df-nf 1785  df-sb 2067  df-mo 2539  df-eu 2568  df-clab 2715  df-cleq 2729  df-clel 2815  df-nfc 2887  df-ne 2942  df-ral 3063  df-rex 3072  df-rmo 3350  df-reu 3351  df-rab 3405  df-v 3443  df-sbc 3727  df-csb 3843  df-dif 3900  df-un 3902  df-in 3904  df-ss 3914  df-nul 4268  df-if 4472  df-pw 4547  df-sn 4572  df-pr 4574  df-op 4578  df-uni 4851  df-iun 4939  df-br 5088  df-opab 5150  df-mpt 5171  df-id 5507  df-xp 5613  df-rel 5614  df-cnv 5615  df-co 5616  df-dm 5617  df-rn 5618  df-res 5619  df-ima 5620  df-iota 6417  df-fun 6467  df-fn 6468  df-f 6469  df-fo 6471  df-fv 6473  df-riota 7272  df-ov 7318  df-oprab 7319  df-mpo 7320  df-1st 7876  df-2nd 7877  df-map 8665  df-grpo 28964  df-gid 28965  df-ablo 29016  df-ass 36057  df-exid 36059  df-mgmOLD 36063  df-sgrOLD 36075  df-mndo 36081  df-rngo 36109  df-rngohom 36177
This theorem is referenced by:  rngoisoco  36196
  Copyright terms: Public domain W3C validator