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

Theorem cofuval 17226
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 17204 . . 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 770 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → 𝑔 = 𝐺)
43fveq2d 6668 . . . 4 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (1st𝑔) = (1st𝐺))
5 simprr 772 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → 𝑓 = 𝐹)
65fveq2d 6668 . . . 4 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (1st𝑓) = (1st𝐹))
74, 6coeq12d 5711 . . 3 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ((1st𝑔) ∘ (1st𝑓)) = ((1st𝐺) ∘ (1st𝐹)))
85fveq2d 6668 . . . . . . . 8 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (2nd𝑓) = (2nd𝐹))
98dmeqd 5752 . . . . . . 7 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom (2nd𝑓) = dom (2nd𝐹))
10 cofuval.b . . . . . . . . . 10 𝐵 = (Base‘𝐶)
11 relfunc 17206 . . . . . . . . . . 11 Rel (𝐶 Func 𝐷)
12 cofuval.f . . . . . . . . . . 11 (𝜑𝐹 ∈ (𝐶 Func 𝐷))
13 1st2ndbr 7752 . . . . . . . . . . 11 ((Rel (𝐶 Func 𝐷) ∧ 𝐹 ∈ (𝐶 Func 𝐷)) → (1st𝐹)(𝐶 Func 𝐷)(2nd𝐹))
1411, 12, 13sylancr 590 . . . . . . . . . 10 (𝜑 → (1st𝐹)(𝐶 Func 𝐷)(2nd𝐹))
1510, 14funcfn2 17213 . . . . . . . . 9 (𝜑 → (2nd𝐹) Fn (𝐵 × 𝐵))
1615fndmd 6444 . . . . . . . 8 (𝜑 → dom (2nd𝐹) = (𝐵 × 𝐵))
1716adantr 484 . . . . . . 7 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom (2nd𝐹) = (𝐵 × 𝐵))
189, 17eqtrd 2794 . . . . . 6 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom (2nd𝑓) = (𝐵 × 𝐵))
1918dmeqd 5752 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom dom (2nd𝑓) = dom (𝐵 × 𝐵))
20 dmxpid 5777 . . . . 5 dom (𝐵 × 𝐵) = 𝐵
2119, 20eqtrdi 2810 . . . 4 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → dom dom (2nd𝑓) = 𝐵)
223fveq2d 6668 . . . . . 6 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (2nd𝑔) = (2nd𝐺))
236fveq1d 6666 . . . . . 6 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ((1st𝑓)‘𝑥) = ((1st𝐹)‘𝑥))
246fveq1d 6666 . . . . . 6 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ((1st𝑓)‘𝑦) = ((1st𝐹)‘𝑦))
2522, 23, 24oveq123d 7178 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (((1st𝑓)‘𝑥)(2nd𝑔)((1st𝑓)‘𝑦)) = (((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)))
268oveqd 7174 . . . . 5 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (𝑥(2nd𝑓)𝑦) = (𝑥(2nd𝐹)𝑦))
2725, 26coeq12d 5711 . . . 4 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → ((((1st𝑓)‘𝑥)(2nd𝑔)((1st𝑓)‘𝑦)) ∘ (𝑥(2nd𝑓)𝑦)) = ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))
2821, 21, 27mpoeq123dv 7230 . . 3 ((𝜑 ∧ (𝑔 = 𝐺𝑓 = 𝐹)) → (𝑥 ∈ dom dom (2nd𝑓), 𝑦 ∈ dom dom (2nd𝑓) ↦ ((((1st𝑓)‘𝑥)(2nd𝑔)((1st𝑓)‘𝑦)) ∘ (𝑥(2nd𝑓)𝑦))) = (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦))))
297, 28opeq12d 4775 . 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 3431 . 2 (𝜑𝐺 ∈ V)
3212elexd 3431 . 2 (𝜑𝐹 ∈ V)
33 opex 5329 . . 3 ⟨((1st𝐺) ∘ (1st𝐹)), (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))⟩ ∈ V
3433a1i 11 . 2 (𝜑 → ⟨((1st𝐺) ∘ (1st𝐹)), (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))⟩ ∈ V)
352, 29, 31, 32, 34ovmpod 7304 1 (𝜑 → (𝐺func 𝐹) = ⟨((1st𝐺) ∘ (1st𝐹)), (𝑥𝐵, 𝑦𝐵 ↦ ((((1st𝐹)‘𝑥)(2nd𝐺)((1st𝐹)‘𝑦)) ∘ (𝑥(2nd𝐹)𝑦)))⟩)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 399   = wceq 1539  wcel 2112  Vcvv 3410  cop 4532   class class class wbr 5037   × cxp 5527  dom cdm 5529  ccom 5533  Rel wrel 5534  cfv 6341  (class class class)co 7157  cmpo 7159  1st c1st 7698  2nd c2nd 7699  Basecbs 16556   Func cfunc 17198  func ccofu 17200
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1912  ax-6 1971  ax-7 2016  ax-8 2114  ax-9 2122  ax-10 2143  ax-11 2159  ax-12 2176  ax-ext 2730  ax-rep 5161  ax-sep 5174  ax-nul 5181  ax-pow 5239  ax-pr 5303  ax-un 7466
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3an 1087  df-tru 1542  df-fal 1552  df-ex 1783  df-nf 1787  df-sb 2071  df-mo 2558  df-eu 2589  df-clab 2737  df-cleq 2751  df-clel 2831  df-nfc 2902  df-ne 2953  df-ral 3076  df-rex 3077  df-reu 3078  df-rab 3080  df-v 3412  df-sbc 3700  df-csb 3809  df-dif 3864  df-un 3866  df-in 3868  df-ss 3878  df-nul 4229  df-if 4425  df-pw 4500  df-sn 4527  df-pr 4529  df-op 4533  df-uni 4803  df-iun 4889  df-br 5038  df-opab 5100  df-mpt 5118  df-id 5435  df-xp 5535  df-rel 5536  df-cnv 5537  df-co 5538  df-dm 5539  df-rn 5540  df-res 5541  df-ima 5542  df-iota 6300  df-fun 6343  df-fn 6344  df-f 6345  df-f1 6346  df-fo 6347  df-f1o 6348  df-fv 6349  df-ov 7160  df-oprab 7161  df-mpo 7162  df-1st 7700  df-2nd 7701  df-map 8425  df-ixp 8494  df-func 17202  df-cofu 17204
This theorem is referenced by:  cofu1st  17227  cofu2nd  17229  cofuval2  17231  cofucl  17232  cofuass  17233  cofulid  17234  cofurid  17235  prf1st  17535  prf2nd  17536
  Copyright terms: Public domain W3C validator