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

Theorem dfopab2 7167
 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 3437 . . . . 5 𝑥[(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑
2119.41 2101 . . . 4 (∃𝑥(∃𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ (∃𝑥𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
3 sbcopeq1a 7165 . . . . . . . 8 (𝑧 = ⟨𝑥, 𝑦⟩ → ([(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑𝜑))
43pm5.32i 668 . . . . . . 7 ((𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ (𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑))
54exbii 1771 . . . . . 6 (∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ ∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑))
6 nfcv 2761 . . . . . . . 8 𝑦(1st𝑧)
7 nfsbc1v 3437 . . . . . . . 8 𝑦[(2nd𝑧) / 𝑦]𝜑
86, 7nfsbc 3439 . . . . . . 7 𝑦[(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑
9819.41 2101 . . . . . 6 (∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ (∃𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
105, 9bitr3i 266 . . . . 5 (∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑) ↔ (∃𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
1110exbii 1771 . . . 4 (∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑) ↔ ∃𝑥(∃𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
12 elvv 5138 . . . . 5 (𝑧 ∈ (V × V) ↔ ∃𝑥𝑦 𝑧 = ⟨𝑥, 𝑦⟩)
1312anbi1i 730 . . . 4 ((𝑧 ∈ (V × V) ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ (∃𝑥𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
142, 11, 133bitr4i 292 . . 3 (∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑) ↔ (𝑧 ∈ (V × V) ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
1514abbii 2736 . 2 {𝑧 ∣ ∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑)} = {𝑧 ∣ (𝑧 ∈ (V × V) ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑)}
16 df-opab 4674 . 2 {⟨𝑥, 𝑦⟩ ∣ 𝜑} = {𝑧 ∣ ∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑)}
17 df-rab 2916 . 2 {𝑧 ∈ (V × V) ∣ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑} = {𝑧 ∣ (𝑧 ∈ (V × V) ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑)}
1815, 16, 173eqtr4i 2653 1 {⟨𝑥, 𝑦⟩ ∣ 𝜑} = {𝑧 ∈ (V × V) ∣ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑}
 Colors of variables: wff setvar class Syntax hints:   ∧ wa 384   = wceq 1480  ∃wex 1701   ∈ wcel 1987  {cab 2607  {crab 2911  Vcvv 3186  [wsbc 3417  ⟨cop 4154  {copab 4672   × cxp 5072  ‘cfv 5847  1st c1st 7111  2nd c2nd 7112 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1719  ax-4 1734  ax-5 1836  ax-6 1885  ax-7 1932  ax-8 1989  ax-9 1996  ax-10 2016  ax-11 2031  ax-12 2044  ax-13 2245  ax-ext 2601  ax-sep 4741  ax-nul 4749  ax-pow 4803  ax-pr 4867  ax-un 6902 This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3an 1038  df-tru 1483  df-ex 1702  df-nf 1707  df-sb 1878  df-eu 2473  df-mo 2474  df-clab 2608  df-cleq 2614  df-clel 2617  df-nfc 2750  df-ral 2912  df-rex 2913  df-rab 2916  df-v 3188  df-sbc 3418  df-dif 3558  df-un 3560  df-in 3562  df-ss 3569  df-nul 3892  df-if 4059  df-sn 4149  df-pr 4151  df-op 4155  df-uni 4403  df-br 4614  df-opab 4674  df-mpt 4675  df-id 4989  df-xp 5080  df-rel 5081  df-cnv 5082  df-co 5083  df-dm 5084  df-rn 5085  df-iota 5810  df-fun 5849  df-fv 5855  df-1st 7113  df-2nd 7114 This theorem is referenced by: (None)
 Copyright terms: Public domain W3C validator