MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  sbabel Unicode version

Theorem sbabel 2458
Description: Theorem to move a substitution in and out of a class abstraction. (Contributed by NM, 27-Sep-2003.) (Revised by Mario Carneiro, 7-Oct-2016.)
Hypothesis
Ref Expression
sbabel.1  |-  F/_ x A
Assertion
Ref Expression
sbabel  |-  ( [ y  /  x ] { z  |  ph }  e.  A  <->  { z  |  [ y  /  x ] ph }  e.  A
)
Distinct variable groups:    x, z    y, z
Allowed substitution hints:    ph( x, y, z)    A( x, y, z)

Proof of Theorem sbabel
Dummy variable  v is distinct from all other variables.
StepHypRef Expression
1 sbex 2080 . . 3  |-  ( [ y  /  x ] E. v ( v  =  { z  |  ph }  /\  v  e.  A
)  <->  E. v [ y  /  x ] ( v  =  { z  |  ph }  /\  v  e.  A )
)
2 sban 2022 . . . . 5  |-  ( [ y  /  x ]
( v  =  {
z  |  ph }  /\  v  e.  A
)  <->  ( [ y  /  x ] v  =  { z  | 
ph }  /\  [
y  /  x ]
v  e.  A ) )
3 nfv 1609 . . . . . . . . . 10  |-  F/ x  z  e.  v
43sbf 1979 . . . . . . . . 9  |-  ( [ y  /  x ]
z  e.  v  <->  z  e.  v )
54sbrbis 2026 . . . . . . . 8  |-  ( [ y  /  x ]
( z  e.  v  <->  ph )  <->  ( z  e.  v  <->  [ y  /  x ] ph ) )
65sbalv 2081 . . . . . . 7  |-  ( [ y  /  x ] A. z ( z  e.  v  <->  ph )  <->  A. z
( z  e.  v  <->  [ y  /  x ] ph ) )
7 abeq2 2401 . . . . . . . 8  |-  ( v  =  { z  | 
ph }  <->  A. z
( z  e.  v  <->  ph ) )
87sbbii 1643 . . . . . . 7  |-  ( [ y  /  x ]
v  =  { z  |  ph }  <->  [ y  /  x ] A. z
( z  e.  v  <->  ph ) )
9 abeq2 2401 . . . . . . 7  |-  ( v  =  { z  |  [ y  /  x ] ph }  <->  A. z
( z  e.  v  <->  [ y  /  x ] ph ) )
106, 8, 93bitr4i 268 . . . . . 6  |-  ( [ y  /  x ]
v  =  { z  |  ph }  <->  v  =  { z  |  [
y  /  x ] ph } )
11 sbabel.1 . . . . . . . 8  |-  F/_ x A
1211nfcri 2426 . . . . . . 7  |-  F/ x  v  e.  A
1312sbf 1979 . . . . . 6  |-  ( [ y  /  x ]
v  e.  A  <->  v  e.  A )
1410, 13anbi12i 678 . . . . 5  |-  ( ( [ y  /  x ] v  =  {
z  |  ph }  /\  [ y  /  x ] v  e.  A
)  <->  ( v  =  { z  |  [
y  /  x ] ph }  /\  v  e.  A ) )
152, 14bitri 240 . . . 4  |-  ( [ y  /  x ]
( v  =  {
z  |  ph }  /\  v  e.  A
)  <->  ( v  =  { z  |  [
y  /  x ] ph }  /\  v  e.  A ) )
1615exbii 1572 . . 3  |-  ( E. v [ y  /  x ] ( v  =  { z  |  ph }  /\  v  e.  A
)  <->  E. v ( v  =  { z  |  [ y  /  x ] ph }  /\  v  e.  A ) )
171, 16bitri 240 . 2  |-  ( [ y  /  x ] E. v ( v  =  { z  |  ph }  /\  v  e.  A
)  <->  E. v ( v  =  { z  |  [ y  /  x ] ph }  /\  v  e.  A ) )
18 df-clel 2292 . . 3  |-  ( { z  |  ph }  e.  A  <->  E. v ( v  =  { z  | 
ph }  /\  v  e.  A ) )
1918sbbii 1643 . 2  |-  ( [ y  /  x ] { z  |  ph }  e.  A  <->  [ y  /  x ] E. v
( v  =  {
z  |  ph }  /\  v  e.  A
) )
20 df-clel 2292 . 2  |-  ( { z  |  [ y  /  x ] ph }  e.  A  <->  E. v
( v  =  {
z  |  [ y  /  x ] ph }  /\  v  e.  A
) )
2117, 19, 203bitr4i 268 1  |-  ( [ y  /  x ] { z  |  ph }  e.  A  <->  { z  |  [ y  /  x ] ph }  e.  A
)
Colors of variables: wff set class
Syntax hints:    <-> wb 176    /\ wa 358   A.wal 1530   E.wex 1531    = wceq 1632   [wsb 1638    e. wcel 1696   {cab 2282   F/_wnfc 2419
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1536  ax-5 1547  ax-17 1606  ax-9 1644  ax-8 1661  ax-6 1715  ax-7 1720  ax-11 1727  ax-12 1878  ax-ext 2277
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-tru 1310  df-ex 1532  df-nf 1535  df-sb 1639  df-clab 2283  df-cleq 2289  df-clel 2292  df-nfc 2421
  Copyright terms: Public domain W3C validator