Metamath Proof Explorer


Theorem eqoreldif

Description: An element of a set is either equal to another element of the set or a member of the difference of the set and the singleton containing the other element. (Contributed by AV, 25-Aug-2020) (Proof shortened by JJ, 23-Jul-2021)

Ref Expression
Assertion eqoreldif
|- ( B e. C -> ( A e. C <-> ( A = B \/ A e. ( C \ { B } ) ) ) )

Proof

Step Hyp Ref Expression
1 simpl
 |-  ( ( A e. C /\ -. A = B ) -> A e. C )
2 elsni
 |-  ( A e. { B } -> A = B )
3 2 con3i
 |-  ( -. A = B -> -. A e. { B } )
4 3 adantl
 |-  ( ( A e. C /\ -. A = B ) -> -. A e. { B } )
5 1 4 eldifd
 |-  ( ( A e. C /\ -. A = B ) -> A e. ( C \ { B } ) )
6 5 ex
 |-  ( A e. C -> ( -. A = B -> A e. ( C \ { B } ) ) )
7 6 orrd
 |-  ( A e. C -> ( A = B \/ A e. ( C \ { B } ) ) )
8 eleq1a
 |-  ( B e. C -> ( A = B -> A e. C ) )
9 eldifi
 |-  ( A e. ( C \ { B } ) -> A e. C )
10 9 a1i
 |-  ( B e. C -> ( A e. ( C \ { B } ) -> A e. C ) )
11 8 10 jaod
 |-  ( B e. C -> ( ( A = B \/ A e. ( C \ { B } ) ) -> A e. C ) )
12 7 11 impbid2
 |-  ( B e. C -> ( A e. C <-> ( A = B \/ A e. ( C \ { B } ) ) ) )