Step
*
of Lemma
functor-curry_wf
∀[A,B,C:SmallCategory].  (functor-curry(A;B) ∈ Functor(FUN(A × B;C);FUN(A;FUN(B;C))))
BY
{ (ProveWfLemma THEN Reduce 0) }
1
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
5. x : cat-ob(A)
6. y : cat-ob(A)
7. f : cat-arrow(A) x y
8. A1 : cat-ob(B)
9. B1 : cat-ob(B)
10. g : cat-arrow(B) A1 B1
⊢ (cat-comp(C) (F <x, A1>) (F <y, A1>) (F <y, B1>) (F <x, A1> <y, A1> <f, cat-id(B) A1>) (F <y, A1> <y, B1> <cat-id(A) y\000C, g>))
= (cat-comp(C) (F <x, A1>) (F <x, B1>) (F <y, B1>) (F <x, A1> <x, B1> <cat-id(A) x, g>) (F <x, B1> <y, B1> <f, cat-id(B)\000C B1>))
∈ (cat-arrow(C) (F <x, A1>) (F <y, B1>))
2
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
5. x : cat-ob(A)
6. y : cat-ob(A)
7. z : cat-ob(A)
8. f : cat-arrow(A) x y
9. g : cat-arrow(A) y z
⊢ b |→ F <x, b> <z, b> <cat-comp(A) x y z f g, cat-id(B) b>
= b |→ F <x, b> <y, b> <f, cat-id(B) b> o b |→ F <y, b> <z, b> <g, cat-id(B) b>
∈ nat-trans(B;C;functor(ob(b) = F <x, b>
                        arrow(x@0,y,f) = F <x, x@0> <x, y> <cat-id(A) x, f>);functor(ob(b) = F <z, b>
                                                                   arrow(x,y,f) = F <z, x> <z, y> <cat-id(A) z, f>))
3
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
5. x : cat-ob(A)
⊢ b |→ F <x, b> <x, b> <cat-id(A) x, cat-id(B) b>
= identity-trans(B;C;functor(ob(b) = F <x, b>
                             arrow(x@0,y,f) = F <x, x@0> <x, y> <cat-id(A) x, f>))
∈ nat-trans(B;C;functor(ob(b) = F <x, b>
                        arrow(x@0,y,f) = F <x, x@0> <x, y> <cat-id(A) x, f>);functor(ob(b) = F <x, b>
                                                                   arrow(x@0,y,f) = F <x, x@0> <x, y> <cat-id(A) x, f>))
4
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
5. G : cat-ob(FUN(A × B;C))
6. T : cat-arrow(FUN(A × B;C)) F G
7. x@0 : cat-ob(A)
8. y : cat-ob(A)
9. f : cat-arrow(A) x@0 y
10. A1 : cat-ob(B)
11. B1 : cat-ob(B)
12. g : cat-arrow(B) A1 B1
⊢ (cat-comp(C) (F <x@0, A1>) (F <y, A1>) (F <y, B1>) (F <x@0, A1> <y, A1> <f, cat-id(B) A1>) (F <y, A1> <y, B1> <cat-id(\000CA) y, g>))
= (cat-comp(C) (F <x@0, A1>) (F <x@0, B1>) (F <y, B1>) (F <x@0, A1> <x@0, B1> <cat-id(A) x@0, g>) (F <x@0, B1> <y, B1> <\000Cf, cat-id(B) B1>))
∈ (cat-arrow(C) (F <x@0, A1>) (F <y, B1>))
5
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
5. G : cat-ob(FUN(A × B;C))
6. T : cat-arrow(FUN(A × B;C)) F G
7. x@0 : cat-ob(A)
8. y : cat-ob(A)
9. z : cat-ob(A)
10. f : cat-arrow(A) x@0 y
11. g : cat-arrow(A) y z
⊢ b |→ F <x@0, b> <z, b> <cat-comp(A) x@0 y z f g, cat-id(B) b>
= b |→ F <x@0, b> <y, b> <f, cat-id(B) b> o b |→ F <y, b> <z, b> <g, cat-id(B) b>
∈ nat-trans(B;C;functor(ob(b) = F <x@0, b>
                        arrow(x1,y,f) = F <x@0, x1> <x@0, y> <cat-id(A) x@0, f>);functor(ob(b) = F <z, b>
                                                                    arrow(x@0,y,f) = F <z, x@0> <z, y> <cat-id(A) z, f>)\000C)
