Metamath Proof Explorer


Theorem subccocl

Description: A subcategory is closed under composition. (Contributed by Mario Carneiro, 4-Jan-2017)

Ref Expression
Hypotheses subcidcl.j ⊢ φ → J ∈ Subcat ⁡ C
subcidcl.2 ⊢ φ → J Fn S × S
subcidcl.x ⊢ φ → X ∈ S
subccocl.o ⊢ · ˙ = comp ⁡ C
subccocl.y ⊢ φ → Y ∈ S
subccocl.z ⊢ φ → Z ∈ S
subccocl.f ⊢ φ → F ∈ X J Y
subccocl.g ⊢ φ → G ∈ Y J Z
Assertion subccocl ⊢ φ → G X Y · ˙ Z F ∈ X J Z

Proof

Step Hyp Ref Expression
1 subcidcl.j ⊢ φ → J ∈ Subcat ⁡ C
2 subcidcl.2 ⊢ φ → J Fn S × S
3 subcidcl.x ⊢ φ → X ∈ S
4 subccocl.o ⊢ · ˙ = comp ⁡ C
5 subccocl.y ⊢ φ → Y ∈ S
6 subccocl.z ⊢ φ → Z ∈ S
7 subccocl.f ⊢ φ → F ∈ X J Y
8 subccocl.g ⊢ φ → G ∈ Y J Z
9 eqid ⊢ Hom 𝑓 ⁡ C = Hom 𝑓 ⁡ C
10 eqid ⊢ Id ⁡ C = Id ⁡ C
11 subcrcl ⊢ J ∈ Subcat ⁡ C → C ∈ Cat
12 1 11 syl ⊢ φ → C ∈ Cat
13 9 10 4 12 2 issubc2 ⊢ φ → J ∈ Subcat ⁡ C ↔ J ⊆ cat Hom 𝑓 ⁡ C ∧ ∀ x ∈ S Id ⁡ C ⁡ x ∈ x J x ∧ ∀ y ∈ S ∀ z ∈ S ∀ f ∈ x J y ∀ g ∈ y J z g x y · ˙ z f ∈ x J z
14 1 13 mpbid ⊢ φ → J ⊆ cat Hom 𝑓 ⁡ C ∧ ∀ x ∈ S Id ⁡ C ⁡ x ∈ x J x ∧ ∀ y ∈ S ∀ z ∈ S ∀ f ∈ x J y ∀ g ∈ y J z g x y · ˙ z f ∈ x J z
15 14 simprd ⊢ φ → ∀ x ∈ S Id ⁡ C ⁡ x ∈ x J x ∧ ∀ y ∈ S ∀ z ∈ S ∀ f ∈ x J y ∀ g ∈ y J z g x y · ˙ z f ∈ x J z
16 5 adantr ⊢ φ ∧ x = X → Y ∈ S
17 6 ad2antrr ⊢ φ ∧ x = X ∧ y = Y → Z ∈ S
18 7 ad3antrrr ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z → F ∈ X J Y
19 simpllr ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z → x = X
20 simplr ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z → y = Y
21 19 20 oveq12d ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z → x J y = X J Y
22 18 21 eleqtrrd ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z → F ∈ x J y
23 8 ad4antr ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F → G ∈ Y J Z
24 simpllr ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F → y = Y
25 simplr ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F → z = Z
26 24 25 oveq12d ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F → y J z = Y J Z
27 23 26 eleqtrrd ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F → G ∈ y J z
28 simp-5r ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F ∧ g = G → x = X
29 simp-4r ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F ∧ g = G → y = Y
30 28 29 opeq12d ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F ∧ g = G → x y = X Y
31 simpllr ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F ∧ g = G → z = Z
32 30 31 oveq12d ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F ∧ g = G → x y · ˙ z = X Y · ˙ Z
33 simpr ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F ∧ g = G → g = G
34 simplr ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F ∧ g = G → f = F
35 32 33 34 oveq123d ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F ∧ g = G → g x y · ˙ z f = G X Y · ˙ Z F
36 28 31 oveq12d ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F ∧ g = G → x J z = X J Z
37 35 36 eleq12d ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F ∧ g = G → g x y · ˙ z f ∈ x J z ↔ G X Y · ˙ Z F ∈ X J Z
38 27 37 rspcdv ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z ∧ f = F → ∀ g ∈ y J z g x y · ˙ z f ∈ x J z → G X Y · ˙ Z F ∈ X J Z
39 22 38 rspcimdv ⊢ φ ∧ x = X ∧ y = Y ∧ z = Z → ∀ f ∈ x J y ∀ g ∈ y J z g x y · ˙ z f ∈ x J z → G X Y · ˙ Z F ∈ X J Z
40 17 39 rspcimdv ⊢ φ ∧ x = X ∧ y = Y → ∀ z ∈ S ∀ f ∈ x J y ∀ g ∈ y J z g x y · ˙ z f ∈ x J z → G X Y · ˙ Z F ∈ X J Z
41 16 40 rspcimdv ⊢ φ ∧ x = X → ∀ y ∈ S ∀ z ∈ S ∀ f ∈ x J y ∀ g ∈ y J z g x y · ˙ z f ∈ x J z → G X Y · ˙ Z F ∈ X J Z
42 41 adantld ⊢ φ ∧ x = X → Id ⁡ C ⁡ x ∈ x J x ∧ ∀ y ∈ S ∀ z ∈ S ∀ f ∈ x J y ∀ g ∈ y J z g x y · ˙ z f ∈ x J z → G X Y · ˙ Z F ∈ X J Z
43 3 42 rspcimdv ⊢ φ → ∀ x ∈ S Id ⁡ C ⁡ x ∈ x J x ∧ ∀ y ∈ S ∀ z ∈ S ∀ f ∈ x J y ∀ g ∈ y J z g x y · ˙ z f ∈ x J z → G X Y · ˙ Z F ∈ X J Z
44 15 43 mpd ⊢ φ → G X Y · ˙ Z F ∈ X J Z