Metamath Proof Explorer


Theorem bj-df-sb

Description: Proposed definition to replace df-sb and df-sbc . Proof is therefore unimportant. Contrary to df-sb , this definition makes a substituted formula false when one substitutes a non-existent object for a variable. This is better suited to the "Levy-style" treatment of classes as virtual objects adopted by set.mm. Indeed, in most set theories, and in particular in this database, one wants to be able to collect the extension of a formula, so it is natural that the extension of a formula contain only sets, and not proper classes. This is illustrated by the fact that bj-dfsbc holds unconditionally. That statement could therefore replace df-clab .

This definition is equivalent to df-sb when a setvar is substituted for the class, since, as soon as, ax6ev is posited, all variables "exist". (Contributed by BJ, 19-Feb-2026)

Ref Expression
Assertion bj-df-sb
|- ( [. A / x ]. ph <-> E. y ( y = A /\ A. x ( x = y -> ph ) ) )

Proof

Step Hyp Ref Expression
1 sbc7
 |-  ( [. A / x ]. ph <-> E. y ( y = A /\ [. y / x ]. ph ) )
2 sbsbc
 |-  ( [ y / x ] ph <-> [. y / x ]. ph )
3 sb6
 |-  ( [ y / x ] ph <-> A. x ( x = y -> ph ) )
4 2 3 bitr3i
 |-  ( [. y / x ]. ph <-> A. x ( x = y -> ph ) )
5 4 anbi2i
 |-  ( ( y = A /\ [. y / x ]. ph ) <-> ( y = A /\ A. x ( x = y -> ph ) ) )
6 5 exbii
 |-  ( E. y ( y = A /\ [. y / x ]. ph ) <-> E. y ( y = A /\ A. x ( x = y -> ph ) ) )
7 1 6 bitri
 |-  ( [. A / x ]. ph <-> E. y ( y = A /\ A. x ( x = y -> ph ) ) )