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 ⊢ ( 𝐴 ∈ { 𝑥 ∣ 𝜑 } ↔ ∃ 𝑥 ( 𝑥 = 𝐴 ∧ 𝜑 ) )