Metamath Proof Explorer


Theorem clelab

Description: Membership of a class variable in a class abstraction. (Contributed by NM, 23-Dec-1993) (Proof shortened by Wolf Lammen, 16-Nov-2019) Avoid ax-11 , see sbc5ALT for more details. (Revised by SN, 2-Sep-2024)

Ref Expression
Assertion clelab ( 𝐴 ∈ { 𝑥𝜑 } ↔ ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) )

Proof

Step Hyp Ref Expression
1 elissetv ( 𝐴 ∈ { 𝑥𝜑 } → ∃ 𝑦 𝑦 = 𝐴 )
2 exsimpl ( ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) → ∃ 𝑥 𝑥 = 𝐴 )
3 iseqsetv-cleq ( ∃ 𝑥 𝑥 = 𝐴 ↔ ∃ 𝑦 𝑦 = 𝐴 )
4 2 3 sylib ( ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) → ∃ 𝑦 𝑦 = 𝐴 )
5 eleq1 ( 𝑦 = 𝐴 → ( 𝑦 ∈ { 𝑥𝜑 } ↔ 𝐴 ∈ { 𝑥𝜑 } ) )
6 df-clab ( 𝑦 ∈ { 𝑥𝜑 } ↔ [ 𝑦 / 𝑥 ] 𝜑 )
7 sb5 ( [ 𝑦 / 𝑥 ] 𝜑 ↔ ∃ 𝑥 ( 𝑥 = 𝑦𝜑 ) )
8 6 7 bitri ( 𝑦 ∈ { 𝑥𝜑 } ↔ ∃ 𝑥 ( 𝑥 = 𝑦𝜑 ) )
9 eqeq2 ( 𝑦 = 𝐴 → ( 𝑥 = 𝑦𝑥 = 𝐴 ) )
10 9 anbi1d ( 𝑦 = 𝐴 → ( ( 𝑥 = 𝑦𝜑 ) ↔ ( 𝑥 = 𝐴𝜑 ) ) )
11 10 exbidv ( 𝑦 = 𝐴 → ( ∃ 𝑥 ( 𝑥 = 𝑦𝜑 ) ↔ ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) ) )
12 8 11 bitrid ( 𝑦 = 𝐴 → ( 𝑦 ∈ { 𝑥𝜑 } ↔ ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) ) )
13 5 12 bitr3d ( 𝑦 = 𝐴 → ( 𝐴 ∈ { 𝑥𝜑 } ↔ ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) ) )
14 13 exlimiv ( ∃ 𝑦 𝑦 = 𝐴 → ( 𝐴 ∈ { 𝑥𝜑 } ↔ ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) ) )
15 1 4 14 pm5.21nii ( 𝐴 ∈ { 𝑥𝜑 } ↔ ∃ 𝑥 ( 𝑥 = 𝐴𝜑 ) )