MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  curf2 Structured version   Visualization version   GIF version

Theorem curf2 16916
Description: Value of the curry functor at a morphism. (Contributed by Mario Carneiro, 13-Jan-2017.)
Hypotheses
Ref Expression
curf2.g 𝐺 = (⟨𝐶, 𝐷⟩ curryF 𝐹)
curf2.a 𝐴 = (Base‘𝐶)
curf2.c (𝜑𝐶 ∈ Cat)
curf2.d (𝜑𝐷 ∈ Cat)
curf2.f (𝜑𝐹 ∈ ((𝐶 ×c 𝐷) Func 𝐸))
curf2.b 𝐵 = (Base‘𝐷)
curf2.h 𝐻 = (Hom ‘𝐶)
curf2.i 𝐼 = (Id‘𝐷)
curf2.x (𝜑𝑋𝐴)
curf2.y (𝜑𝑌𝐴)
curf2.k (𝜑𝐾 ∈ (𝑋𝐻𝑌))
curf2.l 𝐿 = ((𝑋(2nd𝐺)𝑌)‘𝐾)
Assertion
Ref Expression
curf2 (𝜑𝐿 = (𝑧𝐵 ↦ (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧))))
Distinct variable groups:   𝑧,𝐶   𝑧,𝐹   𝑧,𝐻   𝑧,𝐿   𝑧,𝐸   𝑧,𝐺   𝑧,𝐼   𝜑,𝑧   𝑧,𝐵   𝑧,𝐷   𝑧,𝑋   𝑧,𝐾   𝑧,𝑌
Allowed substitution hint:   𝐴(𝑧)

