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

Theorem dfid3 5186
Description: A stronger version of df-id 5185 that does not require 𝑥 and 𝑦 to be disjoint. This is not the "official" definition since our definition soundness check without this requirement would be much more complex. The proof can be instructive in showing how disjoint variable requirements may be eliminated, a task that is not necessarily obvious. (Contributed by NM, 5-Feb-2008.) (Revised by Mario Carneiro, 18-Nov-2016.) Use directly the definition df-id 5185 when sufficient, since the derivation of dfid3 5186 is nontrivial and uses auxiliary axioms ax-10 2183 to ax-13 2352. (New usage is discouraged.)
Assertion
Ref Expression
dfid3 I = {⟨𝑥, 𝑦⟩ ∣ 𝑥 = 𝑦}

Proof of Theorem dfid3
Dummy variables 𝑧 𝑤 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-id 5185 . 2 I = {⟨𝑥, 𝑧⟩ ∣ 𝑥 = 𝑧}
2 ancom 452 . . . . . . . . . . 11 ((𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧) ↔ (𝑥 = 𝑧𝑤 = ⟨𝑥, 𝑧⟩))
3 equcom 2115 . . . . . . . . . . . 12 (𝑥 = 𝑧𝑧 = 𝑥)
43anbi1i 617 . . . . . . . . . . 11 ((𝑥 = 𝑧𝑤 = ⟨𝑥, 𝑧⟩) ↔ (𝑧 = 𝑥𝑤 = ⟨𝑥, 𝑧⟩))
52, 4bitri 266 . . . . . . . . . 10 ((𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧) ↔ (𝑧 = 𝑥𝑤 = ⟨𝑥, 𝑧⟩))
65exbii 1943 . . . . . . . . 9 (∃𝑧(𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧) ↔ ∃𝑧(𝑧 = 𝑥𝑤 = ⟨𝑥, 𝑧⟩))
7 opeq2 4560 . . . . . . . . . . 11 (𝑧 = 𝑥 → ⟨𝑥, 𝑧⟩ = ⟨𝑥, 𝑥⟩)
87eqeq2d 2775 . . . . . . . . . 10 (𝑧 = 𝑥 → (𝑤 = ⟨𝑥, 𝑧⟩ ↔ 𝑤 = ⟨𝑥, 𝑥⟩))
98equsexvw 2102 . . . . . . . . 9 (∃𝑧(𝑧 = 𝑥𝑤 = ⟨𝑥, 𝑧⟩) ↔ 𝑤 = ⟨𝑥, 𝑥⟩)
10 equid 2109 . . . . . . . . . 10 𝑥 = 𝑥
1110biantru 525 . . . . . . . . 9 (𝑤 = ⟨𝑥, 𝑥⟩ ↔ (𝑤 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥))
126, 9, 113bitri 288 . . . . . . . 8 (∃𝑧(𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧) ↔ (𝑤 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥))
1312exbii 1943 . . . . . . 7 (∃𝑥𝑧(𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧) ↔ ∃𝑥(𝑤 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥))
14 nfe1 2192 . . . . . . . 8 𝑥𝑥(𝑤 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥)
151419.9 2237 . . . . . . 7 (∃𝑥𝑥(𝑤 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥) ↔ ∃𝑥(𝑤 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥))
1613, 15bitr4i 269 . . . . . 6 (∃𝑥𝑧(𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧) ↔ ∃𝑥𝑥(𝑤 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥))
17 opeq2 4560 . . . . . . . . . . 11 (𝑥 = 𝑦 → ⟨𝑥, 𝑥⟩ = ⟨𝑥, 𝑦⟩)
1817eqeq2d 2775 . . . . . . . . . 10 (𝑥 = 𝑦 → (𝑤 = ⟨𝑥, 𝑥⟩ ↔ 𝑤 = ⟨𝑥, 𝑦⟩))
19 equequ2 2123 . . . . . . . . . 10 (𝑥 = 𝑦 → (𝑥 = 𝑥𝑥 = 𝑦))
2018, 19anbi12d 624 . . . . . . . . 9 (𝑥 = 𝑦 → ((𝑤 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥) ↔ (𝑤 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦)))
2120sps 2217 . . . . . . . 8 (∀𝑥 𝑥 = 𝑦 → ((𝑤 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥) ↔ (𝑤 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦)))
2221drex1 2421 . . . . . . 7 (∀𝑥 𝑥 = 𝑦 → (∃𝑥(𝑤 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥) ↔ ∃𝑦(𝑤 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦)))
2322drex2 2422 . . . . . 6 (∀𝑥 𝑥 = 𝑦 → (∃𝑥𝑥(𝑤 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥) ↔ ∃𝑥𝑦(𝑤 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦)))
2416, 23syl5bb 274 . . . . 5 (∀𝑥 𝑥 = 𝑦 → (∃𝑥𝑧(𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧) ↔ ∃𝑥𝑦(𝑤 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦)))
25 nfnae 2414 . . . . . 6 𝑥 ¬ ∀𝑥 𝑥 = 𝑦
26 nfnae 2414 . . . . . . 7 𝑦 ¬ ∀𝑥 𝑥 = 𝑦
27 nfcvd 2908 . . . . . . . . 9 (¬ ∀𝑥 𝑥 = 𝑦𝑦𝑤)
28 nfcvf2 2932 . . . . . . . . . 10 (¬ ∀𝑥 𝑥 = 𝑦𝑦𝑥)
29 nfcvd 2908 . . . . . . . . . 10 (¬ ∀𝑥 𝑥 = 𝑦𝑦𝑧)
3028, 29nfopd 4576 . . . . . . . . 9 (¬ ∀𝑥 𝑥 = 𝑦𝑦𝑥, 𝑧⟩)
3127, 30nfeqd 2915 . . . . . . . 8 (¬ ∀𝑥 𝑥 = 𝑦 → Ⅎ𝑦 𝑤 = ⟨𝑥, 𝑧⟩)
3228, 29nfeqd 2915 . . . . . . . 8 (¬ ∀𝑥 𝑥 = 𝑦 → Ⅎ𝑦 𝑥 = 𝑧)
3331, 32nfand 1996 . . . . . . 7 (¬ ∀𝑥 𝑥 = 𝑦 → Ⅎ𝑦(𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧))
34 opeq2 4560 . . . . . . . . . 10 (𝑧 = 𝑦 → ⟨𝑥, 𝑧⟩ = ⟨𝑥, 𝑦⟩)
3534eqeq2d 2775 . . . . . . . . 9 (𝑧 = 𝑦 → (𝑤 = ⟨𝑥, 𝑧⟩ ↔ 𝑤 = ⟨𝑥, 𝑦⟩))
36 equequ2 2123 . . . . . . . . 9 (𝑧 = 𝑦 → (𝑥 = 𝑧𝑥 = 𝑦))
3735, 36anbi12d 624 . . . . . . . 8 (𝑧 = 𝑦 → ((𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧) ↔ (𝑤 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦)))
3837a1i 11 . . . . . . 7 (¬ ∀𝑥 𝑥 = 𝑦 → (𝑧 = 𝑦 → ((𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧) ↔ (𝑤 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦))))
3926, 33, 38cbvexd 2381 . . . . . 6 (¬ ∀𝑥 𝑥 = 𝑦 → (∃𝑧(𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧) ↔ ∃𝑦(𝑤 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦)))
4025, 39exbid 2256 . . . . 5 (¬ ∀𝑥 𝑥 = 𝑦 → (∃𝑥𝑧(𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧) ↔ ∃𝑥𝑦(𝑤 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦)))
4124, 40pm2.61i 176 . . . 4 (∃𝑥𝑧(𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧) ↔ ∃𝑥𝑦(𝑤 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦))
4241abbii 2882 . . 3 {𝑤 ∣ ∃𝑥𝑧(𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧)} = {𝑤 ∣ ∃𝑥𝑦(𝑤 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦)}
43 df-opab 4872 . . 3 {⟨𝑥, 𝑧⟩ ∣ 𝑥 = 𝑧} = {𝑤 ∣ ∃𝑥𝑧(𝑤 = ⟨𝑥, 𝑧⟩ ∧ 𝑥 = 𝑧)}
44 df-opab 4872 . . 3 {⟨𝑥, 𝑦⟩ ∣ 𝑥 = 𝑦} = {𝑤 ∣ ∃𝑥𝑦(𝑤 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦)}
4542, 43, 443eqtr4i 2797 . 2 {⟨𝑥, 𝑧⟩ ∣ 𝑥 = 𝑧} = {⟨𝑥, 𝑦⟩ ∣ 𝑥 = 𝑦}
461, 45eqtri 2787 1 I = {⟨𝑥, 𝑦⟩ ∣ 𝑥 = 𝑦}
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 197  wa 384  wal 1650   = wceq 1652  wex 1874  {cab 2751  cop 4340  {copab 4871   I cid 5184
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1890  ax-4 1904  ax-5 2005  ax-6 2070  ax-7 2105  ax-9 2164  ax-10 2183  ax-11 2198  ax-12 2211  ax-13 2352  ax-ext 2743
This theorem depends on definitions:  df-bi 198  df-an 385  df-or 874  df-3an 1109  df-tru 1656  df-ex 1875  df-nf 1879  df-sb 2063  df-clab 2752  df-cleq 2758  df-clel 2761  df-nfc 2896  df-rab 3064  df-v 3352  df-dif 3735  df-un 3737  df-in 3739  df-ss 3746  df-nul 4080  df-if 4244  df-sn 4335  df-pr 4337  df-op 4341  df-opab 4872  df-id 5185
This theorem is referenced by:  dfid2  5188
  Copyright terms: Public domain W3C validator