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

Theorem curf2 16850
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 2620 . . . . 5 (Hom ‘𝐷) = (Hom ‘𝐷)
9 eqid 2620 . . . . 5 (Id‘𝐶) = (Id‘𝐶)
10 curf2.h . . . . 5 𝐻 = (Hom ‘𝐶)
11 curf2.i . . . . 5 𝐼 = (Id‘𝐷)
122, 3, 4, 5, 6, 7, 8, 9, 10, 11curfval 16844 . . . 4 (𝜑𝐺 = ⟨(𝑥𝐴 ↦ ⟨(𝑦𝐵 ↦ (𝑥(1st𝐹)𝑦)), (𝑦𝐵, 𝑧𝐵 ↦ (𝑔 ∈ (𝑦(Hom ‘𝐷)𝑧) ↦ (((Id‘𝐶)‘𝑥)(⟨𝑥, 𝑦⟩(2nd𝐹)⟨𝑥, 𝑧⟩)𝑔)))⟩), (𝑥𝐴, 𝑦𝐴 ↦ (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧)))))⟩)
13 fvex 6188 . . . . . . 7 (Base‘𝐶) ∈ V
143, 13eqeltri 2695 . . . . . 6 𝐴 ∈ V
1514mptex 6471 . . . . 5 (𝑥𝐴 ↦ ⟨(𝑦𝐵 ↦ (𝑥(1st𝐹)𝑦)), (𝑦𝐵, 𝑧𝐵 ↦ (𝑔 ∈ (𝑦(Hom ‘𝐷)𝑧) ↦ (((Id‘𝐶)‘𝑥)(⟨𝑥, 𝑦⟩(2nd𝐹)⟨𝑥, 𝑧⟩)𝑔)))⟩) ∈ V
1614, 14mpt2ex 7232 . . . . 5 (𝑥𝐴, 𝑦𝐴 ↦ (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))))) ∈ V
1715, 16op2ndd 7164 . . . 4 (𝐺 = ⟨(𝑥𝐴 ↦ ⟨(𝑦𝐵 ↦ (𝑥(1st𝐹)𝑦)), (𝑦𝐵, 𝑧𝐵 ↦ (𝑔 ∈ (𝑦(Hom ‘𝐷)𝑧) ↦ (((Id‘𝐶)‘𝑥)(⟨𝑥, 𝑦⟩(2nd𝐹)⟨𝑥, 𝑧⟩)𝑔)))⟩), (𝑥𝐴, 𝑦𝐴 ↦ (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧)))))⟩ → (2nd𝐺) = (𝑥𝐴, 𝑦𝐴 ↦ (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))))))
1812, 17syl 17 . . 3 (𝜑 → (2nd𝐺) = (𝑥𝐴, 𝑦𝐴 ↦ (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))))))
19 curf2.x . . . 4 (𝜑𝑋𝐴)
20 curf2.y . . . . 5 (𝜑𝑌𝐴)
2120adantr 481 . . . 4 ((𝜑𝑥 = 𝑋) → 𝑌𝐴)
22 ovex 6663 . . . . . 6 (𝑥𝐻𝑦) ∈ V
2322mptex 6471 . . . . 5 (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧)))) ∈ V
2423a1i 11 . . . 4 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧)))) ∈ V)
25 curf2.k . . . . . . 7 (𝜑𝐾 ∈ (𝑋𝐻𝑌))
2625adantr 481 . . . . . 6 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → 𝐾 ∈ (𝑋𝐻𝑌))
27 simprl 793 . . . . . . 7 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → 𝑥 = 𝑋)
28 simprr 795 . . . . . . 7 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → 𝑦 = 𝑌)
2927, 28oveq12d 6653 . . . . . 6 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → (𝑥𝐻𝑦) = (𝑋𝐻𝑌))
3026, 29eleqtrrd 2702 . . . . 5 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → 𝐾 ∈ (𝑥𝐻𝑦))
31 fvex 6188 . . . . . . . 8 (Base‘𝐷) ∈ V
327, 31eqeltri 2695 . . . . . . 7 𝐵 ∈ V
3332mptex 6471 . . . . . 6 (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))) ∈ V
3433a1i 11 . . . . 5 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))) ∈ V)
35 simplrl 799 . . . . . . . . 9 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → 𝑥 = 𝑋)
3635opeq1d 4399 . . . . . . . 8 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → ⟨𝑥, 𝑧⟩ = ⟨𝑋, 𝑧⟩)
37 simplrr 800 . . . . . . . . 9 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → 𝑦 = 𝑌)
3837opeq1d 4399 . . . . . . . 8 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → ⟨𝑦, 𝑧⟩ = ⟨𝑌, 𝑧⟩)
3936, 38oveq12d 6653 . . . . . . 7 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → (⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩) = (⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩))
40 simpr 477 . . . . . . 7 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → 𝑔 = 𝐾)
41 eqidd 2621 . . . . . . 7 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → (𝐼𝑧) = (𝐼𝑧))
4239, 40, 41oveq123d 6656 . . . . . 6 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧)) = (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧)))
4342mpteq2dv 4736 . . . . 5 (((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) ∧ 𝑔 = 𝐾) → (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))) = (𝑧𝐵 ↦ (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧))))
4430, 34, 43fvmptdv2 6284 . . . 4 ((𝜑 ∧ (𝑥 = 𝑋𝑦 = 𝑌)) → ((𝑋(2nd𝐺)𝑌) = (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧)))) → ((𝑋(2nd𝐺)𝑌)‘𝐾) = (𝑧𝐵 ↦ (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧)))))
4519, 21, 24, 44ovmpt2dv 6778 . . 3 (𝜑 → ((2nd𝐺) = (𝑥𝐴, 𝑦𝐴 ↦ (𝑔 ∈ (𝑥𝐻𝑦) ↦ (𝑧𝐵 ↦ (𝑔(⟨𝑥, 𝑧⟩(2nd𝐹)⟨𝑦, 𝑧⟩)(𝐼𝑧))))) → ((𝑋(2nd𝐺)𝑌)‘𝐾) = (𝑧𝐵 ↦ (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧)))))
4618, 45mpd 15 . 2 (𝜑 → ((𝑋(2nd𝐺)𝑌)‘𝐾) = (𝑧𝐵 ↦ (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧))))
471, 46syl5eq 2666 1 (𝜑𝐿 = (𝑧𝐵 ↦ (𝐾(⟨𝑋, 𝑧⟩(2nd𝐹)⟨𝑌, 𝑧⟩)(𝐼𝑧))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 384   = wceq 1481  wcel 1988  Vcvv 3195  cop 4174  cmpt 4720  cfv 5876  (class class class)co 6635  cmpt2 6637  1st c1st 7151  2nd c2nd 7152  Basecbs 15838  Hom chom 15933  Catccat 16306  Idccid 16307   Func cfunc 16495   ×c cxpc 16789   curryF ccurf 16831
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1720  ax-4 1735  ax-5 1837  ax-6 1886  ax-7 1933  ax-8 1990  ax-9 1997  ax-10 2017  ax-11 2032  ax-12 2045  ax-13 2244  ax-ext 2600  ax-rep 4762  ax-sep 4772  ax-nul 4780  ax-pow 4834  ax-pr 4897  ax-un 6934
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3an 1038  df-tru 1484  df-ex 1703  df-nf 1708  df-sb 1879  df-eu 2472  df-mo 2473  df-clab 2607  df-cleq 2613  df-clel 2616  df-nfc 2751  df-ne 2792  df-ral 2914  df-rex 2915  df-reu 2916  df-rab 2918  df-v 3197  df-sbc 3430  df-csb 3527  df-dif 3570  df-un 3572  df-in 3574  df-ss 3581  df-nul 3908  df-if 4078  df-pw 4151  df-sn 4169  df-pr 4171  df-op 4175  df-uni 4428  df-iun 4513  df-br 4645  df-opab 4704  df-mpt 4721  df-id 5014  df-xp 5110  df-rel 5111  df-cnv 5112  df-co 5113  df-dm 5114  df-rn 5115  df-res 5116  df-ima 5117  df-iota 5839  df-fun 5878  df-fn 5879  df-f 5880  df-f1 5881  df-fo 5882  df-f1o 5883  df-fv 5884  df-ov 6638  df-oprab 6639  df-mpt2 6640  df-1st 7153  df-2nd 7154  df-curf 16835
This theorem is referenced by:  curf2val  16851  curf2cl  16852  curfcl  16853  diag2  16866  curf2ndf  16868
  Copyright terms: Public domain W3C validator