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

Theorem dfid2 5482
Description: Alternate definition of the identity relation. Instance of dfid3 5483 not requiring auxiliary axioms. (Contributed by NM, 15-Mar-2007.) Reduce axiom usage. (Revised by Gino Giotto, 4-Nov-2024.) (Proof shortened by BJ, 5-Nov-2024.)

Use df-id 5480 instead to make the semantics of the constructor df-opab 5133 clearer. (New usage is discouraged.)

Assertion
Ref Expression
dfid2 I = {⟨𝑥, 𝑥⟩ ∣ 𝑥 = 𝑥}

Proof of Theorem dfid2
Dummy variables 𝑦 𝑧 𝑢 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-id 5480 . 2 I = {⟨𝑥, 𝑦⟩ ∣ 𝑥 = 𝑦}
2 equcomi 2021 . . . . . . . . . . . 12 (𝑥 = 𝑦𝑦 = 𝑥)
32opeq2d 4808 . . . . . . . . . . 11 (𝑥 = 𝑦 → ⟨𝑥, 𝑦⟩ = ⟨𝑥, 𝑥⟩)
43eqeq2d 2749 . . . . . . . . . 10 (𝑥 = 𝑦 → (𝑧 = ⟨𝑥, 𝑦⟩ ↔ 𝑧 = ⟨𝑥, 𝑥⟩))
54pm5.32ri 575 . . . . . . . . 9 ((𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦) ↔ (𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑦))
65exbii 1851 . . . . . . . 8 (∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦) ↔ ∃𝑦(𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑦))
7 ax6evr 2019 . . . . . . . . 9 𝑦 𝑥 = 𝑦
8 19.42v 1958 . . . . . . . . 9 (∃𝑦(𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑦) ↔ (𝑧 = ⟨𝑥, 𝑥⟩ ∧ ∃𝑦 𝑥 = 𝑦))
97, 8mpbiran2 706 . . . . . . . 8 (∃𝑦(𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑦) ↔ 𝑧 = ⟨𝑥, 𝑥⟩)
106, 9bitri 274 . . . . . . 7 (∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦) ↔ 𝑧 = ⟨𝑥, 𝑥⟩)
11 eqidd 2739 . . . . . . . 8 (𝑧 = ⟨𝑥, 𝑥⟩ → 𝑥 = 𝑥)
1211pm4.71i 559 . . . . . . 7 (𝑧 = ⟨𝑥, 𝑥⟩ ↔ (𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥))
1310, 12bitri 274 . . . . . 6 (∃𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦) ↔ (𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥))
1413exbii 1851 . . . . 5 (∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦) ↔ ∃𝑥(𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥))
15 id 22 . . . . . . . . 9 (𝑥 = 𝑢𝑥 = 𝑢)
1615, 15opeq12d 4809 . . . . . . . 8 (𝑥 = 𝑢 → ⟨𝑥, 𝑥⟩ = ⟨𝑢, 𝑢⟩)
1716eqeq2d 2749 . . . . . . 7 (𝑥 = 𝑢 → (𝑧 = ⟨𝑥, 𝑥⟩ ↔ 𝑧 = ⟨𝑢, 𝑢⟩))
1815, 15eqeq12d 2754 . . . . . . 7 (𝑥 = 𝑢 → (𝑥 = 𝑥𝑢 = 𝑢))
1917, 18anbi12d 630 . . . . . 6 (𝑥 = 𝑢 → ((𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥) ↔ (𝑧 = ⟨𝑢, 𝑢⟩ ∧ 𝑢 = 𝑢)))
2019exexw 2055 . . . . 5 (∃𝑥(𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥) ↔ ∃𝑥𝑥(𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥))
2114, 20bitri 274 . . . 4 (∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦) ↔ ∃𝑥𝑥(𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥))
2221abbii 2809 . . 3 {𝑧 ∣ ∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦)} = {𝑧 ∣ ∃𝑥𝑥(𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥)}
23 df-opab 5133 . . 3 {⟨𝑥, 𝑦⟩ ∣ 𝑥 = 𝑦} = {𝑧 ∣ ∃𝑥𝑦(𝑧 = ⟨𝑥, 𝑦⟩ ∧ 𝑥 = 𝑦)}
24 df-opab 5133 . . 3 {⟨𝑥, 𝑥⟩ ∣ 𝑥 = 𝑥} = {𝑧 ∣ ∃𝑥𝑥(𝑧 = ⟨𝑥, 𝑥⟩ ∧ 𝑥 = 𝑥)}
2522, 23, 243eqtr4i 2776 . 2 {⟨𝑥, 𝑦⟩ ∣ 𝑥 = 𝑦} = {⟨𝑥, 𝑥⟩ ∣ 𝑥 = 𝑥}
261, 25eqtri 2766 1 I = {⟨𝑥, 𝑥⟩ ∣ 𝑥 = 𝑥}
Colors of variables: wff setvar class
Syntax hints:  wa 395   = wceq 1539  wex 1783  {cab 2715  cop 4564  {copab 5132   I cid 5479
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1799  ax-4 1813  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2110  ax-9 2118  ax-ext 2709
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 844  df-3an 1087  df-tru 1542  df-fal 1552  df-ex 1784  df-sb 2069  df-clab 2716  df-cleq 2730  df-clel 2817  df-rab 3072  df-v 3424  df-dif 3886  df-un 3888  df-nul 4254  df-if 4457  df-sn 4559  df-pr 4561  df-op 4565  df-opab 5133  df-id 5480
This theorem is referenced by:  fsplitOLD  7929
  Copyright terms: Public domain W3C validator