ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  elxp4 GIF version

Theorem elxp4 5098
Description: Membership in a cross product. This version requires no quantifiers or dummy variables. See also elxp5 5099. (Contributed by NM, 17-Feb-2004.)
Assertion
Ref Expression
elxp4 (𝐴 ∈ (𝐵 × 𝐶) ↔ (𝐴 = ⟨ dom {𝐴}, ran {𝐴}⟩ ∧ ( dom {𝐴} ∈ 𝐵 ran {𝐴} ∈ 𝐶)))

Proof of Theorem elxp4
Dummy variables 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 elex 2741 . 2 (𝐴 ∈ (𝐵 × 𝐶) → 𝐴 ∈ V)
2 elex 2741 . . . 4 ( dom {𝐴} ∈ 𝐵 dom {𝐴} ∈ V)
3 elex 2741 . . . 4 ( ran {𝐴} ∈ 𝐶 ran {𝐴} ∈ V)
42, 3anim12i 336 . . 3 (( dom {𝐴} ∈ 𝐵 ran {𝐴} ∈ 𝐶) → ( dom {𝐴} ∈ V ∧ ran {𝐴} ∈ V))
5 opexg 4213 . . . . 5 (( dom {𝐴} ∈ V ∧ ran {𝐴} ∈ V) → ⟨ dom {𝐴}, ran {𝐴}⟩ ∈ V)
65adantl 275 . . . 4 ((𝐴 = ⟨ dom {𝐴}, ran {𝐴}⟩ ∧ ( dom {𝐴} ∈ V ∧ ran {𝐴} ∈ V)) → ⟨ dom {𝐴}, ran {𝐴}⟩ ∈ V)
7 eleq1 2233 . . . . 5 (𝐴 = ⟨ dom {𝐴}, ran {𝐴}⟩ → (𝐴 ∈ V ↔ ⟨ dom {𝐴}, ran {𝐴}⟩ ∈ V))
87adantr 274 . . . 4 ((𝐴 = ⟨ dom {𝐴}, ran {𝐴}⟩ ∧ ( dom {𝐴} ∈ V ∧ ran {𝐴} ∈ V)) → (𝐴 ∈ V ↔ ⟨ dom {𝐴}, ran {𝐴}⟩ ∈ V))
96, 8mpbird 166 . . 3 ((𝐴 = ⟨ dom {𝐴}, ran {𝐴}⟩ ∧ ( dom {𝐴} ∈ V ∧ ran {𝐴} ∈ V)) → 𝐴 ∈ V)
104, 9sylan2 284 . 2 ((𝐴 = ⟨ dom {𝐴}, ran {𝐴}⟩ ∧ ( dom {𝐴} ∈ 𝐵 ran {𝐴} ∈ 𝐶)) → 𝐴 ∈ V)
11 elxp 4628 . . . 4 (𝐴 ∈ (𝐵 × 𝐶) ↔ ∃𝑥𝑦(𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶)))
1211a1i 9 . . 3 (𝐴 ∈ V → (𝐴 ∈ (𝐵 × 𝐶) ↔ ∃𝑥𝑦(𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶))))
13 sneq 3594 . . . . . . . . . . . . 13 (𝐴 = ⟨𝑥, 𝑦⟩ → {𝐴} = {⟨𝑥, 𝑦⟩})
1413rneqd 4840 . . . . . . . . . . . 12 (𝐴 = ⟨𝑥, 𝑦⟩ → ran {𝐴} = ran {⟨𝑥, 𝑦⟩})
1514unieqd 3807 . . . . . . . . . . 11 (𝐴 = ⟨𝑥, 𝑦⟩ → ran {𝐴} = ran {⟨𝑥, 𝑦⟩})
16 vex 2733 . . . . . . . . . . . 12 𝑥 ∈ V
17 vex 2733 . . . . . . . . . . . 12 𝑦 ∈ V
1816, 17op2nda 5095 . . . . . . . . . . 11 ran {⟨𝑥, 𝑦⟩} = 𝑦
1915, 18eqtr2di 2220 . . . . . . . . . 10 (𝐴 = ⟨𝑥, 𝑦⟩ → 𝑦 = ran {𝐴})
2019pm4.71ri 390 . . . . . . . . 9 (𝐴 = ⟨𝑥, 𝑦⟩ ↔ (𝑦 = ran {𝐴} ∧ 𝐴 = ⟨𝑥, 𝑦⟩))
2120anbi1i 455 . . . . . . . 8 ((𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶)) ↔ ((𝑦 = ran {𝐴} ∧ 𝐴 = ⟨𝑥, 𝑦⟩) ∧ (𝑥𝐵𝑦𝐶)))
22 anass 399 . . . . . . . 8 (((𝑦 = ran {𝐴} ∧ 𝐴 = ⟨𝑥, 𝑦⟩) ∧ (𝑥𝐵𝑦𝐶)) ↔ (𝑦 = ran {𝐴} ∧ (𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶))))
2321, 22bitri 183 . . . . . . 7 ((𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶)) ↔ (𝑦 = ran {𝐴} ∧ (𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶))))
2423exbii 1598 . . . . . 6 (∃𝑦(𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶)) ↔ ∃𝑦(𝑦 = ran {𝐴} ∧ (𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶))))
25 snexg 4170 . . . . . . . . 9 (𝐴 ∈ V → {𝐴} ∈ V)
26 rnexg 4876 . . . . . . . . 9 ({𝐴} ∈ V → ran {𝐴} ∈ V)
2725, 26syl 14 . . . . . . . 8 (𝐴 ∈ V → ran {𝐴} ∈ V)
28 uniexg 4424 . . . . . . . 8 (ran {𝐴} ∈ V → ran {𝐴} ∈ V)
2927, 28syl 14 . . . . . . 7 (𝐴 ∈ V → ran {𝐴} ∈ V)
30 opeq2 3766 . . . . . . . . . 10 (𝑦 = ran {𝐴} → ⟨𝑥, 𝑦⟩ = ⟨𝑥, ran {𝐴}⟩)
3130eqeq2d 2182 . . . . . . . . 9 (𝑦 = ran {𝐴} → (𝐴 = ⟨𝑥, 𝑦⟩ ↔ 𝐴 = ⟨𝑥, ran {𝐴}⟩))
32 eleq1 2233 . . . . . . . . . 10 (𝑦 = ran {𝐴} → (𝑦𝐶 ran {𝐴} ∈ 𝐶))
3332anbi2d 461 . . . . . . . . 9 (𝑦 = ran {𝐴} → ((𝑥𝐵𝑦𝐶) ↔ (𝑥𝐵 ran {𝐴} ∈ 𝐶)))
3431, 33anbi12d 470 . . . . . . . 8 (𝑦 = ran {𝐴} → ((𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶)) ↔ (𝐴 = ⟨𝑥, ran {𝐴}⟩ ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶))))
3534ceqsexgv 2859 . . . . . . 7 ( ran {𝐴} ∈ V → (∃𝑦(𝑦 = ran {𝐴} ∧ (𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶))) ↔ (𝐴 = ⟨𝑥, ran {𝐴}⟩ ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶))))
3629, 35syl 14 . . . . . 6 (𝐴 ∈ V → (∃𝑦(𝑦 = ran {𝐴} ∧ (𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶))) ↔ (𝐴 = ⟨𝑥, ran {𝐴}⟩ ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶))))
3724, 36syl5bb 191 . . . . 5 (𝐴 ∈ V → (∃𝑦(𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶)) ↔ (𝐴 = ⟨𝑥, ran {𝐴}⟩ ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶))))
38 sneq 3594 . . . . . . . . . . . 12 (𝐴 = ⟨𝑥, ran {𝐴}⟩ → {𝐴} = {⟨𝑥, ran {𝐴}⟩})
3938dmeqd 4813 . . . . . . . . . . 11 (𝐴 = ⟨𝑥, ran {𝐴}⟩ → dom {𝐴} = dom {⟨𝑥, ran {𝐴}⟩})
4039unieqd 3807 . . . . . . . . . 10 (𝐴 = ⟨𝑥, ran {𝐴}⟩ → dom {𝐴} = dom {⟨𝑥, ran {𝐴}⟩})
4140adantl 275 . . . . . . . . 9 ((𝐴 ∈ V ∧ 𝐴 = ⟨𝑥, ran {𝐴}⟩) → dom {𝐴} = dom {⟨𝑥, ran {𝐴}⟩})
42 dmsnopg 5082 . . . . . . . . . . . . 13 ( ran {𝐴} ∈ V → dom {⟨𝑥, ran {𝐴}⟩} = {𝑥})
4329, 42syl 14 . . . . . . . . . . . 12 (𝐴 ∈ V → dom {⟨𝑥, ran {𝐴}⟩} = {𝑥})
4443unieqd 3807 . . . . . . . . . . 11 (𝐴 ∈ V → dom {⟨𝑥, ran {𝐴}⟩} = {𝑥})
4516unisn 3812 . . . . . . . . . . 11 {𝑥} = 𝑥
4644, 45eqtrdi 2219 . . . . . . . . . 10 (𝐴 ∈ V → dom {⟨𝑥, ran {𝐴}⟩} = 𝑥)
4746adantr 274 . . . . . . . . 9 ((𝐴 ∈ V ∧ 𝐴 = ⟨𝑥, ran {𝐴}⟩) → dom {⟨𝑥, ran {𝐴}⟩} = 𝑥)
4841, 47eqtr2d 2204 . . . . . . . 8 ((𝐴 ∈ V ∧ 𝐴 = ⟨𝑥, ran {𝐴}⟩) → 𝑥 = dom {𝐴})
4948ex 114 . . . . . . 7 (𝐴 ∈ V → (𝐴 = ⟨𝑥, ran {𝐴}⟩ → 𝑥 = dom {𝐴}))
5049pm4.71rd 392 . . . . . 6 (𝐴 ∈ V → (𝐴 = ⟨𝑥, ran {𝐴}⟩ ↔ (𝑥 = dom {𝐴} ∧ 𝐴 = ⟨𝑥, ran {𝐴}⟩)))
5150anbi1d 462 . . . . 5 (𝐴 ∈ V → ((𝐴 = ⟨𝑥, ran {𝐴}⟩ ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶)) ↔ ((𝑥 = dom {𝐴} ∧ 𝐴 = ⟨𝑥, ran {𝐴}⟩) ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶))))
52 anass 399 . . . . . 6 (((𝑥 = dom {𝐴} ∧ 𝐴 = ⟨𝑥, ran {𝐴}⟩) ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶)) ↔ (𝑥 = dom {𝐴} ∧ (𝐴 = ⟨𝑥, ran {𝐴}⟩ ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶))))
5352a1i 9 . . . . 5 (𝐴 ∈ V → (((𝑥 = dom {𝐴} ∧ 𝐴 = ⟨𝑥, ran {𝐴}⟩) ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶)) ↔ (𝑥 = dom {𝐴} ∧ (𝐴 = ⟨𝑥, ran {𝐴}⟩ ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶)))))
5437, 51, 533bitrd 213 . . . 4 (𝐴 ∈ V → (∃𝑦(𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶)) ↔ (𝑥 = dom {𝐴} ∧ (𝐴 = ⟨𝑥, ran {𝐴}⟩ ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶)))))
5554exbidv 1818 . . 3 (𝐴 ∈ V → (∃𝑥𝑦(𝐴 = ⟨𝑥, 𝑦⟩ ∧ (𝑥𝐵𝑦𝐶)) ↔ ∃𝑥(𝑥 = dom {𝐴} ∧ (𝐴 = ⟨𝑥, ran {𝐴}⟩ ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶)))))
56 dmexg 4875 . . . . . 6 ({𝐴} ∈ V → dom {𝐴} ∈ V)
5725, 56syl 14 . . . . 5 (𝐴 ∈ V → dom {𝐴} ∈ V)
58 uniexg 4424 . . . . 5 (dom {𝐴} ∈ V → dom {𝐴} ∈ V)
5957, 58syl 14 . . . 4 (𝐴 ∈ V → dom {𝐴} ∈ V)
60 opeq1 3765 . . . . . . 7 (𝑥 = dom {𝐴} → ⟨𝑥, ran {𝐴}⟩ = ⟨ dom {𝐴}, ran {𝐴}⟩)
6160eqeq2d 2182 . . . . . 6 (𝑥 = dom {𝐴} → (𝐴 = ⟨𝑥, ran {𝐴}⟩ ↔ 𝐴 = ⟨ dom {𝐴}, ran {𝐴}⟩))
62 eleq1 2233 . . . . . . 7 (𝑥 = dom {𝐴} → (𝑥𝐵 dom {𝐴} ∈ 𝐵))
6362anbi1d 462 . . . . . 6 (𝑥 = dom {𝐴} → ((𝑥𝐵 ran {𝐴} ∈ 𝐶) ↔ ( dom {𝐴} ∈ 𝐵 ran {𝐴} ∈ 𝐶)))
6461, 63anbi12d 470 . . . . 5 (𝑥 = dom {𝐴} → ((𝐴 = ⟨𝑥, ran {𝐴}⟩ ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶)) ↔ (𝐴 = ⟨ dom {𝐴}, ran {𝐴}⟩ ∧ ( dom {𝐴} ∈ 𝐵 ran {𝐴} ∈ 𝐶))))
6564ceqsexgv 2859 . . . 4 ( dom {𝐴} ∈ V → (∃𝑥(𝑥 = dom {𝐴} ∧ (𝐴 = ⟨𝑥, ran {𝐴}⟩ ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶))) ↔ (𝐴 = ⟨ dom {𝐴}, ran {𝐴}⟩ ∧ ( dom {𝐴} ∈ 𝐵 ran {𝐴} ∈ 𝐶))))
6659, 65syl 14 . . 3 (𝐴 ∈ V → (∃𝑥(𝑥 = dom {𝐴} ∧ (𝐴 = ⟨𝑥, ran {𝐴}⟩ ∧ (𝑥𝐵 ran {𝐴} ∈ 𝐶))) ↔ (𝐴 = ⟨ dom {𝐴}, ran {𝐴}⟩ ∧ ( dom {𝐴} ∈ 𝐵 ran {𝐴} ∈ 𝐶))))
6712, 55, 663bitrd 213 . 2 (𝐴 ∈ V → (𝐴 ∈ (𝐵 × 𝐶) ↔ (𝐴 = ⟨ dom {𝐴}, ran {𝐴}⟩ ∧ ( dom {𝐴} ∈ 𝐵 ran {𝐴} ∈ 𝐶))))
681, 10, 67pm5.21nii 699 1 (𝐴 ∈ (𝐵 × 𝐶) ↔ (𝐴 = ⟨ dom {𝐴}, ran {𝐴}⟩ ∧ ( dom {𝐴} ∈ 𝐵 ran {𝐴} ∈ 𝐶)))
Colors of variables: wff set class
Syntax hints:  wa 103  wb 104   = wceq 1348  wex 1485  wcel 2141  Vcvv 2730  {csn 3583  cop 3586   cuni 3796   × cxp 4609  dom cdm 4611  ran crn 4612
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-io 704  ax-5 1440  ax-7 1441  ax-gen 1442  ax-ie1 1486  ax-ie2 1487  ax-8 1497  ax-10 1498  ax-11 1499  ax-i12 1500  ax-bndl 1502  ax-4 1503  ax-17 1519  ax-i9 1523  ax-ial 1527  ax-i5r 1528  ax-13 2143  ax-14 2144  ax-ext 2152  ax-sep 4107  ax-pow 4160  ax-pr 4194  ax-un 4418
This theorem depends on definitions:  df-bi 116  df-3an 975  df-tru 1351  df-nf 1454  df-sb 1756  df-eu 2022  df-mo 2023  df-clab 2157  df-cleq 2163  df-clel 2166  df-nfc 2301  df-ral 2453  df-rex 2454  df-v 2732  df-un 3125  df-in 3127  df-ss 3134  df-pw 3568  df-sn 3589  df-pr 3590  df-op 3592  df-uni 3797  df-br 3990  df-opab 4051  df-xp 4617  df-rel 4618  df-cnv 4619  df-dm 4621  df-rn 4622
This theorem is referenced by:  elxp6  6148  xpdom2  6809
  Copyright terms: Public domain W3C validator