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

Theorem fpar 7794
Description: Merge two functions in parallel. Use as the second argument of a composition with a binary operation to build compound functions such as (𝑥 ∈ (0[,)+∞), 𝑦 ∈ ℝ ↦ ((√‘𝑥) + (sin‘𝑦))), see also ex-fpar 28247. (Contributed by NM, 17-Sep-2007.) (Proof shortened by Mario Carneiro, 28-Apr-2015.)
Hypothesis
Ref Expression
fpar.1 𝐻 = (((1st ↾ (V × V)) ∘ (𝐹 ∘ (1st ↾ (V × V)))) ∩ ((2nd ↾ (V × V)) ∘ (𝐺 ∘ (2nd ↾ (V × V)))))
Assertion
Ref Expression
fpar ((𝐹 Fn 𝐴𝐺 Fn 𝐵) → 𝐻 = (𝑥𝐴, 𝑦𝐵 ↦ ⟨(𝐹𝑥), (𝐺𝑦)⟩))
Distinct variable groups:   𝑥,𝑦,𝐴   𝑥,𝐵,𝑦   𝑥,𝐹,𝑦   𝑥,𝐺,𝑦
Allowed substitution hints:   𝐻(𝑥,𝑦)

Proof of Theorem fpar
StepHypRef Expression
1 fparlem3 7792 . . 3 (𝐹 Fn 𝐴 → ((1st ↾ (V × V)) ∘ (𝐹 ∘ (1st ↾ (V × V)))) = 𝑥𝐴 (({𝑥} × V) × ({(𝐹𝑥)} × V)))
2 fparlem4 7793 . . 3 (𝐺 Fn 𝐵 → ((2nd ↾ (V × V)) ∘ (𝐺 ∘ (2nd ↾ (V × V)))) = 𝑦𝐵 ((V × {𝑦}) × (V × {(𝐺𝑦)})))
31, 2ineqan12d 4141 . 2 ((𝐹 Fn 𝐴𝐺 Fn 𝐵) → (((1st ↾ (V × V)) ∘ (𝐹 ∘ (1st ↾ (V × V)))) ∩ ((2nd ↾ (V × V)) ∘ (𝐺 ∘ (2nd ↾ (V × V))))) = ( 𝑥𝐴 (({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ 𝑦𝐵 ((V × {𝑦}) × (V × {(𝐺𝑦)}))))
4 fpar.1 . 2 𝐻 = (((1st ↾ (V × V)) ∘ (𝐹 ∘ (1st ↾ (V × V)))) ∩ ((2nd ↾ (V × V)) ∘ (𝐺 ∘ (2nd ↾ (V × V)))))
5 opex 5321 . . . 4 ⟨(𝐹𝑥), (𝐺𝑦)⟩ ∈ V
65dfmpo 7780 . . 3 (𝑥𝐴, 𝑦𝐵 ↦ ⟨(𝐹𝑥), (𝐺𝑦)⟩) = 𝑥𝐴 𝑦𝐵 {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩}
7 inxp 5667 . . . . . . . 8 ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = ((({𝑥} × V) ∩ (V × {𝑦})) × (({(𝐹𝑥)} × V) ∩ (V × {(𝐺𝑦)})))
8 inxp 5667 . . . . . . . . . 10 (({𝑥} × V) ∩ (V × {𝑦})) = (({𝑥} ∩ V) × (V ∩ {𝑦}))
9 inv1 4302 . . . . . . . . . . 11 ({𝑥} ∩ V) = {𝑥}
10 incom 4128 . . . . . . . . . . . 12 (V ∩ {𝑦}) = ({𝑦} ∩ V)
11 inv1 4302 . . . . . . . . . . . 12 ({𝑦} ∩ V) = {𝑦}
1210, 11eqtri 2821 . . . . . . . . . . 11 (V ∩ {𝑦}) = {𝑦}
139, 12xpeq12i 5547 . . . . . . . . . 10 (({𝑥} ∩ V) × (V ∩ {𝑦})) = ({𝑥} × {𝑦})
14 vex 3444 . . . . . . . . . . 11 𝑥 ∈ V
15 vex 3444 . . . . . . . . . . 11 𝑦 ∈ V
1614, 15xpsn 6880 . . . . . . . . . 10 ({𝑥} × {𝑦}) = {⟨𝑥, 𝑦⟩}
178, 13, 163eqtri 2825 . . . . . . . . 9 (({𝑥} × V) ∩ (V × {𝑦})) = {⟨𝑥, 𝑦⟩}
18 inxp 5667 . . . . . . . . . 10 (({(𝐹𝑥)} × V) ∩ (V × {(𝐺𝑦)})) = (({(𝐹𝑥)} ∩ V) × (V ∩ {(𝐺𝑦)}))
19 inv1 4302 . . . . . . . . . . 11 ({(𝐹𝑥)} ∩ V) = {(𝐹𝑥)}
20 incom 4128 . . . . . . . . . . . 12 (V ∩ {(𝐺𝑦)}) = ({(𝐺𝑦)} ∩ V)
21 inv1 4302 . . . . . . . . . . . 12 ({(𝐺𝑦)} ∩ V) = {(𝐺𝑦)}
2220, 21eqtri 2821 . . . . . . . . . . 11 (V ∩ {(𝐺𝑦)}) = {(𝐺𝑦)}
2319, 22xpeq12i 5547 . . . . . . . . . 10 (({(𝐹𝑥)} ∩ V) × (V ∩ {(𝐺𝑦)})) = ({(𝐹𝑥)} × {(𝐺𝑦)})
24 fvex 6658 . . . . . . . . . . 11 (𝐹𝑥) ∈ V
25 fvex 6658 . . . . . . . . . . 11 (𝐺𝑦) ∈ V
2624, 25xpsn 6880 . . . . . . . . . 10 ({(𝐹𝑥)} × {(𝐺𝑦)}) = {⟨(𝐹𝑥), (𝐺𝑦)⟩}
2718, 23, 263eqtri 2825 . . . . . . . . 9 (({(𝐹𝑥)} × V) ∩ (V × {(𝐺𝑦)})) = {⟨(𝐹𝑥), (𝐺𝑦)⟩}
2817, 27xpeq12i 5547 . . . . . . . 8 ((({𝑥} × V) ∩ (V × {𝑦})) × (({(𝐹𝑥)} × V) ∩ (V × {(𝐺𝑦)}))) = ({⟨𝑥, 𝑦⟩} × {⟨(𝐹𝑥), (𝐺𝑦)⟩})
29 opex 5321 . . . . . . . . 9 𝑥, 𝑦⟩ ∈ V
3029, 5xpsn 6880 . . . . . . . 8 ({⟨𝑥, 𝑦⟩} × {⟨(𝐹𝑥), (𝐺𝑦)⟩}) = {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩}
317, 28, 303eqtri 2825 . . . . . . 7 ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩}
3231a1i 11 . . . . . 6 (𝑦𝐵 → ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩})
3332iuneq2i 4902 . . . . 5 𝑦𝐵 ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = 𝑦𝐵 {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩}
3433a1i 11 . . . 4 (𝑥𝐴 𝑦𝐵 ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = 𝑦𝐵 {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩})
3534iuneq2i 4902 . . 3 𝑥𝐴 𝑦𝐵 ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = 𝑥𝐴 𝑦𝐵 {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩}
36 2iunin 4961 . . 3 𝑥𝐴 𝑦𝐵 ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = ( 𝑥𝐴 (({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ 𝑦𝐵 ((V × {𝑦}) × (V × {(𝐺𝑦)})))
376, 35, 363eqtr2i 2827 . 2 (𝑥𝐴, 𝑦𝐵 ↦ ⟨(𝐹𝑥), (𝐺𝑦)⟩) = ( 𝑥𝐴 (({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ 𝑦𝐵 ((V × {𝑦}) × (V × {(𝐺𝑦)})))
383, 4, 373eqtr4g 2858 1 ((𝐹 Fn 𝐴𝐺 Fn 𝐵) → 𝐻 = (𝑥𝐴, 𝑦𝐵 ↦ ⟨(𝐹𝑥), (𝐺𝑦)⟩))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 399   = wceq 1538  wcel 2111  Vcvv 3441  cin 3880  {csn 4525  cop 4531   ciun 4881   × cxp 5517  ccnv 5518  cres 5521  ccom 5523   Fn wfn 6319  cfv 6324  cmpo 7137  1st c1st 7669  2nd c2nd 7670
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 1911  ax-6 1970  ax-7 2015  ax-8 2113  ax-9 2121  ax-10 2142  ax-11 2158  ax-12 2175  ax-ext 2770  ax-sep 5167  ax-nul 5174  ax-pow 5231  ax-pr 5295  ax-un 7441
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3an 1086  df-tru 1541  df-fal 1551  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2598  df-eu 2629  df-clab 2777  df-cleq 2791  df-clel 2870  df-nfc 2938  df-ne 2988  df-ral 3111  df-rex 3112  df-reu 3113  df-rab 3115  df-v 3443  df-sbc 3721  df-csb 3829  df-dif 3884  df-un 3886  df-in 3888  df-ss 3898  df-nul 4244  df-if 4426  df-sn 4526  df-pr 4528  df-op 4532  df-uni 4801  df-iun 4883  df-br 5031  df-opab 5093  df-mpt 5111  df-id 5425  df-xp 5525  df-rel 5526  df-cnv 5527  df-co 5528  df-dm 5529  df-rn 5530  df-res 5531  df-ima 5532  df-iota 6283  df-fun 6326  df-fn 6327  df-f 6328  df-f1 6329  df-fo 6330  df-f1o 6331  df-fv 6332  df-oprab 7139  df-mpo 7140  df-1st 7671  df-2nd 7672
This theorem is referenced by:  fsplitfpar  7797  ex-fpar  28247
  Copyright terms: Public domain W3C validator