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

Theorem hofval 18141
Description: Value of the Hom functor, which is a bifunctor (a functor of two arguments), contravariant in the first argument and covariant in the second, from (oppCat‘𝐶) × 𝐶 to SetCat, whose object part is the hom-function Hom, and with morphism part given by pre- and post-composition. (Contributed by Mario Carneiro, 15-Jan-2017.)
Hypotheses
Ref Expression
hofval.m 𝑀 = (HomF𝐶)
hofval.c (𝜑𝐶 ∈ Cat)
hofval.b 𝐵 = (Base‘𝐶)
hofval.h 𝐻 = (Hom ‘𝐶)
hofval.o · = (comp‘𝐶)
Assertion
Ref Expression
hofval (𝜑𝑀 = ⟨(Homf𝐶), (𝑥 ∈ (𝐵 × 𝐵), 𝑦 ∈ (𝐵 × 𝐵) ↦ (𝑓 ∈ ((1st𝑦)𝐻(1st𝑥)), 𝑔 ∈ ((2nd𝑥)𝐻(2nd𝑦)) ↦ ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓))))⟩)
Distinct variable groups:   𝑓,𝑔,,𝑥,𝑦,𝐵   𝜑,𝑓,𝑔,,𝑥,𝑦   𝐶,𝑓,𝑔,,𝑥,𝑦   𝑓,𝐻,𝑔,,𝑥,𝑦   · ,𝑓,𝑔,,𝑥,𝑦
Allowed substitution hints:   𝑀(𝑥,𝑦,𝑓,𝑔,)

