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

Theorem dfopab2 8050
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 3759 . . . . 5 𝑥[(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑
2119.41 2271 . . . 4 (∃𝑥(∃𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ (∃𝑥𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
3 sbcopeq1a 8047 . . . . . . . 8 (𝑧 = ⟨𝑥, 𝑦⟩ → ([(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑𝜑))
43pm5.32i 585 . . . . . . 7 ((𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ (𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑))
54exbii 1881 . . . . . 6 (∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ ∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑))
6 nfcv 2922 . . . . . . . 8 𝑦(1st𝑧)
7 nfsbc1v 3759 . . . . . . . 8 𝑦[(2nd𝑧) / 𝑦]𝜑
86, 7nfsbcw 3761 . . . . . . 7 𝑦[(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑
9819.41 2271 . . . . . 6 (∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ (∃𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
105, 9bitr3i 280 . . . . 5 (∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑) ↔ (∃𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
1110exbii 1881 . . . 4 (∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑) ↔ ∃𝑥(∃𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
12 elvv 5730 . . . . 5 (𝑧 ∈ (V × V) ↔ ∃𝑥𝑦 𝑧 = ⟨𝑥, 𝑦⟩)
1312anbi1i 636 . . . 4 ((𝑧 ∈ (V × V) ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑) ↔ (∃𝑥𝑦 𝑧 = ⟨𝑥, 𝑦⟩ ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
142, 11, 133bitr4i 306 . . 3 (∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑) ↔ (𝑧 ∈ (V × V) ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑))
1514abbii 2827 . 2 {𝑧 ∣ ∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑)} = {𝑧 ∣ (𝑧 ∈ (V × V) ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑)}
16 df-opab 5168 . 2 {⟨𝑥, 𝑦⟩ ∣ 𝜑} = {𝑧 ∣ ∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝜑)}
17 df-rab 3413 . 2 {𝑧 ∈ (V × V) ∣ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑} = {𝑧 ∣ (𝑧 ∈ (V × V) ∧ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑)}
1815, 16, 173eqtr4i 2793 1 {⟨𝑥, 𝑦⟩ ∣ 𝜑} = {𝑧 ∈ (V × V) ∣ [(1st𝑧) / 𝑥][(2nd𝑧) / 𝑦]𝜑}
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wa 401   = wceq 1570  wex 1812  wcel 2145  {cab 2738  {crab 3412  Vcvv 3450  [wsbc 3739  cop 4590  {copab 5167   × cxp 5653  cfv 6533  1st c1st 7985  2nd c2nd 7986
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 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-sep 5251  ax-nul 5263  ax-pr 5398  ax-un 7737
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-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-ral 3077  df-rex 3087  df-rab 3413  df-v 3452  df-sbc 3740  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-nul 4280  df-if 4483  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-br 5104  df-opab 5168  df-mpt 5187  df-id 5550  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-iota 6489  df-fun 6535  df-fv 6541  df-1st 7987  df-2nd 7988
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator