Step |
Hyp |
Ref |
Expression |
1 |
|
uncfval.g |
|- F = ( <" C D E "> uncurryF G ) |
2 |
|
uncfval.c |
|- ( ph -> D e. Cat ) |
3 |
|
uncfval.d |
|- ( ph -> E e. Cat ) |
4 |
|
uncfval.f |
|- ( ph -> G e. ( C Func ( D FuncCat E ) ) ) |
5 |
1 2 3 4
|
uncfval |
|- ( ph -> F = ( ( D evalF E ) o.func ( ( G o.func ( C 1stF D ) ) pairF ( C 2ndF D ) ) ) ) |
6 |
|
eqid |
|- ( ( G o.func ( C 1stF D ) ) pairF ( C 2ndF D ) ) = ( ( G o.func ( C 1stF D ) ) pairF ( C 2ndF D ) ) |
7 |
|
eqid |
|- ( ( D FuncCat E ) Xc. D ) = ( ( D FuncCat E ) Xc. D ) |
8 |
|
eqid |
|- ( C Xc. D ) = ( C Xc. D ) |
9 |
|
funcrcl |
|- ( G e. ( C Func ( D FuncCat E ) ) -> ( C e. Cat /\ ( D FuncCat E ) e. Cat ) ) |
10 |
4 9
|
syl |
|- ( ph -> ( C e. Cat /\ ( D FuncCat E ) e. Cat ) ) |
11 |
10
|
simpld |
|- ( ph -> C e. Cat ) |
12 |
|
eqid |
|- ( C 1stF D ) = ( C 1stF D ) |
13 |
8 11 2 12
|
1stfcl |
|- ( ph -> ( C 1stF D ) e. ( ( C Xc. D ) Func C ) ) |
14 |
13 4
|
cofucl |
|- ( ph -> ( G o.func ( C 1stF D ) ) e. ( ( C Xc. D ) Func ( D FuncCat E ) ) ) |
15 |
|
eqid |
|- ( C 2ndF D ) = ( C 2ndF D ) |
16 |
8 11 2 15
|
2ndfcl |
|- ( ph -> ( C 2ndF D ) e. ( ( C Xc. D ) Func D ) ) |
17 |
6 7 14 16
|
prfcl |
|- ( ph -> ( ( G o.func ( C 1stF D ) ) pairF ( C 2ndF D ) ) e. ( ( C Xc. D ) Func ( ( D FuncCat E ) Xc. D ) ) ) |
18 |
|
eqid |
|- ( D evalF E ) = ( D evalF E ) |
19 |
|
eqid |
|- ( D FuncCat E ) = ( D FuncCat E ) |
20 |
18 19 2 3
|
evlfcl |
|- ( ph -> ( D evalF E ) e. ( ( ( D FuncCat E ) Xc. D ) Func E ) ) |
21 |
17 20
|
cofucl |
|- ( ph -> ( ( D evalF E ) o.func ( ( G o.func ( C 1stF D ) ) pairF ( C 2ndF D ) ) ) e. ( ( C Xc. D ) Func E ) ) |
22 |
5 21
|
eqeltrd |
|- ( ph -> F e. ( ( C Xc. D ) Func E ) ) |