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

Theorem opeliunxp 5733
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 4963 . . 3 𝑥𝐴 ({𝑥} × 𝐵) = {𝑦 ∣ ∃𝑥𝐴 𝑦 ∈ ({𝑥} × 𝐵)}
21eleq2i 2858 . 2 (⟨𝑥, 𝐶⟩ ∈ 𝑥𝐴 ({𝑥} × 𝐵) ↔ ⟨𝑥, 𝐶⟩ ∈ {𝑦 ∣ ∃𝑥𝐴 𝑦 ∈ ({𝑥} × 𝐵)})
3 opex 5450 . . 3 𝑥, 𝐶⟩ ∈ V
4 df-rex 3093 . . . . 5 (∃𝑥𝐴 𝑦 ∈ ({𝑥} × 𝐵) ↔ ∃𝑥(𝑥𝐴𝑦 ∈ ({𝑥} × 𝐵)))
5 nfv 1947 . . . . . 6 𝑧(𝑥𝐴𝑦 ∈ ({𝑥} × 𝐵))
6 nfs1v 2194 . . . . . . 7 𝑥[𝑧 / 𝑥]𝑥𝐴
7 nfcv 2928 . . . . . . . . 9 𝑥{𝑧}
8 nfcsb1v 3880 . . . . . . . . 9 𝑥𝑧 / 𝑥𝐵
97, 8nfxp 5699 . . . . . . . 8 𝑥({𝑧} × 𝑧 / 𝑥𝐵)
109nfcri 2920 . . . . . . 7 𝑥 𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵)
116, 10nfan 1932 . . . . . 6 𝑥([𝑧 / 𝑥]𝑥𝐴𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵))
12 sbequ12 2290 . . . . . . 7 (𝑥 = 𝑧 → (𝑥𝐴 ↔ [𝑧 / 𝑥]𝑥𝐴))
13 sneq 4604 . . . . . . . . 9 (𝑥 = 𝑧 → {𝑥} = {𝑧})
14 csbeq1a 3870 . . . . . . . . 9 (𝑥 = 𝑧𝐵 = 𝑧 / 𝑥𝐵)
1513, 14xpeq12d 5697 . . . . . . . 8 (𝑥 = 𝑧 → ({𝑥} × 𝐵) = ({𝑧} × 𝑧 / 𝑥𝐵))
1615eleq2d 2852 . . . . . . 7 (𝑥 = 𝑧 → (𝑦 ∈ ({𝑥} × 𝐵) ↔ 𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵)))
1712, 16anbi12d 644 . . . . . 6 (𝑥 = 𝑧 → ((𝑥𝐴𝑦 ∈ ({𝑥} × 𝐵)) ↔ ([𝑧 / 𝑥]𝑥𝐴𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵))))
185, 11, 17cbvexv1 2377 . . . . 5 (∃𝑥(𝑥𝐴𝑦 ∈ ({𝑥} × 𝐵)) ↔ ∃𝑧([𝑧 / 𝑥]𝑥𝐴𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵)))
194, 18bitri 278 . . . 4 (∃𝑥𝐴 𝑦 ∈ ({𝑥} × 𝐵) ↔ ∃𝑧([𝑧 / 𝑥]𝑥𝐴𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵)))
20 eleq1 2854 . . . . . 6 (𝑦 = ⟨𝑥, 𝐶⟩ → (𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵) ↔ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵)))
2120anbi2d 642 . . . . 5 (𝑦 = ⟨𝑥, 𝐶⟩ → (([𝑧 / 𝑥]𝑥𝐴𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵)) ↔ ([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵))))
2221exbidv 1954 . . . 4 (𝑦 = ⟨𝑥, 𝐶⟩ → (∃𝑧([𝑧 / 𝑥]𝑥𝐴𝑦 ∈ ({𝑧} × 𝑧 / 𝑥𝐵)) ↔ ∃𝑧([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵))))
2319, 22bitrid 286 . . 3 (𝑦 = ⟨𝑥, 𝐶⟩ → (∃𝑥𝐴 𝑦 ∈ ({𝑥} × 𝐵) ↔ ∃𝑧([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵))))
243, 23elab 3641 . 2 (⟨𝑥, 𝐶⟩ ∈ {𝑦 ∣ ∃𝑥𝐴 𝑦 ∈ ({𝑥} × 𝐵)} ↔ ∃𝑧([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵)))
25 opelxp 5702 . . . . . 6 (⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵) ↔ (𝑥 ∈ {𝑧} ∧ 𝐶𝑧 / 𝑥𝐵))
2625anbi2i 635 . . . . 5 (([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵)) ↔ ([𝑧 / 𝑥]𝑥𝐴 ∧ (𝑥 ∈ {𝑧} ∧ 𝐶𝑧 / 𝑥𝐵)))
27 an12 658 . . . . 5 (([𝑧 / 𝑥]𝑥𝐴 ∧ (𝑥 ∈ {𝑧} ∧ 𝐶𝑧 / 𝑥𝐵)) ↔ (𝑥 ∈ {𝑧} ∧ ([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵)))
28 velsn 4610 . . . . . . 7 (𝑥 ∈ {𝑧} ↔ 𝑥 = 𝑧)
29 equcom 2051 . . . . . . 7 (𝑥 = 𝑧𝑧 = 𝑥)
3028, 29bitri 278 . . . . . 6 (𝑥 ∈ {𝑧} ↔ 𝑧 = 𝑥)
3130anbi1i 636 . . . . 5 ((𝑥 ∈ {𝑧} ∧ ([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵)) ↔ (𝑧 = 𝑥 ∧ ([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵)))
3226, 27, 313bitri 300 . . . 4 (([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵)) ↔ (𝑧 = 𝑥 ∧ ([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵)))
3332exbii 1881 . . 3 (∃𝑧([𝑧 / 𝑥]𝑥𝐴 ∧ ⟨𝑥, 𝐶⟩ ∈ ({𝑧} × 𝑧 / 𝑥𝐵)) ↔ ∃𝑧(𝑧 = 𝑥 ∧ ([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵)))
34 sbequ12r 2291 . . . . 5 (𝑧 = 𝑥 → ([𝑧 / 𝑥]𝑥𝐴𝑥𝐴))
3514equcoms 2053 . . . . . . 7 (𝑧 = 𝑥𝐵 = 𝑧 / 𝑥𝐵)
3635eqcomd 2772 . . . . . 6 (𝑧 = 𝑥𝑧 / 𝑥𝐵 = 𝐵)
3736eleq2d 2852 . . . . 5 (𝑧 = 𝑥 → (𝐶𝑧 / 𝑥𝐵𝐶𝐵))
3834, 37anbi12d 644 . . . 4 (𝑧 = 𝑥 → (([𝑧 / 𝑥]𝑥𝐴𝐶𝑧 / 𝑥𝐵) ↔ (𝑥𝐴𝐶𝐵)))
3938equsexvw 2038 . . 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 401   = wceq 1570  wex 1812  [wsb 2099  wcel 2146  {cab 2744  wrex 3092  csb 3856  {csn 4594  cop 4600   ciun 4961   × cxp 5664
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2738  ax-sep 5262  ax-pr 5409
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-clab 2745  df-cleq 2758  df-clel 2841  df-nfc 2915  df-ral 3083  df-rex 3093  df-rab 3420  df-v 3460  df-sbc 3748  df-csb 3857  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-nul 4290  df-if 4493  df-sn 4595  df-pr 4597  df-op 4601  df-iun 4963  df-opab 5179  df-xp 5672
This theorem is used by:  eliunxp  5828  opeliunxp2  5829  opeliunxp2f  8215  gsum2d2lem  20074  gsum2d2  20075  gsumcom2  20076  dprdval  20106  ptbasfi  23775  cnextfun  24258  cnextfvval  24259  cnextf  24260  dvbsss  26098  iunsnima  33000
  Copyright terms: Public domain W3C validator