Proof of Theorem curf2
Dummy variables 𝑥 𝑦 𝑔 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 curf2.l . 2 𝐿 = ((𝑋(2nd𝐺)𝑌)‘𝐾)
2 curf2.g . . . . 5 𝐺 = (⟨𝐶, 𝐷⟩ curryF 𝐹)
3 curf2.a . . . . 5 𝐴 = (Base‘𝐶)
4 curf2.c . . . . 5 (𝜑𝐶 ∈ Cat)
5 curf2.d . . . . 5 (𝜑𝐷 ∈ Cat)
6 curf2.f . . . . 5 (𝜑𝐹 ∈ ((𝐶 ×c 𝐷) Func 𝐸))
7 curf2.b . . . . 5 𝐵 = (Base‘𝐷)
8 eqid 2651 . . . . 5 (Hom ‘𝐷) = (Hom ‘𝐷)
9 eqid 2651 . . . . 5 (Id‘𝐶) = (Id‘𝐶)
10 curf2.h . . . . 5 𝐻 = (Hom ‘𝐶)
11 curf2.i . . . . 5 𝐼 = (Id‘𝐷)
122, 3, 4, 5, 6, 7, 8, 9, 10, 11curfval 16910 . . . 4 (𝜑𝐺 = ⟨(𝑥𝐴 ↦ ⟨(𝑦𝐵 ↦ (𝑥(1st𝐹)𝑦)), (𝑦𝐵, 𝑧𝐵 ↦ (𝑔 ∈ (𝑦(Hom ‘𝐷)𝑧) ↦ (((Id‘𝐶)‘𝑥)(⟨𝑥, 𝑦⟩(2nd𝐹)⟨𝑥, 𝑧⟩)𝑔)))⟩), (𝑥𝐴, 𝑦𝐴 ↦ (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧)))))⟩)
13 fvex 6239 . . . . . . 7 (Base‘𝐶) ∈ V
143, 13eqeltri 2726 . . . . . 6 𝐴 ∈ V
1514mptex 6527 . . . . 5 (𝑥𝐴 ↦ ⟨(𝑦𝐵 ↦ (𝑥(1st𝐹)𝑦)), (𝑦𝐵, 𝑧𝐵 ↦ (𝑔 ∈ (𝑦(Hom ‘𝐷)𝑧) ↦ (((Id‘𝐶)‘𝑥)(⟨𝑥, 𝑦⟩(2nd𝐹)⟨𝑥, 𝑧⟩)𝑔)))⟩) ∈ V
1614, 14mpt2ex 7292 . . . . 5 (𝑥𝐴, 𝑦𝐴 ↦ (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))))) ∈ V
1715, 16op2ndd 7221 . . . 4 (𝐺 = ⟨(𝑥𝐴 ↦ ⟨(𝑦𝐵 ↦ (𝑥(1st𝐹)𝑦)), (𝑦𝐵, 𝑧𝐵 ↦ (𝑔 ∈ (𝑦(Hom ‘𝐷)𝑧) ↦ (((Id‘𝐶)‘𝑥)(⟨𝑥, 𝑦⟩(2nd𝐹)⟨𝑥, 𝑧⟩)𝑔)))⟩), (𝑥𝐴, 𝑦𝐴 ↦ (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧)))))⟩ → (2nd𝐺) = (𝑥𝐴, 𝑦𝐴 ↦ (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))))))
1812, 17syl 17 . . 3 (𝜑 → (2nd𝐺) = (𝑥𝐴, 𝑦𝐴 ↦ (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))))))
19 curf2.x . . . 4 (𝜑𝑋𝐴)
20 curf2.y . . . . 5 (𝜑𝑌𝐴)
2120adantr 480 . . . 4 ((𝜑𝑥 = 𝑋) → 𝑌𝐴)
22 ovex 6718 . . . . . 6 (𝑥𝐻𝑦) ∈ V
2322mptex 6527 . . . . 5 (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧)))) ∈ V
2423a1i 11 . . . 4 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧)))) ∈ V)
25 curf2.k . . . . . . 7 (𝜑𝐾 ∈ (𝑋𝐻𝑌))
2625adantr 480 . . . . . 6 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → 𝐾 ∈ (𝑋𝐻𝑌))
27 simprl 809 . . . . . . 7 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → 𝑥 = 𝑋)
28 simprr 811 . . . . . . 7 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → 𝑦 = 𝑌)
2927, 28oveq12d 6708 . . . . . 6 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → (𝑥𝐻𝑦) = (𝑋𝐻𝑌))
3026, 29eleqtrrd 2733 . . . . 5 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → 𝐾 ∈ (𝑥𝐻𝑦))
31 fvex 6239 . . . . . . . 8 (Base‘𝐷) ∈ V
327, 31eqeltri 2726 . . . . . . 7 𝐵 ∈ V
3332mptex 6527 . . . . . 6 (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))) ∈ V
3433a1i 11 . . . . 5 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))) ∈ V)
35 simplrl 817 . . . . . . . . 9 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → 𝑥 = 𝑋)
3635opeq1d 4439 . . . . . . . 8 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → ⟨𝑥, 𝑧⟩ = ⟨𝑋, 𝑧⟩)
37 simplrr 818 . . . . . . . . 9 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → 𝑦 = 𝑌)
3837opeq1d 4439 . . . . . . . 8 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → ⟨𝑦, 𝑧⟩ = ⟨𝑌, 𝑧⟩)
3936, 38oveq12d 6708 . . . . . . 7 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → (⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩) = (⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩))
40 simpr 476 . . . . . . 7 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → 𝑔 = 𝐾)
41 eqidd 2652 . . . . . . 7 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → (𝐼𝑧) = (𝐼𝑧))
4239, 40, 41oveq123d 6711 . . . . . 6 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧)) = (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧)))
4342mpteq2dv 4778 . . . . 5 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))) = (𝑧𝐵 ↦ (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧))))
4430, 34, 43fvmptdv2 6337 . . . 4 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → ((𝑋(2nd𝐺)𝑌) = (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧)))) → ((𝑋(2nd𝐺)𝑌)‘𝐾) = (𝑧𝐵 ↦ (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧)))))
4519, 21, 24, 44ovmpt2dv 6835 . . 3 (𝜑 → ((2nd𝐺) = (𝑥𝐴, 𝑦𝐴 ↦ (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))))) → ((𝑋(2nd𝐺)𝑌)‘𝐾) = (𝑧𝐵 ↦ (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧)))))
4618, 45mpd 15 . 2 (𝜑 → ((𝑋(2nd𝐺)𝑌)‘𝐾) = (𝑧𝐵 ↦ (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧))))
471, 46syl5eq 2697 1 (𝜑𝐿 = (𝑧𝐵 ↦ (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 383   = wceq 1523  wcel 2030  Vcvv 3231  cop 4216  cmpt 4762  cfv 5926  (class class class)co 6690  cmpt2 6692  1st c1st 7208  2nd c2nd 7209  Basecbs 15904  Hom chom 15999  Catccat 16372  Idccid 16373   Func cfunc 16561   ×c cxpc 16855   curryF ccurf 16897
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1762  ax-4 1777  ax-5 1879  ax-6 1945  ax-7 1981  ax-8 2032  ax-9 2039  ax-10 2059  ax-11 2074  ax-12 2087  ax-13 2282  ax-ext 2631  ax-rep 4804  ax-sep 4814  ax-nul 4822  ax-pow 4873  ax-pr 4936  ax-un 6991
This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3an 1056  df-tru 1526  df-ex 1745  df-nf 1750  df-sb 1938  df-eu 2502  df-mo 2503  df-clab 2638  df-cleq 2644  df-clel 2647  df-nfc 2782  df-ne 2824  df-ral 2946  df-rex 2947  df-reu 2948  df-rab 2950  df-v 3233  df-sbc 3469  df-csb 3567  df-dif 3610  df-un 3612  df-in 3614  df-ss 3621  df-nul 3949  df-if 4120  df-pw 4193  df-sn 4211  df-pr 4213  df-op 4217  df-uni 4469  df-iun 4554  df-br 4686  df-opab 4746  df-mpt 4763  df-id 5053  df-xp 5149  df-rel 5150  df-cnv 5151  df-co 5152  df-dm 5153  df-rn 5154  df-res 5155  df-ima 5156  df-iota 5889  df-fun 5928  df-fn 5929  df-f 5930  df-f1 5931  df-fo 5932  df-f1o 5933  df-fv 5934  df-ov 6693  df-oprab 6694  df-mpt2 6695  df-1st 7210  df-2nd 7211  df-curf 16901
This theorem is referenced by:  curf2val  16917  curf2cl  16918  curfcl  16919  diag2  16932  curf2ndf  16934
  Copyright terms: Public domain W3C validator