Proof of Theorem hofval
Dummy variables 𝑏 𝑐 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 hofval.m . 2 𝑀 = (HomF𝐶)
2 df-hof 18139 . . 3 HomF = (𝑐 ∈ Cat ↦ ⟨(Homf𝑐), (Base‘𝑐) / 𝑏(𝑥 ∈ (𝑏 × 𝑏), 𝑦 ∈ (𝑏 × 𝑏) ↦ (𝑓 ∈ ((1st𝑦)(Hom ‘𝑐)(1st𝑥)), 𝑔 ∈ ((2nd𝑥)(Hom ‘𝑐)(2nd𝑦)) ↦ ( ∈ ((Hom ‘𝑐)‘𝑥) ↦ ((𝑔(𝑥(comp‘𝑐)(2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩(comp‘𝑐)(2nd𝑦))𝑓))))⟩)
3 simpr 485 . . . . 5 ((𝜑𝑐 = 𝐶) → 𝑐 = 𝐶)
43fveq2d 6846 . . . 4 ((𝜑𝑐 = 𝐶) → (Homf𝑐) = (Homf𝐶))
5 fvexd 6857 . . . . 5 ((𝜑𝑐 = 𝐶) → (Base‘𝑐) ∈ V)
63fveq2d 6846 . . . . . 6 ((𝜑𝑐 = 𝐶) → (Base‘𝑐) = (Base‘𝐶))
7 hofval.b . . . . . 6 𝐵 = (Base‘𝐶)
86, 7eqtr4di 2794 . . . . 5 ((𝜑𝑐 = 𝐶) → (Base‘𝑐) = 𝐵)
9 simpr 485 . . . . . . 7 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → 𝑏 = 𝐵)
109sqxpeqd 5665 . . . . . 6 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (𝑏 × 𝑏) = (𝐵 × 𝐵))
11 simplr 767 . . . . . . . . . 10 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → 𝑐 = 𝐶)
1211fveq2d 6846 . . . . . . . . 9 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (Hom ‘𝑐) = (Hom ‘𝐶))
13 hofval.h . . . . . . . . 9 𝐻 = (Hom ‘𝐶)
1412, 13eqtr4di 2794 . . . . . . . 8 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (Hom ‘𝑐) = 𝐻)
1514oveqd 7374 . . . . . . 7 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → ((1st𝑦)(Hom ‘𝑐)(1st𝑥)) = ((1st𝑦)𝐻(1st𝑥)))
1614oveqd 7374 . . . . . . 7 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → ((2nd𝑥)(Hom ‘𝑐)(2nd𝑦)) = ((2nd𝑥)𝐻(2nd𝑦)))
1714fveq1d 6844 . . . . . . . 8 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → ((Hom ‘𝑐)‘𝑥) = (𝐻𝑥))
1811fveq2d 6846 . . . . . . . . . . 11 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (comp‘𝑐) = (comp‘𝐶))
19 hofval.o . . . . . . . . . . 11 · = (comp‘𝐶)
2018, 19eqtr4di 2794 . . . . . . . . . 10 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (comp‘𝑐) = · )
2120oveqd 7374 . . . . . . . . 9 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (⟨(1st𝑦), (1st𝑥)⟩(comp‘𝑐)(2nd𝑦)) = (⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦)))
2220oveqd 7374 . . . . . . . . . 10 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (𝑥(comp‘𝑐)(2nd𝑦)) = (𝑥 · (2nd𝑦)))
2322oveqd 7374 . . . . . . . . 9 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (𝑔(𝑥(comp‘𝑐)(2nd𝑦))) = (𝑔(𝑥 · (2nd𝑦))))
24 eqidd 2737 . . . . . . . . 9 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → 𝑓 = 𝑓)
2521, 23, 24oveq123d 7378 . . . . . . . 8 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → ((𝑔(𝑥(comp‘𝑐)(2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩(comp‘𝑐)(2nd𝑦))𝑓) = ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓))
2617, 25mpteq12dv 5196 . . . . . . 7 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → ( ∈ ((Hom ‘𝑐)‘𝑥) ↦ ((𝑔(𝑥(comp‘𝑐)(2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩(comp‘𝑐)(2nd𝑦))𝑓)) = ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓)))
2715, 16, 26mpoeq123dv 7432 . . . . . 6 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (𝑓 ∈ ((1st𝑦)(Hom ‘𝑐)(1st𝑥)), 𝑔 ∈ ((2nd𝑥)(Hom ‘𝑐)(2nd𝑦)) ↦ ( ∈ ((Hom ‘𝑐)‘𝑥) ↦ ((𝑔(𝑥(comp‘𝑐)(2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩(comp‘𝑐)(2nd𝑦))𝑓))) = (𝑓 ∈ ((1st𝑦)𝐻(1st𝑥)), 𝑔 ∈ ((2nd𝑥)𝐻(2nd𝑦)) ↦ ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓))))
2810, 10, 27mpoeq123dv 7432 . . . . 5 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (𝑥 ∈ (𝑏 × 𝑏), 𝑦 ∈ (𝑏 × 𝑏) ↦ (𝑓 ∈ ((1st𝑦)(Hom ‘𝑐)(1st𝑥)), 𝑔 ∈ ((2nd𝑥)(Hom ‘𝑐)(2nd𝑦)) ↦ ( ∈ ((Hom ‘𝑐)‘𝑥) ↦ ((𝑔(𝑥(comp‘𝑐)(2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩(comp‘𝑐)(2nd𝑦))𝑓)))) = (𝑥 ∈ (𝐵 × 𝐵), 𝑦 ∈ (𝐵 × 𝐵) ↦ (𝑓 ∈ ((1st𝑦)𝐻(1st𝑥)), 𝑔 ∈ ((2nd𝑥)𝐻(2nd𝑦)) ↦ ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓)))))
295, 8, 28csbied2 3895 . . . 4 ((𝜑𝑐 = 𝐶) → (Base‘𝑐) / 𝑏(𝑥 ∈ (𝑏 × 𝑏), 𝑦 ∈ (𝑏 × 𝑏) ↦ (𝑓 ∈ ((1st𝑦)(Hom ‘𝑐)(1st𝑥)), 𝑔 ∈ ((2nd𝑥)(Hom ‘𝑐)(2nd𝑦)) ↦ ( ∈ ((Hom ‘𝑐)‘𝑥) ↦ ((𝑔(𝑥(comp‘𝑐)(2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩(comp‘𝑐)(2nd𝑦))𝑓)))) = (𝑥 ∈ (𝐵 × 𝐵), 𝑦 ∈ (𝐵 × 𝐵) ↦ (𝑓 ∈ ((1st𝑦)𝐻(1st𝑥)), 𝑔 ∈ ((2nd𝑥)𝐻(2nd𝑦)) ↦ ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓)))))
304, 29opeq12d 4838 . . 3 ((𝜑𝑐 = 𝐶) → ⟨(Homf𝑐), (Base‘𝑐) / 𝑏(𝑥 ∈ (𝑏 × 𝑏), 𝑦 ∈ (𝑏 × 𝑏) ↦ (𝑓 ∈ ((1st𝑦)(Hom ‘𝑐)(1st𝑥)), 𝑔 ∈ ((2nd𝑥)(Hom ‘𝑐)(2nd𝑦)) ↦ ( ∈ ((Hom ‘𝑐)‘𝑥) ↦ ((𝑔(𝑥(comp‘𝑐)(2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩(comp‘𝑐)(2nd𝑦))𝑓))))⟩ = ⟨(Homf𝐶), (𝑥 ∈ (𝐵 × 𝐵), 𝑦 ∈ (𝐵 × 𝐵) ↦ (𝑓 ∈ ((1st𝑦)𝐻(1st𝑥)), 𝑔 ∈ ((2nd𝑥)𝐻(2nd𝑦)) ↦ ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓))))⟩)
31 hofval.c . . 3 (𝜑𝐶 ∈ Cat)
32 opex 5421 . . . 4 ⟨(Homf𝐶), (𝑥 ∈ (𝐵 × 𝐵), 𝑦 ∈ (𝐵 × 𝐵) ↦ (𝑓 ∈ ((1st𝑦)𝐻(1st𝑥)), 𝑔 ∈ ((2nd𝑥)𝐻(2nd𝑦)) ↦ ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓))))⟩ ∈ V
3332a1i 11 . . 3 (𝜑 → ⟨(Homf𝐶), (𝑥 ∈ (𝐵 × 𝐵), 𝑦 ∈ (𝐵 × 𝐵) ↦ (𝑓 ∈ ((1st𝑦)𝐻(1st𝑥)), 𝑔 ∈ ((2nd𝑥)𝐻(2nd𝑦)) ↦ ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓))))⟩ ∈ V)
342, 30, 31, 33fvmptd2 6956 . 2 (𝜑 → (HomF𝐶) = ⟨(Homf𝐶), (𝑥 ∈ (𝐵 × 𝐵), 𝑦 ∈ (𝐵 × 𝐵) ↦ (𝑓 ∈ ((1st𝑦)𝐻(1st𝑥)), 𝑔 ∈ ((2nd𝑥)𝐻(2nd𝑦)) ↦ ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓))))⟩)
351, 34eqtrid 2788 1 (𝜑𝑀 = ⟨(Homf𝐶), (𝑥 ∈ (𝐵 × 𝐵), 𝑦 ∈ (𝐵 × 𝐵) ↦ (𝑓 ∈ ((1st𝑦)𝐻(1st𝑥)), 𝑔 ∈ ((2nd𝑥)𝐻(2nd𝑦)) ↦ ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓))))⟩)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 396   = wceq 1541  wcel 2106  Vcvv 3445  csb 3855  cop 4592  cmpt 5188   × cxp 5631  cfv 6496  (class class class)co 7357  cmpo 7359  1st c1st 7919  2nd c2nd 7920  Basecbs 17083  Hom chom 17144  compcco 17145  Catccat 17544  Homf chomf 17546  HomFchof 18137
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2707  ax-sep 5256  ax-nul 5263  ax-pr 5384
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 846  df-3an 1089  df-tru 1544  df-fal 1554  df-ex 1782  df-nf 1786  df-sb 2068  df-mo 2538  df-eu 2567  df-clab 2714  df-cleq 2728  df-clel 2814  df-nfc 2889  df-ne 2944  df-ral 3065  df-rex 3074  df-rab 3408  df-v 3447  df-sbc 3740  df-csb 3856  df-dif 3913  df-un 3915  df-in 3917  df-ss 3927  df-nul 4283  df-if 4487  df-sn 4587  df-pr 4589  df-op 4593  df-uni 4866  df-br 5106  df-opab 5168  df-mpt 5189  df-id 5531  df-xp 5639  df-rel 5640  df-cnv 5641  df-co 5642  df-dm 5643  df-iota 6448  df-fun 6498  df-fv 6504  df-ov 7360  df-oprab 7361  df-mpo 7362  df-hof 18139
This theorem is referenced by:  hof1fval  18142  hof2fval  18144  hofcl  18148  hofpropd  18156
  Copyright terms: Public domain W3C validator