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

Theorem dfopab2 7987
Description: A way to define an ordered-pair class abstraction without using existential quantifiers. (Contributed by NM, 18-Aug-2006.) (Revised by Mario Carneiro, 31-Aug-2015.)
Assertion
Ref Expression
dfopab2 {⟨𝑥, 𝑦⟩ ∣ 𝜑} = {𝑧 ∈ (V × V) ∣ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑}
Distinct variable groups:   𝜑,𝑧   𝑥,𝑦,𝑧
Allowed substitution hints:   𝜑(𝑥,𝑦)

Proof of Theorem dfopab2
StepHypRef Expression
1 nfsbc1v 3762 . . . . 5 𝑥[(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑
2119.41 2236 . . . 4 (∃𝑥(∃𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ (∃𝑥𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
3 sbcopeq1a 7984 . . . . . . . 8 (𝑧 = ⟨𝑥, 𝑦⟩ → ([(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑𝜑))
43pm5.32i 574 . . . . . . 7 ((𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ (𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑))
54exbii 1848 . . . . . 6 (∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ ∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑))
6 nfcv 2891 . . . . . . . 8 𝑦(1st𝑧)
7 nfsbc1v 3762 . . . . . . . 8 𝑦[(2nd𝑧) / 𝑦]𝜑
86, 7nfsbcw 3764 . . . . . . 7 𝑦[(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑
9819.41 2236 . . . . . 6 (∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ (∃𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
105, 9bitr3i 277 . . . . 5 (∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑) ↔ (∃𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
1110exbii 1848 . . . 4 (∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑) ↔ ∃𝑥(∃𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
12 elvv 5694 . . . . 5 (𝑧 ∈ (V × V) ↔ ∃𝑥𝑦 𝑧 = ⟨𝑥, 𝑦⟩)
1312anbi1i 624 . . . 4 ((𝑧 ∈ (V × V) ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ (∃𝑥𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
142, 11, 133bitr4i 303 . . 3 (∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑) ↔ (𝑧 ∈ (V × V) ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
1514abbii 2796 . 2 {𝑧 ∣ ∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑)} = {𝑧 ∣ (𝑧 ∈ (V × V) ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑)}
16 df-opab 5155 . 2 {⟨𝑥, 𝑦⟩ ∣ 𝜑} = {𝑧 ∣ ∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑)}
17 df-rab 3395 . 2 {𝑧 ∈ (V × V) ∣ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑} = {𝑧 ∣ (𝑧 ∈ (V × V) ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑)}
1815, 16, 173eqtr4i 2762 1 {⟨𝑥, 𝑦⟩ ∣ 𝜑} = {𝑧 ∈ (V × V) ∣ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑}
Colors of variables: wff setvar class
Syntax hints:  wa 395   = wceq 1540  wex 1779  wcel 2109  {cab 2707  {crab 3394  Vcvv 3436  [wsbc 3742  cop 4583  {copab 5154   × cxp 5617  cfv 6482  1st c1st 7922  2nd c2nd 7923
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-sep 5235  ax-nul 5245  ax-pr 5371  ax-un 7671
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ral 3045  df-rex 3054  df-rab 3395  df-v 3438  df-sbc 3743  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-nul 4285  df-if 4477  df-sn 4578  df-pr 4580  df-op 4584  df-uni 4859  df-br 5093  df-opab 5155  df-mpt 5174  df-id 5514  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-iota 6438  df-fun 6484  df-fv 6490  df-1st 7924  df-2nd 7925
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator