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

Theorem opeliunxp 5727
Description: Membership in a union of Cartesian products. (Contributed by Mario Carneiro, 29-Dec-2014.) (Revised by Mario Carneiro, 1-Jan-2017.)
Assertion
Ref Expression
opeliunxp (⟨𝑥, 𝐶⟩ ∈ 𝑥𝐴 ({𝑥} × 𝐵) ↔ (𝑥𝐴𝐶𝐵))

Proof of Theorem opeliunxp
Dummy variables 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-iun 4957 . . 3 𝑥𝐴 ({𝑥} × 𝐵) = {𝑦 ∣ ∃𝑥𝐴 𝑦 ∈ ({𝑥} × 𝐵)}
21eleq2i 2854 . 2 (⟨𝑥, 𝐶⟩ ∈ 𝑥𝐴 ({𝑥} × 𝐵) ↔ ⟨𝑥, 𝐶⟩ ∈ {𝑦 ∣ ∃𝑥𝐴 𝑦 ∈ ({𝑥} × 𝐵)})
3 opex 5444 . . 3 𝑥, 𝐶⟩ ∈ V
4 df-rex 3089 . . . . 5 (∃𝑥𝐴 𝑦 ∈ ({𝑥} × 𝐵) ↔ ∃𝑥(𝑥𝐴𝑦 ∈ ({𝑥} × 𝐵)))
5 nfv 1943 . . . . . 6 𝑧(𝑥𝐴𝑦 ∈ ({𝑥} × 𝐵))
6 nfs1v 2190 . . . . . . 7 𝑥[𝑧 / 𝑥]𝑥𝐴
7 nfcv 2924 . . . . . . . . 9 𝑥{𝑧}
8 nfcsb1v 3876 . . . . . . . . 9 𝑥𝑧 / 𝑥𝐵
97, 8nfxp 5693 . . . . . . . 8 𝑥({𝑧} × 𝑧 / 𝑥𝐵)
109nfcri 2916 . . . . . . 7 𝑥 𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵)
116, 10nfan 1928 . . . . . 6 𝑥([𝑧 / 𝑥]𝑥𝐴𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵))
12 sbequ12 2286 . . . . . . 7 (𝑥 = 𝑧 → (𝑥𝐴 ↔ [𝑧 / 𝑥]𝑥𝐴))
13 sneq 4598 . . . . . . . . 9 (𝑥 = 𝑧 → {𝑥} = {𝑧})
14 csbeq1a 3866 . . . . . . . . 9 (𝑥 = 𝑧𝐵 = 𝑧 / 𝑥𝐵)
1513, 14xpeq12d 5691 . . . . . . . 8 (𝑥 = 𝑧 → ({𝑥} × 𝐵) = ({𝑧} × 𝑧 / 𝑥𝐵))
1615eleq2d 2848 . . . . . . 7 (𝑥 = 𝑧 → (𝑦 ∈ ({𝑥} × 𝐵) ↔ 𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵)))
1712, 16anbi12d 643 . . . . . 6 (𝑥 = 𝑧 → ((𝑥𝐴𝑦 ∈ ({𝑥} × 𝐵)) ↔ ([𝑧 / 𝑥]𝑥𝐴𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵))))
185, 11, 17cbvexv1 2373 . . . . 5 (∃𝑥(𝑥𝐴𝑦 ∈ ({𝑥} × 𝐵)) ↔ ∃𝑧([𝑧 / 𝑥]𝑥𝐴𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵)))
194, 18bitri 278 . . . 4 (∃𝑥𝐴 𝑦 ∈ ({𝑥} × 𝐵) ↔ ∃𝑧([𝑧 / 𝑥]𝑥𝐴𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵)))
20 eleq1 2850 . . . . . 6 (𝑦 = ⟨𝑥, 𝐶⟩ → (𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵) ↔ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵)))
2120anbi2d 641 . . . . 5 (𝑦 = ⟨𝑥, 𝐶⟩ → (([𝑧 / 𝑥]𝑥𝐴𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵)) ↔ ([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵))))
2221exbidv 1950 . . . 4 (𝑦 = ⟨𝑥, 𝐶⟩ → (∃𝑧([𝑧 / 𝑥]𝑥𝐴𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵)) ↔ ∃𝑧([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵))))
2319, 22bitrid 286 . . 3 (𝑦 = ⟨𝑥, 𝐶⟩ → (∃𝑥𝐴 𝑦 ∈ ({𝑥} × 𝐵) ↔ ∃𝑧([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵))))
243, 23elab 3637 . 2 (⟨𝑥, 𝐶⟩ ∈ {𝑦 ∣ ∃𝑥𝐴 𝑦 ∈ ({𝑥} × 𝐵)} ↔ ∃𝑧([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵)))
25 opelxp 5696 . . . . . 6 (⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵) ↔ (𝑥 ∈ {𝑧} ∧ 𝐶𝑧 / 𝑥𝐵))
2625anbi2i 634 . . . . 5 (([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵)) ↔ ([𝑧 / 𝑥]𝑥𝐴 ∧ (𝑥 ∈ {𝑧} ∧ 𝐶𝑧 / 𝑥𝐵)))
27 an12 657 . . . . 5 (([𝑧 / 𝑥]𝑥𝐴 ∧ (𝑥 ∈ {𝑧} ∧ 𝐶𝑧 / 𝑥𝐵)) ↔ (𝑥 ∈ {𝑧} ∧ ([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵)))
28 velsn 4604 . . . . . . 7 (𝑥 ∈ {𝑧} ↔ 𝑥 = 𝑧)
29 equcom 2047 . . . . . . 7 (𝑥 = 𝑧𝑧 = 𝑥)
3028, 29bitri 278 . . . . . 6 (𝑥 ∈ {𝑧} ↔ 𝑧 = 𝑥)
3130anbi1i 635 . . . . 5 ((𝑥 ∈ {𝑧} ∧ ([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵)) ↔ (𝑧 = 𝑥 ∧ ([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵)))
3226, 27, 313bitri 300 . . . 4 (([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵)) ↔ (𝑧 = 𝑥 ∧ ([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵)))
3332exbii 1877 . . 3 (∃𝑧([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵)) ↔ ∃𝑧(𝑧 = 𝑥 ∧ ([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵)))
34 sbequ12r 2287 . . . . 5 (𝑧 = 𝑥 → ([𝑧 / 𝑥]𝑥𝐴𝑥𝐴))
3514equcoms 2049 . . . . . . 7 (𝑧 = 𝑥𝐵 = 𝑧 / 𝑥𝐵)
3635eqcomd 2768 . . . . . 6 (𝑧 = 𝑥𝑧 / 𝑥𝐵 = 𝐵)
3736eleq2d 2848 . . . . 5 (𝑧 = 𝑥 → (𝐶𝑧 / 𝑥𝐵𝐶𝐵))
3834, 37anbi12d 643 . . . 4 (𝑧 = 𝑥 → (([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵) ↔ (𝑥𝐴𝐶𝐵)))
3938equsexvw 2034 . . 3 (∃𝑧(𝑧 = 𝑥 ∧ ([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵)) ↔ (𝑥𝐴𝐶𝐵))
4033, 39bitri 278 . 2 (∃𝑧([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵)) ↔ (𝑥𝐴𝐶𝐵))
412, 24, 403bitri 300 1 (⟨𝑥, 𝐶⟩ ∈ 𝑥𝐴 ({𝑥} × 𝐵) ↔ (𝑥𝐴𝐶𝐵))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wb 209  wa 400   = wceq 1569  wex 1808  [wsb 2095  wcel 2142  {cab 2740  wrex 3088  csb 3852  {csn 4588  cop 4594   ciun 4955   × cxp 5658
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1824  ax-4 1838  ax-5 1939  ax-6 1996  ax-7 2037  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-sep 5256  ax-pr 5403
This proof depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3an 1104  df-tru 1572  df-fal 1582  df-ex 1809  df-nf 1813  df-sb 2096  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ral 3079  df-rex 3089  df-rab 3416  df-v 3456  df-sbc 3744  df-csb 3853  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-nul 4286  df-if 4487  df-sn 4589  df-pr 4591  df-op 4595  df-iun 4957  df-opab 5173  df-xp 5666
This theorem is used by:  eliunxp  5822  opeliunxp2  5823  opeliunxp2f  8204  gsum2d2lem  20049  gsum2d2  20050  gsumcom2  20051  dprdval  20081  ptbasfi  23749  cnextfun  24232  cnextfvval  24233  cnextf  24234  dvbsss  26072  iunsnima  32974
  Copyright terms: Public domain W3C validator