![]() |
Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
|
Mirrors > Home > MPE Home > Th. List > uncfcl | Structured version Visualization version GIF version |
Description: The uncurry operation takes a functor 𝐹:𝐶⟶(𝐷⟶𝐸) to a functor uncurryF (𝐹):𝐶 × 𝐷⟶𝐸. (Contributed by Mario Carneiro, 13-Jan-2017.) |
Ref | Expression |
---|---|
uncfval.g | ⊢ 𝐹 = (⟨“𝐶𝐷𝐸”⟩ uncurryF 𝐺) |
uncfval.c | ⊢ (𝜑 → 𝐷 ∈ Cat) |
uncfval.d | ⊢ (𝜑 → 𝐸 ∈ Cat) |
uncfval.f | ⊢ (𝜑 → 𝐺 ∈ (𝐶 Func (𝐷 FuncCat 𝐸))) |
Ref | Expression |
---|---|
uncfcl | ⊢ (𝜑 → 𝐹 ∈ ((𝐶 ×c 𝐷) Func 𝐸)) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | uncfval.g | . . 3 ⊢ 𝐹 = (⟨“𝐶𝐷𝐸”⟩ uncurryF 𝐺) | |
2 | uncfval.c | . . 3 ⊢ (𝜑 → 𝐷 ∈ Cat) | |
3 | uncfval.d | . . 3 ⊢ (𝜑 → 𝐸 ∈ Cat) | |
4 | uncfval.f | . . 3 ⊢ (𝜑 → 𝐺 ∈ (𝐶 Func (𝐷 FuncCat 𝐸))) | |
5 | 1, 2, 3, 4 | uncfval 18128 | . 2 ⊢ (𝜑 → 𝐹 = ((𝐷 evalF 𝐸) ∘func ((𝐺 ∘func (𝐶 1stF 𝐷)) ⟨,⟩F (𝐶 2ndF 𝐷)))) |
6 | eqid 2733 | . . . 4 ⊢ ((𝐺 ∘func (𝐶 1stF 𝐷)) ⟨,⟩F (𝐶 2ndF 𝐷)) = ((𝐺 ∘func (𝐶 1stF 𝐷)) ⟨,⟩F (𝐶 2ndF 𝐷)) | |
7 | eqid 2733 | . . . 4 ⊢ ((𝐷 FuncCat 𝐸) ×c 𝐷) = ((𝐷 FuncCat 𝐸) ×c 𝐷) | |
8 | eqid 2733 | . . . . . 6 ⊢ (𝐶 ×c 𝐷) = (𝐶 ×c 𝐷) | |
9 | funcrcl 17754 | . . . . . . . 8 ⊢ (𝐺 ∈ (𝐶 Func (𝐷 FuncCat 𝐸)) → (𝐶 ∈ Cat ∧ (𝐷 FuncCat 𝐸) ∈ Cat)) | |
10 | 4, 9 | syl 17 | . . . . . . 7 ⊢ (𝜑 → (𝐶 ∈ Cat ∧ (𝐷 FuncCat 𝐸) ∈ Cat)) |
11 | 10 | simpld 496 | . . . . . 6 ⊢ (𝜑 → 𝐶 ∈ Cat) |
12 | eqid 2733 | . . . . . 6 ⊢ (𝐶 1stF 𝐷) = (𝐶 1stF 𝐷) | |
13 | 8, 11, 2, 12 | 1stfcl 18090 | . . . . 5 ⊢ (𝜑 → (𝐶 1stF 𝐷) ∈ ((𝐶 ×c 𝐷) Func 𝐶)) |
14 | 13, 4 | cofucl 17779 | . . . 4 ⊢ (𝜑 → (𝐺 ∘func (𝐶 1stF 𝐷)) ∈ ((𝐶 ×c 𝐷) Func (𝐷 FuncCat 𝐸))) |
15 | eqid 2733 | . . . . 5 ⊢ (𝐶 2ndF 𝐷) = (𝐶 2ndF 𝐷) | |
16 | 8, 11, 2, 15 | 2ndfcl 18091 | . . . 4 ⊢ (𝜑 → (𝐶 2ndF 𝐷) ∈ ((𝐶 ×c 𝐷) Func 𝐷)) |
17 | 6, 7, 14, 16 | prfcl 18096 | . . 3 ⊢ (𝜑 → ((𝐺 ∘func (𝐶 1stF 𝐷)) ⟨,⟩F (𝐶 2ndF 𝐷)) ∈ ((𝐶 ×c 𝐷) Func ((𝐷 FuncCat 𝐸) ×c 𝐷))) |
18 | eqid 2733 | . . . 4 ⊢ (𝐷 evalF 𝐸) = (𝐷 evalF 𝐸) | |
19 | eqid 2733 | . . . 4 ⊢ (𝐷 FuncCat 𝐸) = (𝐷 FuncCat 𝐸) | |
20 | 18, 19, 2, 3 | evlfcl 18116 | . . 3 ⊢ (𝜑 → (𝐷 evalF 𝐸) ∈ (((𝐷 FuncCat 𝐸) ×c 𝐷) Func 𝐸)) |
21 | 17, 20 | cofucl 17779 | . 2 ⊢ (𝜑 → ((𝐷 evalF 𝐸) ∘func ((𝐺 ∘func (𝐶 1stF 𝐷)) ⟨,⟩F (𝐶 2ndF 𝐷))) ∈ ((𝐶 ×c 𝐷) Func 𝐸)) |
22 | 5, 21 | eqeltrd 2834 | 1 ⊢ (𝜑 → 𝐹 ∈ ((𝐶 ×c 𝐷) Func 𝐸)) |
Colors of variables: wff setvar class |
Syntax hints: → wi 4 ∧ wa 397 = wceq 1542 ∈ wcel 2107 (class class class)co 7358 ⟨“cs3 14737 Catccat 17549 Func cfunc 17745 ∘func ccofu 17747 FuncCat cfuc 17834 ×c cxpc 18061 1stF c1stf 18062 2ndF c2ndf 18063 ⟨,⟩F cprf 18064 evalF cevlf 18103 uncurryF cuncf 18105 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1798 ax-4 1812 ax-5 1914 ax-6 1972 ax-7 2012 ax-8 2109 ax-9 2117 ax-10 2138 ax-11 2155 ax-12 2172 ax-ext 2704 ax-rep 5243 ax-sep 5257 ax-nul 5264 ax-pow 5321 ax-pr 5385 ax-un 7673 ax-cnex 11112 ax-resscn 11113 ax-1cn 11114 ax-icn 11115 ax-addcl 11116 ax-addrcl 11117 ax-mulcl 11118 ax-mulrcl 11119 ax-mulcom 11120 ax-addass 11121 ax-mulass 11122 ax-distr 11123 ax-i2m1 11124 ax-1ne0 11125 ax-1rid 11126 ax-rnegex 11127 ax-rrecex 11128 ax-cnre 11129 ax-pre-lttri 11130 ax-pre-lttrn 11131 ax-pre-ltadd 11132 ax-pre-mulgt0 11133 |
This theorem depends on definitions: df-bi 206 df-an 398 df-or 847 df-3or 1089 df-3an 1090 df-tru 1545 df-fal 1555 df-ex 1783 df-nf 1787 df-sb 2069 df-mo 2535 df-eu 2564 df-clab 2711 df-cleq 2725 df-clel 2811 df-nfc 2886 df-ne 2941 df-nel 3047 df-ral 3062 df-rex 3071 df-rmo 3352 df-reu 3353 df-rab 3407 df-v 3446 df-sbc 3741 df-csb 3857 df-dif 3914 df-un 3916 df-in 3918 df-ss 3928 df-pss 3930 df-nul 4284 df-if 4488 df-pw 4563 df-sn 4588 df-pr 4590 df-tp 4592 df-op 4594 df-uni 4867 df-int 4909 df-iun 4957 df-br 5107 df-opab 5169 df-mpt 5190 df-tr 5224 df-id 5532 df-eprel 5538 df-po 5546 df-so 5547 df-fr 5589 df-we 5591 df-xp 5640 df-rel 5641 df-cnv 5642 df-co 5643 df-dm 5644 df-rn 5645 df-res 5646 df-ima 5647 df-pred 6254 df-ord 6321 df-on 6322 df-lim 6323 df-suc 6324 df-iota 6449 df-fun 6499 df-fn 6500 df-f 6501 df-f1 6502 df-fo 6503 df-f1o 6504 df-fv 6505 df-riota 7314 df-ov 7361 df-oprab 7362 df-mpo 7363 df-om 7804 df-1st 7922 df-2nd 7923 df-frecs 8213 df-wrecs 8244 df-recs 8318 df-rdg 8357 df-1o 8413 df-er 8651 df-map 8770 df-ixp 8839 df-en 8887 df-dom 8888 df-sdom 8889 df-fin 8890 df-card 9880 df-pnf 11196 df-mnf 11197 df-xr 11198 df-ltxr 11199 df-le 11200 df-sub 11392 df-neg 11393 df-nn 12159 df-2 12221 df-3 12222 df-4 12223 df-5 12224 df-6 12225 df-7 12226 df-8 12227 df-9 12228 df-n0 12419 df-z 12505 df-dec 12624 df-uz 12769 df-fz 13431 df-fzo 13574 df-hash 14237 df-word 14409 df-concat 14465 df-s1 14490 df-s2 14743 df-s3 14744 df-struct 17024 df-slot 17059 df-ndx 17071 df-base 17089 df-hom 17162 df-cco 17163 df-cat 17553 df-cid 17554 df-func 17749 df-cofu 17751 df-nat 17835 df-fuc 17836 df-xpc 18065 df-1stf 18066 df-2ndf 18067 df-prf 18068 df-evlf 18107 df-uncf 18109 |
This theorem is referenced by: curfuncf 18132 uncfcurf 18133 |
Copyright terms: Public domain | W3C validator |