Metamath Proof Explorer


Theorem dfid2

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

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

Ref Expression
Assertion dfid2 ⊢ I = x x | x = x

Proof

Step Hyp Ref Expression
1 df-id ⊢ I = x y | x = y
2 equcomi ⊢ x = y → y = x
3 2 opeq2d ⊢ x = y → x y = x x
4 3 eqeq2d ⊢ x = y → z = x y ↔ z = x x
5 4 pm5.32ri ⊢ z = x y ∧ x = y ↔ z = x x ∧ x = y
6 5 exbii ⊢ ∃ y z = x y ∧ x = y ↔ ∃ y z = x x ∧ x = y
7 ax6evr ⊢ ∃ y x = y
8 19.42v ⊢ ∃ y z = x x ∧ x = y ↔ z = x x ∧ ∃ y x = y
9 7 8 mpbiran2 ⊢ ∃ y z = x x ∧ x = y ↔ z = x x
10 6 9 bitri ⊢ ∃ y z = x y ∧ x = y ↔ z = x x
11 eqidd ⊢ z = x x → x = x
12 11 pm4.71i ⊢ z = x x ↔ z = x x ∧ x = x
13 10 12 bitri ⊢ ∃ y z = x y ∧ x = y ↔ z = x x ∧ x = x
14 13 exbii ⊢ ∃ x ∃ y z = x y ∧ x = y ↔ ∃ x z = x x ∧ x = x
15 id ⊢ x = u → x = u
16 15 15 opeq12d ⊢ x = u → x x = u u
17 16 eqeq2d ⊢ x = u → z = x x ↔ z = u u
18 15 15 eqeq12d ⊢ x = u → x = x ↔ u = u
19 17 18 anbi12d ⊢ x = u → z = x x ∧ x = x ↔ z = u u ∧ u = u
20 19 exexw ⊢ ∃ x z = x x ∧ x = x ↔ ∃ x ∃ x z = x x ∧ x = x
21 14 20 bitri ⊢ ∃ x ∃ y z = x y ∧ x = y ↔ ∃ x ∃ x z = x x ∧ x = x
22 21 abbii ⊢ z | ∃ x ∃ y z = x y ∧ x = y = z | ∃ x ∃ x z = x x ∧ x = x
23 df-opab ⊢ x y | x = y = z | ∃ x ∃ y z = x y ∧ x = y
24 df-opab ⊢ x x | x = x = z | ∃ x ∃ x z = x x ∧ x = x
25 22 23 24 3eqtr4i ⊢ x y | x = y = x x | x = x
26 1 25 eqtri ⊢ I = x x | x = x