6
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
5. G : cat-ob(FUN(A × B;C))
6. T : cat-arrow(FUN(A × B;C)) F G
7. x@0 : cat-ob(A)
⊢ b |→ F <x@0, b> <x@0, b> <cat-id(A) x@0, cat-id(B) b>
= identity-trans(B;C;functor(ob(b) = F <x@0, b>
                             arrow(x1,y,f) = F <x@0, x1> <x@0, y> <cat-id(A) x@0, f>))
∈ nat-trans(B;C;functor(ob(b) = F <x@0, b>
                        arrow(x1,y,f) = F <x@0, x1> <x@0, y> <cat-id(A) x@0, f>);functor(ob(b) = F <x@0, b>
                                                                    arrow(x1,y,f) = F <x@0, x1> <x@0, y> <cat-id(A) x@0,\000C f>))
7
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
5. G : cat-ob(FUN(A × B;C))
6. T : cat-arrow(FUN(A × B;C)) F G
7. x : cat-ob(A)
8. y@0 : cat-ob(A)
9. f : cat-arrow(A) x y@0
10. A1 : cat-ob(B)
11. B1 : cat-ob(B)
12. g : cat-arrow(B) A1 B1
⊢ (cat-comp(C) (G <x, A1>) (G <y@0, A1>) (G <y@0, B1>) (G <x, A1> <y@0, A1> <f, cat-id(B) A1>) (G <y@0, A1> <y@0, B1> <c\000Cat-id(A) y@0, g>))
= (cat-comp(C) (G <x, A1>) (G <x, B1>) (G <y@0, B1>) (G <x, A1> <x, B1> <cat-id(A) x, g>) (G <x, B1> <y@0, B1> <f, cat-i\000Cd(B) B1>))
∈ (cat-arrow(C) (G <x, A1>) (G <y@0, B1>))
8
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
5. G : cat-ob(FUN(A × B;C))
6. T : cat-arrow(FUN(A × B;C)) F G
7. x : cat-ob(A)
8. y@0 : cat-ob(A)
9. z : cat-ob(A)
10. f : cat-arrow(A) x y@0
11. g : cat-arrow(A) y@0 z
⊢ b |→ G <x, b> <z, b> <cat-comp(A) x y@0 z f g, cat-id(B) b>
= b |→ G <x, b> <y@0, b> <f, cat-id(B) b> o b |→ G <y@0, b> <z, b> <g, cat-id(B) b>
∈ nat-trans(B;C;functor(ob(b) = G <x, b>
                        arrow(x@0,y@0,f) = G <x, x@0> <x, y@0> <cat-id(A) x, f>);functor(ob(b) = G <z, b>
                                                                     arrow(x,y@0,f) = G <z, x> <z, y@0> <cat-id(A) z, f>\000C))
9
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
5. G : cat-ob(FUN(A × B;C))
6. T : cat-arrow(FUN(A × B;C)) F G
7. x : cat-ob(A)
⊢ b |→ G <x, b> <x, b> <cat-id(A) x, cat-id(B) b>
= identity-trans(B;C;functor(ob(b) = G <x, b>
                             arrow(x@0,y@0,f) = G <x, x@0> <x, y@0> <cat-id(A) x, f>))
∈ nat-trans(B;C;functor(ob(b) = G <x, b>
                        arrow(x@0,y@0,f) = G <x, x@0> <x, y@0> <cat-id(A) x, f>);functor(ob(b) = G <x, b>
                                                                     arrow(x@0,y@0,f) = G <x, x@0> <x, y@0> <cat-id(A) x\000C, f>))
