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

Theorem cofuval 17818
Description: Value of the composition of two functors. (Contributed by Mario Carneiro, 3-Jan-2017.)
Hypotheses
Ref Expression
cofuval.b 𝐵 = (Base‘𝐶)
cofuval.f (𝜑𝐹 ∈ (𝐶 Func 𝐷))
cofuval.g (𝜑𝐺 ∈ (𝐷 Func 𝐸))
Assertion
Ref Expression
cofuval (𝜑 → (𝐺func 𝐹) = ⟨((1st𝐺) ∘ (1st𝐹)), (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))⟩)
Distinct variable groups:   𝑥,𝑦,𝐵   𝑥,𝐹,𝑦   𝑥,𝐺,𝑦   𝜑,𝑥,𝑦
Allowed substitution hints:   𝐶(𝑥,𝑦)   𝐷(𝑥,𝑦)   𝐸(𝑥,𝑦)

Proof of Theorem cofuval
Dummy variables 𝑓 𝑔 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-cofu 17796 . . 3 func = (𝑔 ∈ V, 𝑓 ∈ V ↦ ⟨((1st𝑔) ∘ (1st𝑓)), (𝑥 ∈ dom dom (2nd𝑓), 𝑦 ∈ dom dom (2nd𝑓) ↦ ((((1st𝑓)‘𝑥)(2nd𝑔)((1st𝑓)‘𝑦)) ∘ (𝑥(2nd𝑓)𝑦)))⟩)
21a1i 11 . 2 (𝜑 → ∘func = (𝑔 ∈ V, 𝑓 ∈ V ↦ ⟨((1st𝑔) ∘ (1st𝑓)), (𝑥 ∈ dom dom (2nd𝑓), 𝑦 ∈ dom dom (2nd𝑓) ↦ ((((1st𝑓)‘𝑥)(2nd𝑔)((1st𝑓)‘𝑦)) ∘ (𝑥(2nd𝑓)𝑦)))⟩))
3 simprl 771 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → 𝑔 = 𝐺)
43fveq2d 6846 . . . 4 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (1st𝑔) = (1st𝐺))
5 simprr 773 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → 𝑓 = 𝐹)
65fveq2d 6846 . . . 4 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (1st𝑓) = (1st𝐹))
74, 6coeq12d 5821 . . 3 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ((1st𝑔) ∘ (1st𝑓)) = ((1st𝐺) ∘ (1st𝐹)))
85fveq2d 6846 . . . . . . . 8 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (2nd𝑓) = (2nd𝐹))
98dmeqd 5862 . . . . . . 7 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom (2nd𝑓) = dom (2nd𝐹))
10 cofuval.b . . . . . . . . . 10 𝐵 = (Base‘𝐶)
11 relfunc 17798 . . . . . . . . . . 11 Rel (𝐶 Func 𝐷)
12 cofuval.f . . . . . . . . . . 11 (𝜑𝐹 ∈ (𝐶 Func 𝐷))
13 1st2ndbr 7996 . . . . . . . . . . 11 ((Rel (𝐶 Func 𝐷) ∧ 𝐹 ∈ (𝐶 Func 𝐷)) → (1st𝐹)(𝐶 Func 𝐷)(2nd𝐹))
1411, 12, 13sylancr 588 . . . . . . . . . 10 (𝜑 → (1st𝐹)(𝐶 Func 𝐷)(2nd𝐹))
1510, 14funcfn2 17805 . . . . . . . . 9 (𝜑 → (2nd𝐹) Fn (𝐵 × 𝐵))
1615fndmd 6605 . . . . . . . 8 (𝜑 → dom (2nd𝐹) = (𝐵 × 𝐵))
1716adantr 480 . . . . . . 7 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom (2nd𝐹) = (𝐵 × 𝐵))
189, 17eqtrd 2772 . . . . . 6 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom (2nd𝑓) = (𝐵 × 𝐵))
1918dmeqd 5862 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom dom (2nd𝑓) = dom (𝐵 × 𝐵))
20 dmxpid 5887 . . . . 5 dom (𝐵 × 𝐵) = 𝐵
2119, 20eqtrdi 2788 . . . 4 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom dom (2nd𝑓) = 𝐵)
223fveq2d 6846 . . . . . 6 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (2nd𝑔) = (2nd𝐺))
236fveq1d 6844 . . . . . 6 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ((1st𝑓)‘𝑥) = ((1st𝐹)‘𝑥))
246fveq1d 6844 . . . . . 6 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ((1st𝑓)‘𝑦) = ((1st𝐹)‘𝑦))
2522, 23, 24oveq123d 7389 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (((1st𝑓)‘𝑥)(2nd𝑔)((1st𝑓)‘𝑦)) = (((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)))
268oveqd 7385 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (𝑥(2nd𝑓)𝑦) = (𝑥(2nd𝐹)𝑦))
2725, 26coeq12d 5821 . . . 4 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ((((1st𝑓)‘𝑥)(2nd𝑔)((1st𝑓)‘𝑦)) ∘ (𝑥(2nd𝑓)𝑦)) = ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))
2821, 21, 27mpoeq123dv 7443 . . 3 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (𝑥 ∈ dom dom (2nd𝑓), 𝑦 ∈ dom dom (2nd𝑓) ↦ ((((1st𝑓)‘𝑥)(2nd𝑔)((1st𝑓)‘𝑦)) ∘ (𝑥(2nd𝑓)𝑦))) = (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦))))
297, 28opeq12d 4839 . 2 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ⟨((1st𝑔) ∘ (1st𝑓)), (𝑥 ∈ dom dom (2nd𝑓), 𝑦 ∈ dom dom (2nd𝑓) ↦ ((((1st𝑓)‘𝑥)(2nd𝑔)((1st𝑓)‘𝑦)) ∘ (𝑥(2nd𝑓)𝑦)))⟩ = ⟨((1st𝐺) ∘ (1st𝐹)), (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))⟩)
30 cofuval.g . . 3 (𝜑𝐺 ∈ (𝐷 Func 𝐸))
3130elexd 3466 . 2 (𝜑𝐺 ∈ V)
3212elexd 3466 . 2 (𝜑𝐹 ∈ V)
33 opex 5419 . . 3 ⟨((1st𝐺) ∘ (1st𝐹)), (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))⟩ ∈ V
3433a1i 11 . 2 (𝜑 → ⟨((1st𝐺) ∘ (1st𝐹)), (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))⟩ ∈ V)
352, 29, 31, 32, 34ovmpod 7520 1 (𝜑 → (𝐺func 𝐹) = ⟨((1st𝐺) ∘ (1st𝐹)), (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))⟩)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1542  wcel 2114  Vcvv 3442  cop 4588   class class class wbr 5100   × cxp 5630  dom cdm 5632  ccom 5636  Rel wrel 5637  cfv 6500  (class class class)co 7368  cmpo 7370  1st c1st 7941  2nd c2nd 7942  Basecbs 17148   Func cfunc 17790  func ccofu 17792
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 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-10 2147  ax-11 2163  ax-12 2185  ax-ext 2709  ax-rep 5226  ax-sep 5243  ax-nul 5253  ax-pow 5312  ax-pr 5379  ax-un 7690
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-mo 2540  df-eu 2570  df-clab 2716  df-cleq 2729  df-clel 2812  df-nfc 2886  df-ne 2934  df-ral 3053  df-rex 3063  df-rab 3402  df-v 3444  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-nul 4288  df-if 4482  df-pw 4558  df-sn 4583  df-pr 4585  df-op 4589  df-uni 4866  df-iun 4950  df-br 5101  df-opab 5163  df-mpt 5182  df-id 5527  df-xp 5638  df-rel 5639  df-cnv 5640  df-co 5641  df-dm 5642  df-rn 5643  df-res 5644  df-ima 5645  df-iota 6456  df-fun 6502  df-fn 6503  df-f 6504  df-fv 6508  df-ov 7371  df-oprab 7372  df-mpo 7373  df-1st 7943  df-2nd 7944  df-map 8777  df-ixp 8848  df-func 17794  df-cofu 17796
This theorem is referenced by:  cofu1st  17819  cofu2nd  17821  cofuval2  17823  cofucl  17824  cofuass  17825  cofulid  17826  cofurid  17827  prf1st  18139  prf2nd  18140  cofidvala  49472  cofuoppf  49506
  Copyright terms: Public domain W3C validator