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

Theorem cofuval 17847
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 17825 . . 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 776 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → 𝑔 = 𝐺)
43fveq2d 6838 . . . 4 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (1st𝑔) = (1st𝐺))
5 simprr 778 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → 𝑓 = 𝐹)
65fveq2d 6838 . . . 4 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (1st𝑓) = (1st𝐹))
74, 6coeq12d 5813 . . 3 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ((1st𝑔) ∘ (1st𝑓)) = ((1st𝐺) ∘ (1st𝐹)))
85fveq2d 6838 . . . . . . . 8 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (2nd𝑓) = (2nd𝐹))
98dmeqd 5854 . . . . . . 7 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom (2nd𝑓) = dom (2nd𝐹))
10 cofuval.b . . . . . . . . . 10 𝐵 = (Base‘𝐶)
11 relfunc 17827 . . . . . . . . . . 11 Rel (𝐶 Func 𝐷)
12 cofuval.f . . . . . . . . . . 11 (𝜑𝐹 ∈ (𝐶 Func 𝐷))
13 1st2ndbr 7991 . . . . . . . . . . 11 ((Rel (𝐶 Func 𝐷) ∧ 𝐹 ∈ (𝐶 Func 𝐷)) → (1st𝐹)(𝐶 Func 𝐷)(2nd𝐹))
1411, 12, 13sylancr 593 . . . . . . . . . 10 (𝜑 → (1st𝐹)(𝐶 Func 𝐷)(2nd𝐹))
1510, 14funcfn2 17834 . . . . . . . . 9 (𝜑 → (2nd𝐹) Fn (𝐵 × 𝐵))
1615fndmd 6597 . . . . . . . 8 (𝜑 → dom (2nd𝐹) = (𝐵 × 𝐵))
1716adantr 481 . . . . . . 7 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom (2nd𝐹) = (𝐵 × 𝐵))
189, 17eqtrd 2775 . . . . . 6 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom (2nd𝑓) = (𝐵 × 𝐵))
1918dmeqd 5854 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom dom (2nd𝑓) = dom (𝐵 × 𝐵))
20 dmxpid 5879 . . . . 5 dom (𝐵 × 𝐵) = 𝐵
2119, 20eqtrdi 2791 . . . 4 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom dom (2nd𝑓) = 𝐵)
223fveq2d 6838 . . . . . 6 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (2nd𝑔) = (2nd𝐺))
236fveq1d 6836 . . . . . 6 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ((1st𝑓)‘𝑥) = ((1st𝐹)‘𝑥))
246fveq1d 6836 . . . . . 6 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ((1st𝑓)‘𝑦) = ((1st𝐹)‘𝑦))
2522, 23, 24oveq123d 7384 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (((1st𝑓)‘𝑥)(2nd𝑔)((1st𝑓)‘𝑦)) = (((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)))
268oveqd 7380 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (𝑥(2nd𝑓)𝑦) = (𝑥(2nd𝐹)𝑦))
2725, 26coeq12d 5813 . . . 4 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ((((1st𝑓)‘𝑥)(2nd𝑔)((1st𝑓)‘𝑦)) ∘ (𝑥(2nd𝑓)𝑦)) = ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))
2821, 21, 27mpoeq123dv 7438 . . 3 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (𝑥 ∈ dom dom (2nd𝑓), 𝑦 ∈ dom dom (2nd𝑓) ↦ ((((1st𝑓)‘𝑥)(2nd𝑔)((1st𝑓)‘𝑦)) ∘ (𝑥(2nd𝑓)𝑦))) = (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦))))
297, 28opeq12d 4819 . 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 3456 . 2 (𝜑𝐺 ∈ V)
3212elexd 3456 . 2 (𝜑𝐹 ∈ V)
33 opex 5410 . . 3 ⟨((1st𝐺) ∘ (1st𝐹)), (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))⟩ ∈ V
3433a1i 11 . 2 (𝜑 → ⟨((1st𝐺) ∘ (1st𝐹)), (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))⟩ ∈ V)
352, 29, 31, 32, 34ovmpod 7515 1 (𝜑 → (𝐺func 𝐹) = ⟨((1st𝐺) ∘ (1st𝐹)), (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))⟩)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 396   = wceq 1547  wcel 2119  Vcvv 3432  cop 4568   class class class wbr 5079   × cxp 5623  dom cdm 5625  ccom 5629  Rel wrel 5630  cfv 6492  (class class class)co 7363  cmpo 7365  1st c1st 7936  2nd c2nd 7937  Basecbs 17177   Func cfunc 17819  func ccofu 17821
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1802  ax-4 1816  ax-5 1917  ax-6 1974  ax-7 2015  ax-8 2121  ax-9 2129  ax-10 2152  ax-11 2168  ax-12 2189  ax-ext 2712  ax-rep 5206  ax-sep 5225  ax-nul 5235  ax-pow 5301  ax-pr 5369  ax-un 7685
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 854  df-3an 1094  df-tru 1550  df-fal 1560  df-ex 1787  df-nf 1791  df-sb 2074  df-mo 2543  df-eu 2573  df-clab 2719  df-cleq 2732  df-clel 2815  df-nfc 2889  df-ne 2936  df-ral 3055  df-rex 3065  df-rab 3393  df-v 3434  df-sbc 3731  df-csb 3839  df-dif 3893  df-un 3895  df-in 3897  df-ss 3907  df-nul 4269  df-if 4462  df-pw 4538  df-sn 4563  df-pr 4565  df-op 4569  df-uni 4846  df-iun 4930  df-br 5080  df-opab 5142  df-mpt 5161  df-id 5520  df-xp 5631  df-rel 5632  df-cnv 5633  df-co 5634  df-dm 5635  df-rn 5636  df-res 5637  df-ima 5638  df-iota 6448  df-fun 6494  df-fn 6495  df-f 6496  df-fv 6500  df-ov 7366  df-oprab 7367  df-mpo 7368  df-1st 7938  df-2nd 7939  df-map 8772  df-ixp 8843  df-func 17823  df-cofu 17825
This theorem is referenced by:  cofu1st  17848  cofu2nd  17850  cofuval2  17852  cofucl  17853  cofuass  17854  cofulid  17855  cofurid  17856  prf1st  18168  prf2nd  18169  cofidvala  49613  cofuoppf  49647
  Copyright terms: Public domain W3C validator