Metamath Proof Explorer


Theorem fucval

Description: Value of the functor category. (Contributed by Mario Carneiro, 6-Jan-2017)

Ref Expression
Hypotheses fucval.q ⊢ Q = C FuncCat D
fucval.b ⊢ B = C Func D
fucval.n ⊢ N = C Nat D
fucval.a ⊢ A = Base C
fucval.o ⊢ · ˙ = comp ⁡ D
fucval.c ⊢ φ → C ∈ Cat
fucval.d ⊢ φ → D ∈ Cat
fucval.x ⊢ φ → ∙ ˙ = v ∈ B × B , h ∈ B ⟼ ⦋ 1 st ⁡ v / f⦌ ⦋ 2 nd ⁡ v / g⦌ b ∈ g N h , a ∈ f N g ⟼ x ∈ A ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x · ˙ 1 st ⁡ h ⁡ x a ⁡ x
Assertion fucval ⊢ φ → Q = Base ndx B Hom ⁡ ndx N comp ⁡ ndx ∙ ˙

Proof

Step Hyp Ref Expression
1 fucval.q ⊢ Q = C FuncCat D
2 fucval.b ⊢ B = C Func D
3 fucval.n ⊢ N = C Nat D
4 fucval.a ⊢ A = Base C
5 fucval.o ⊢ · ˙ = comp ⁡ D
6 fucval.c ⊢ φ → C ∈ Cat
7 fucval.d ⊢ φ → D ∈ Cat
8 fucval.x ⊢ φ → ∙ ˙ = v ∈ B × B , h ∈ B ⟼ ⦋ 1 st ⁡ v / f⦌ ⦋ 2 nd ⁡ v / g⦌ b ∈ g N h , a ∈ f N g ⟼ x ∈ A ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x · ˙ 1 st ⁡ h ⁡ x a ⁡ x
9 df-fuc ⊢ FuncCat = t ∈ Cat , u ∈ Cat ⟼ Base ndx t Func u Hom ⁡ ndx t Nat u comp ⁡ ndx v ∈ t Func u × t Func u , h ∈ t Func u ⟼ ⦋ 1 st ⁡ v / f⦌ ⦋ 2 nd ⁡ v / g⦌ b ∈ g t Nat u h , a ∈ f t Nat u g ⟼ x ∈ Base t ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x comp ⁡ u 1 st ⁡ h ⁡ x a ⁡ x
10 9 a1i ⊢ φ → FuncCat = t ∈ Cat , u ∈ Cat ⟼ Base ndx t Func u Hom ⁡ ndx t Nat u comp ⁡ ndx v ∈ t Func u × t Func u , h ∈ t Func u ⟼ ⦋ 1 st ⁡ v / f⦌ ⦋ 2 nd ⁡ v / g⦌ b ∈ g t Nat u h , a ∈ f t Nat u g ⟼ x ∈ Base t ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x comp ⁡ u 1 st ⁡ h ⁡ x a ⁡ x
11 simprl ⊢ φ ∧ t = C ∧ u = D → t = C
12 simprr ⊢ φ ∧ t = C ∧ u = D → u = D
13 11 12 oveq12d ⊢ φ ∧ t = C ∧ u = D → t Func u = C Func D
14 13 2 eqtr4di ⊢ φ ∧ t = C ∧ u = D → t Func u = B
15 14 opeq2d ⊢ φ ∧ t = C ∧ u = D → Base ndx t Func u = Base ndx B
16 11 12 oveq12d ⊢ φ ∧ t = C ∧ u = D → t Nat u = C Nat D
17 16 3 eqtr4di ⊢ φ ∧ t = C ∧ u = D → t Nat u = N
18 17 opeq2d ⊢ φ ∧ t = C ∧ u = D → Hom ⁡ ndx t Nat u = Hom ⁡ ndx N
19 14 sqxpeqd ⊢ φ ∧ t = C ∧ u = D → t Func u × t Func u = B × B
20 17 oveqd ⊢ φ ∧ t = C ∧ u = D → g t Nat u h = g N h
21 17 oveqd ⊢ φ ∧ t = C ∧ u = D → f t Nat u g = f N g
22 11 fveq2d ⊢ φ ∧ t = C ∧ u = D → Base t = Base C
23 22 4 eqtr4di ⊢ φ ∧ t = C ∧ u = D → Base t = A
24 12 fveq2d ⊢ φ ∧ t = C ∧ u = D → comp ⁡ u = comp ⁡ D
25 24 5 eqtr4di ⊢ φ ∧ t = C ∧ u = D → comp ⁡ u = · ˙
26 25 oveqd ⊢ φ ∧ t = C ∧ u = D → 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x comp ⁡ u 1 st ⁡ h ⁡ x = 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x · ˙ 1 st ⁡ h ⁡ x
27 26 oveqd ⊢ φ ∧ t = C ∧ u = D → b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x comp ⁡ u 1 st ⁡ h ⁡ x a ⁡ x = b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x · ˙ 1 st ⁡ h ⁡ x a ⁡ x
28 23 27 mpteq12dv ⊢ φ ∧ t = C ∧ u = D → x ∈ Base t ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x comp ⁡ u 1 st ⁡ h ⁡ x a ⁡ x = x ∈ A ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x · ˙ 1 st ⁡ h ⁡ x a ⁡ x
29 20 21 28 mpoeq123dv ⊢ φ ∧ t = C ∧ u = D → b ∈ g t Nat u h , a ∈ f t Nat u g ⟼ x ∈ Base t ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x comp ⁡ u 1 st ⁡ h ⁡ x a ⁡ x = b ∈ g N h , a ∈ f N g ⟼ x ∈ A ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x · ˙ 1 st ⁡ h ⁡ x a ⁡ x
30 29 csbeq2dv ⊢ φ ∧ t = C ∧ u = D → ⦋ 2 nd ⁡ v / g⦌ b ∈ g t Nat u h , a ∈ f t Nat u g ⟼ x ∈ Base t ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x comp ⁡ u 1 st ⁡ h ⁡ x a ⁡ x = ⦋ 2 nd ⁡ v / g⦌ b ∈ g N h , a ∈ f N g ⟼ x ∈ A ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x · ˙ 1 st ⁡ h ⁡ x a ⁡ x
31 30 csbeq2dv ⊢ φ ∧ t = C ∧ u = D → ⦋ 1 st ⁡ v / f⦌ ⦋ 2 nd ⁡ v / g⦌ b ∈ g t Nat u h , a ∈ f t Nat u g ⟼ x ∈ Base t ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x comp ⁡ u 1 st ⁡ h ⁡ x a ⁡ x = ⦋ 1 st ⁡ v / f⦌ ⦋ 2 nd ⁡ v / g⦌ b ∈ g N h , a ∈ f N g ⟼ x ∈ A ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x · ˙ 1 st ⁡ h ⁡ x a ⁡ x
32 19 14 31 mpoeq123dv ⊢ φ ∧ t = C ∧ u = D → v ∈ t Func u × t Func u , h ∈ t Func u ⟼ ⦋ 1 st ⁡ v / f⦌ ⦋ 2 nd ⁡ v / g⦌ b ∈ g t Nat u h , a ∈ f t Nat u g ⟼ x ∈ Base t ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x comp ⁡ u 1 st ⁡ h ⁡ x a ⁡ x = v ∈ B × B , h ∈ B ⟼ ⦋ 1 st ⁡ v / f⦌ ⦋ 2 nd ⁡ v / g⦌ b ∈ g N h , a ∈ f N g ⟼ x ∈ A ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x · ˙ 1 st ⁡ h ⁡ x a ⁡ x
33 8 adantr ⊢ φ ∧ t = C ∧ u = D → ∙ ˙ = v ∈ B × B , h ∈ B ⟼ ⦋ 1 st ⁡ v / f⦌ ⦋ 2 nd ⁡ v / g⦌ b ∈ g N h , a ∈ f N g ⟼ x ∈ A ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x · ˙ 1 st ⁡ h ⁡ x a ⁡ x
34 32 33 eqtr4d ⊢ φ ∧ t = C ∧ u = D → v ∈ t Func u × t Func u , h ∈ t Func u ⟼ ⦋ 1 st ⁡ v / f⦌ ⦋ 2 nd ⁡ v / g⦌ b ∈ g t Nat u h , a ∈ f t Nat u g ⟼ x ∈ Base t ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x comp ⁡ u 1 st ⁡ h ⁡ x a ⁡ x = ∙ ˙
35 34 opeq2d ⊢ φ ∧ t = C ∧ u = D → comp ⁡ ndx v ∈ t Func u × t Func u , h ∈ t Func u ⟼ ⦋ 1 st ⁡ v / f⦌ ⦋ 2 nd ⁡ v / g⦌ b ∈ g t Nat u h , a ∈ f t Nat u g ⟼ x ∈ Base t ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x comp ⁡ u 1 st ⁡ h ⁡ x a ⁡ x = comp ⁡ ndx ∙ ˙
36 15 18 35 tpeq123d ⊢ φ ∧ t = C ∧ u = D → Base ndx t Func u Hom ⁡ ndx t Nat u comp ⁡ ndx v ∈ t Func u × t Func u , h ∈ t Func u ⟼ ⦋ 1 st ⁡ v / f⦌ ⦋ 2 nd ⁡ v / g⦌ b ∈ g t Nat u h , a ∈ f t Nat u g ⟼ x ∈ Base t ⟼ b ⁡ x 1 st ⁡ f ⁡ x 1 st ⁡ g ⁡ x comp ⁡ u 1 st ⁡ h ⁡ x a ⁡ x = Base ndx B Hom ⁡ ndx N comp ⁡ ndx ∙ ˙
37 tpex ⊢ Base ndx B Hom ⁡ ndx N comp ⁡ ndx ∙ ˙ ∈ V
38 37 a1i ⊢ φ → Base ndx B Hom ⁡ ndx N comp ⁡ ndx ∙ ˙ ∈ V
39 10 36 6 7 38 ovmpod ⊢ φ → C FuncCat D = Base ndx B Hom ⁡ ndx N comp ⁡ ndx ∙ ˙
40 1 39 eqtrid ⊢ φ → Q = Base ndx B Hom ⁡ ndx N comp ⁡ ndx ∙ ˙