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 } |
| 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 | |- ( E. y ( z = <. x , y >. /\ x = y ) <-> E. y ( z = <. x , x >. /\ x = y ) ) |
| 7 | ax6evr | |- E. y x = y |
|
| 8 | 19.42v | |- ( E. y ( z = <. x , x >. /\ x = y ) <-> ( z = <. x , x >. /\ E. y x = y ) ) |
|
| 9 | 7 8 | mpbiran2 | |- ( E. y ( z = <. x , x >. /\ x = y ) <-> z = <. x , x >. ) |
| 10 | 6 9 | bitri | |- ( E. 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 | |- ( E. y ( z = <. x , y >. /\ x = y ) <-> ( z = <. x , x >. /\ x = x ) ) |
| 14 | 13 | exbii | |- ( E. x E. y ( z = <. x , y >. /\ x = y ) <-> E. 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 | |- ( E. x ( z = <. x , x >. /\ x = x ) <-> E. x E. x ( z = <. x , x >. /\ x = x ) ) |
| 21 | 14 20 | bitri | |- ( E. x E. y ( z = <. x , y >. /\ x = y ) <-> E. x E. x ( z = <. x , x >. /\ x = x ) ) |
| 22 | 21 | abbii | |- { z | E. x E. y ( z = <. x , y >. /\ x = y ) } = { z | E. x E. x ( z = <. x , x >. /\ x = x ) } |
| 23 | df-opab | |- { <. x , y >. | x = y } = { z | E. x E. y ( z = <. x , y >. /\ x = y ) } |
|
| 24 | df-opab | |- { <. x , x >. | x = x } = { z | E. x E. 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 } |