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

Theorem hofval 18213
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 18211 . . 3 HomF = (𝑐 ∈ Cat ↦ ⟨(Homf𝑐), (Base‘𝑐) / 𝑏(𝑥 ∈ (𝑏 × 𝑏), 𝑦 ∈ (𝑏 × 𝑏) ↦ (𝑓 ∈ ((1st𝑦)(Hom ‘𝑐)(1st𝑥)), 𝑔 ∈ ((2nd𝑥)(Hom ‘𝑐)(2nd𝑦)) ↦ ( ∈ ((Hom ‘𝑐)‘𝑥) ↦ ((𝑔(𝑥(comp‘𝑐)(2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩(comp‘𝑐)(2nd𝑦))𝑓))))⟩)
3 simpr 484 . . . . 5 ((𝜑𝑐 = 𝐶) → 𝑐 = 𝐶)
43fveq2d 6862 . . . 4 ((𝜑𝑐 = 𝐶) → (Homf𝑐) = (Homf𝐶))
5 fvexd 6873 . . . . 5 ((𝜑𝑐 = 𝐶) → (Base‘𝑐) ∈ V)
63fveq2d 6862 . . . . . 6 ((𝜑𝑐 = 𝐶) → (Base‘𝑐) = (Base‘𝐶))
7 hofval.b . . . . . 6 𝐵 = (Base‘𝐶)
86, 7eqtr4di 2782 . . . . 5 ((𝜑𝑐 = 𝐶) → (Base‘𝑐) = 𝐵)
9 simpr 484 . . . . . . 7 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → 𝑏 = 𝐵)
109sqxpeqd 5670 . . . . . 6 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (𝑏 × 𝑏) = (𝐵 × 𝐵))
11 simplr 768 . . . . . . . . . 10 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → 𝑐 = 𝐶)
1211fveq2d 6862 . . . . . . . . 9 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (Hom ‘𝑐) = (Hom ‘𝐶))
13 hofval.h . . . . . . . . 9 𝐻 = (Hom ‘𝐶)
1412, 13eqtr4di 2782 . . . . . . . 8 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (Hom ‘𝑐) = 𝐻)
1514oveqd 7404 . . . . . . 7 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → ((1st𝑦)(Hom ‘𝑐)(1st𝑥)) = ((1st𝑦)𝐻(1st𝑥)))
1614oveqd 7404 . . . . . . 7 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → ((2nd𝑥)(Hom ‘𝑐)(2nd𝑦)) = ((2nd𝑥)𝐻(2nd𝑦)))
1714fveq1d 6860 . . . . . . . 8 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → ((Hom ‘𝑐)‘𝑥) = (𝐻𝑥))
1811fveq2d 6862 . . . . . . . . . . 11 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (comp‘𝑐) = (comp‘𝐶))
19 hofval.o . . . . . . . . . . 11 · = (comp‘𝐶)
2018, 19eqtr4di 2782 . . . . . . . . . 10 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (comp‘𝑐) = · )
2120oveqd 7404 . . . . . . . . 9 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (⟨(1st𝑦), (1st𝑥)⟩(comp‘𝑐)(2nd𝑦)) = (⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦)))
2220oveqd 7404 . . . . . . . . . 10 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (𝑥(comp‘𝑐)(2nd𝑦)) = (𝑥 · (2nd𝑦)))
2322oveqd 7404 . . . . . . . . 9 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → (𝑔(𝑥(comp‘𝑐)(2nd𝑦))) = (𝑔(𝑥 · (2nd𝑦))))
24 eqidd 2730 . . . . . . . . 9 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → 𝑓 = 𝑓)
2521, 23, 24oveq123d 7408 . . . . . . . 8 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → ((𝑔(𝑥(comp‘𝑐)(2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩(comp‘𝑐)(2nd𝑦))𝑓) = ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓))
2617, 25mpteq12dv 5194 . . . . . . 7 (((𝜑𝑐 = 𝐶) ∧ 𝑏 = 𝐵) → ( ∈ ((Hom ‘𝑐)‘𝑥) ↦ ((𝑔(𝑥(comp‘𝑐)(2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩(comp‘𝑐)(2nd𝑦))𝑓)) = ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓)))
2715, 16, 26mpoeq123dv 7464 . . . . . 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 7464 . . . . 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 3899 . . . 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 4845 . . 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 5424 . . . 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 6976 . 2 (𝜑 → (HomF𝐶) = ⟨(Homf𝐶), (𝑥 ∈ (𝐵 × 𝐵), 𝑦 ∈ (𝐵 × 𝐵) ↦ (𝑓 ∈ ((1st𝑦)𝐻(1st𝑥)), 𝑔 ∈ ((2nd𝑥)𝐻(2nd𝑦)) ↦ ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓))))⟩)
351, 34eqtrid 2776 1 (𝜑𝑀 = ⟨(Homf𝐶), (𝑥 ∈ (𝐵 × 𝐵), 𝑦 ∈ (𝐵 × 𝐵) ↦ (𝑓 ∈ ((1st𝑦)𝐻(1st𝑥)), 𝑔 ∈ ((2nd𝑥)𝐻(2nd𝑦)) ↦ ( ∈ (𝐻𝑥) ↦ ((𝑔(𝑥 · (2nd𝑦)))(⟨(1st𝑦), (1st𝑥)⟩ · (2nd𝑦))𝑓))))⟩)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1540  wcel 2109  Vcvv 3447  csb 3862  cop 4595  cmpt 5188   × cxp 5636  cfv 6511  (class class class)co 7387  cmpo 7389  1st c1st 7966  2nd c2nd 7967  Basecbs 17179  Hom chom 17231  compcco 17232  Catccat 17625  Homf chomf 17627  HomFchof 18209
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-sep 5251  ax-nul 5261  ax-pr 5387
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-ral 3045  df-rex 3054  df-rab 3406  df-v 3449  df-sbc 3754  df-csb 3863  df-dif 3917  df-un 3919  df-ss 3931  df-nul 4297  df-if 4489  df-sn 4590  df-pr 4592  df-op 4596  df-uni 4872  df-br 5108  df-opab 5170  df-mpt 5189  df-id 5533  df-xp 5644  df-rel 5645  df-cnv 5646  df-co 5647  df-dm 5648  df-iota 6464  df-fun 6513  df-fv 6519  df-ov 7390  df-oprab 7391  df-mpo 7392  df-hof 18211
This theorem is referenced by:  hof1fval  18214  hof2fval  18216  hofcl  18220  hofpropd  18228
  Copyright terms: Public domain W3C validator