Metamath Proof Explorer


Theorem dfsb7

Description: An alternate definition of proper substitution df-sb . By introducing a dummy variable y in the definiens, we are able to eliminate any distinct variable restrictions among the variables t , x , and ph of the definiendum. No distinct variable conflicts arise because y effectively insulates t from x . To achieve this, we use a chain of two substitutions in the form of sb5 , first y for x then t for y . Compare Definition 2.1'' of Quine p. 17, which is obtained from this theorem by applying df-clab . Theorem sb7h provides a version where ph and y don't have to be distinct. (Contributed by NM, 28-Jan-2004) Revise df-sb . (Revised by BJ, 25-Dec-2020) (Proof shortened by Wolf Lammen, 3-Sep-2023)

Ref Expression
Assertion dfsb7
|- ( [ t / x ] ph <-> E. y ( y = t /\ E. x ( x = y /\ ph ) ) )

Proof

Step Hyp Ref Expression
1 sbalex
 |-  ( E. y ( y = t /\ A. x ( x = y -> ph ) ) <-> A. y ( y = t -> A. x ( x = y -> ph ) ) )
2 sbalex
 |-  ( E. x ( x = y /\ ph ) <-> A. x ( x = y -> ph ) )
3 2 anbi2i
 |-  ( ( y = t /\ E. x ( x = y /\ ph ) ) <-> ( y = t /\ A. x ( x = y -> ph ) ) )
4 3 exbii
 |-  ( E. y ( y = t /\ E. x ( x = y /\ ph ) ) <-> E. y ( y = t /\ A. x ( x = y -> ph ) ) )
5 df-sb
 |-  ( [ t / x ] ph <-> A. y ( y = t -> A. x ( x = y -> ph ) ) )
6 1 4 5 3bitr4ri
 |-  ( [ t / x ] ph <-> E. y ( y = t /\ E. x ( x = y /\ ph ) ) )