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

Theorem fpar 8099
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 30722. (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 8097 . . 3 (𝐹 Fn 𝐴 → ((1st ↾ (V × V)) ∘ (𝐹 ∘ (1st ↾ (V × V)))) = 𝑥𝐴 (({𝑥} × V) × ({(𝐹𝑥)} × V)))
2 fparlem4 8098 . . 3 (𝐺 Fn 𝐵 → ((2nd ↾ (V × V)) ∘ (𝐺 ∘ (2nd ↾ (V × V)))) = 𝑦𝐵 ((V × {𝑦}) × (V × {(𝐺𝑦)})))
31, 2ineqan12d 4177 . 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 5436 . . . 4 ⟨(𝐹𝑥), (𝐺𝑦)⟩ ∈ V
65dfmpo 8085 . . 3 (𝑥𝐴, 𝑦𝐵 ↦ ⟨(𝐹𝑥), (𝐺𝑦)⟩) = 𝑥𝐴 𝑦𝐵 {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩}
7 inxp 5809 . . . . . . . 8 ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = ((({𝑥} × V) ∩ (V × {𝑦})) × (({(𝐹𝑥)} × V) ∩ (V × {(𝐺𝑦)})))
8 inxp 5809 . . . . . . . . . 10 (({𝑥} × V) ∩ (V × {𝑦})) = (({𝑥} ∩ V) × (V ∩ {𝑦}))
9 inv1 4355 . . . . . . . . . . 11 ({𝑥} ∩ V) = {𝑥}
10 incom 4164 . . . . . . . . . . . 12 (V ∩ {𝑦}) = ({𝑦} ∩ V)
11 inv1 4355 . . . . . . . . . . . 12 ({𝑦} ∩ V) = {𝑦}
1210, 11eqtri 2788 . . . . . . . . . . 11 (V ∩ {𝑦}) = {𝑦}
139, 12xpeq12i 5680 . . . . . . . . . 10 (({𝑥} ∩ V) × (V ∩ {𝑦})) = ({𝑥} × {𝑦})
14 vex 3461 . . . . . . . . . . 11 𝑥 ∈ V
15 vex 3461 . . . . . . . . . . 11 𝑦 ∈ V
1614, 15xpsn 7127 . . . . . . . . . 10 ({𝑥} × {𝑦}) = {⟨𝑥, 𝑦⟩}
178, 13, 163eqtri 2792 . . . . . . . . 9 (({𝑥} × V) ∩ (V × {𝑦})) = {⟨𝑥, 𝑦⟩}
18 inxp 5809 . . . . . . . . . 10 (({(𝐹𝑥)} × V) ∩ (V × {(𝐺𝑦)})) = (({(𝐹𝑥)} ∩ V) × (V ∩ {(𝐺𝑦)}))
19 inv1 4355 . . . . . . . . . . 11 ({(𝐹𝑥)} ∩ V) = {(𝐹𝑥)}
20 incom 4164 . . . . . . . . . . . 12 (V ∩ {(𝐺𝑦)}) = ({(𝐺𝑦)} ∩ V)
21 inv1 4355 . . . . . . . . . . . 12 ({(𝐺𝑦)} ∩ V) = {(𝐺𝑦)}
2220, 21eqtri 2788 . . . . . . . . . . 11 (V ∩ {(𝐺𝑦)}) = {(𝐺𝑦)}
2319, 22xpeq12i 5680 . . . . . . . . . 10 (({(𝐹𝑥)} ∩ V) × (V ∩ {(𝐺𝑦)})) = ({(𝐹𝑥)} × {(𝐺𝑦)})
24 fvex 6884 . . . . . . . . . . 11 (𝐹𝑥) ∈ V
25 fvex 6884 . . . . . . . . . . 11 (𝐺𝑦) ∈ V
2624, 25xpsn 7127 . . . . . . . . . 10 ({(𝐹𝑥)} × {(𝐺𝑦)}) = {⟨(𝐹𝑥), (𝐺𝑦)⟩}
2718, 23, 263eqtri 2792 . . . . . . . . 9 (({(𝐹𝑥)} × V) ∩ (V × {(𝐺𝑦)})) = {⟨(𝐹𝑥), (𝐺𝑦)⟩}
2817, 27xpeq12i 5680 . . . . . . . 8 ((({𝑥} × V) ∩ (V × {𝑦})) × (({(𝐹𝑥)} × V) ∩ (V × {(𝐺𝑦)}))) = ({⟨𝑥, 𝑦⟩} × {⟨(𝐹𝑥), (𝐺𝑦)⟩})
29 opex 5436 . . . . . . . . 9 𝑥, 𝑦⟩ ∈ V
3029, 5xpsn 7127 . . . . . . . 8 ({⟨𝑥, 𝑦⟩} × {⟨(𝐹𝑥), (𝐺𝑦)⟩}) = {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩}
317, 28, 303eqtri 2792 . . . . . . 7 ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩}
3231a1i 11 . . . . . 6 (𝑦𝐵 → ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩})
3332iuneq2i 4974 . . . . 5 𝑦𝐵 ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = 𝑦𝐵 {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩}
3433a1i 11 . . . 4 (𝑥𝐴 𝑦𝐵 ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = 𝑦𝐵 {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩})
3534iuneq2i 4974 . . 3 𝑥𝐴 𝑦𝐵 ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = 𝑥𝐴 𝑦𝐵 {⟨⟨𝑥, 𝑦⟩, ⟨(𝐹𝑥), (𝐺𝑦)⟩⟩}
36 2iunin 5038 . . 3 𝑥𝐴 𝑦𝐵 ((({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ ((V × {𝑦}) × (V × {(𝐺𝑦)}))) = ( 𝑥𝐴 (({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ 𝑦𝐵 ((V × {𝑦}) × (V × {(𝐺𝑦)})))
376, 35, 363eqtr2i 2794 . 2 (𝑥𝐴, 𝑦𝐵 ↦ ⟨(𝐹𝑥), (𝐺𝑦)⟩) = ( 𝑥𝐴 (({𝑥} × V) × ({(𝐹𝑥)} × V)) ∩ 𝑦𝐵 ((V × {𝑦}) × (V × {(𝐺𝑦)})))
383, 4, 373eqtr4g 2825 1 ((𝐹 Fn 𝐴𝐺 Fn 𝐵) → 𝐻 = (𝑥𝐴, 𝑦𝐵 ↦ ⟨(𝐹𝑥), (𝐺𝑦)⟩))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 400   = wceq 1563  wcel 2145  Vcvv 3457  cin 3906  {csn 4585  cop 4591   ciun 4952   × cxp 5650  ccnv 5651  cres 5654  ccom 5656   Fn wfn 6520  cfv 6525  cmpo 7402  1st c1st 7972  2nd c2nd 7973
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1818  ax-4 1832  ax-5 1933  ax-6 1990  ax-7 2031  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2737  ax-sep 5251  ax-nul 5261  ax-pr 5395  ax-un 7722
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3an 1103  df-tru 1566  df-fal 1576  df-ex 1803  df-nf 1807  df-sb 2094  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-ral 3080  df-rex 3090  df-reu 3371  df-rab 3418  df-v 3459  df-sbc 3748  df-csb 3856  df-dif 3910  df-un 3912  df-in 3914  df-ss 3924  df-nul 4289  df-if 4484  df-sn 4586  df-pr 4588  df-op 4592  df-uni 4869  df-iun 4954  df-br 5106  df-opab 5168  df-mpt 5187  df-id 5547  df-xp 5658  df-rel 5659  df-cnv 5660  df-co 5661  df-dm 5662  df-rn 5663  df-res 5664  df-ima 5665  df-iota 6481  df-fun 6527  df-fn 6528  df-f 6529  df-f1 6530  df-fo 6531  df-f1o 6532  df-fv 6533  df-oprab 7404  df-mpo 7405  df-1st 7974  df-2nd 7975
This theorem is referenced by:  fsplitfpar  8101  ex-fpar  30722
  Copyright terms: Public domain W3C validator