10
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
5. G : cat-ob(FUN(A × B;C))
6. T : cat-arrow(FUN(A × B;C)) F G
7. a : cat-ob(A)
8. A1 : cat-ob(B)
9. B1 : cat-ob(B)
10. g : cat-arrow(B) A1 B1
⊢ (cat-comp(C) (F <a, A1>) (G <a, A1>) (G <a, B1>) (T <a, A1>) (G <a, A1> <a, B1> <cat-id(A) a, g>))
= (cat-comp(C) (F <a, A1>) (F <a, B1>) (G <a, B1>) (F <a, A1> <a, B1> <cat-id(A) a, g>) (T <a, B1>))
∈ (cat-arrow(C) (F <a, A1>) (G <a, B1>))
11
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
5. G : cat-ob(FUN(A × B;C))
6. T : cat-arrow(FUN(A × B;C)) F G
7. A1 : cat-ob(A)
8. B1 : cat-ob(A)
9. g : cat-arrow(A) A1 B1
⊢ b |→ T <A1, b> o b |→ G <A1, b> <B1, b> <g, cat-id(B) b>
= b |→ F <A1, b> <B1, b> <g, cat-id(B) b> o b |→ T <B1, b>
∈ nat-trans(B;C;functor(ob(b) = F <A1, b>
                        arrow(x@0,y,f) = F <A1, x@0> <A1, y> <cat-id(A) A1, f>);functor(ob(b) = G <B1, b>
                                                                    arrow(x,y@0,f) = G <B1, x> <B1, y@0> <cat-id(A) B1, \000Cf>))
12
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
5. G : cat-ob(FUN(A × B;C))
6. z : cat-ob(FUN(A × B;C))
7. T : cat-arrow(FUN(A × B;C)) F G
8. g : cat-arrow(FUN(A × B;C)) G z
⊢ a |→ b |→ cat-comp(C) (F <a, b>) (G <a, b>) (z <a, b>) (T <a, b>) (g <a, b>)
= a |→ b |→ T <a, b> o a |→ b |→ g <a, b>
∈ nat-trans(A;FUN(B;C);functor(ob(a) = functor(ob(b) = F <a, b>
                                               arrow(x@0,y,f) = F <a, x@0> <a, y> <cat-id(A) a, f>);
                               arrow(x@0,y,f) = b |→ F <x@0, b> <y, b> <f, cat-id(B) b>);functor(ob(a) = functor(ob(b) =\000C z <a, b>
                                                                                               arrow(x,y,f) =
                                                                                                z <a, x> <a, y> <cat-id(\000CA) a, f>);
                                                                               arrow(x,y,f) = b |→ z <x, b> <y, b> 
                                                                                                   <f, cat-id(B) b>))
13
1. A : SmallCategory
2. B : SmallCategory
3. C : SmallCategory
4. F : cat-ob(FUN(A × B;C))
⊢ a |→ b |→ cat-id(C) (F <a, b>)
= identity-trans(A;FUN(B;C);functor(ob(a) = functor(ob(b) = F <a, b>
                                                    arrow(x@0,y,f) = F <a, x@0> <a, y> <cat-id(A) a, f>);
                                    arrow(x@0,y,f) = b |→ F <x@0, b> <y, b> <f, cat-id(B) b>))
∈ nat-trans(A;FUN(B;C);functor(ob(a) = functor(ob(b) = F <a, b>
                                               arrow(x@0,y,f) = F <a, x@0> <a, y> <cat-id(A) a, f>);
                               arrow(x@0,y,f) = b |→ F <x@0, b> <y, b> <f, cat-id(B) b>);functor(ob(a) = functor(ob(b) =\000C F <a, b>
                                                                                               arrow(x@0,y,f) =
                                                                                                F <a, x@0> <a, y> <cat-i\000Cd(A) a, f>);
                                                                               arrow(x@0,y,f) = b |→ F <x@0, b> <y, b> 
                                                                                                     <f, cat-id(B) b>))
Latex:
Latex:
\mforall{}[A,B,C:SmallCategory].    (functor-curry(A;B)  \mmember{}  Functor(FUN(A  \mtimes{}  B;C);FUN(A;FUN(B;C))))
By
Latex:
(ProveWfLemma  THEN  Reduce  0)
Home
Index