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

Theorem sbabel 2793
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.) (Proof shortened by Wolf Lammen, 26-Dec-2019.)
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 2463 . . 3  |-  ( [ y  /  x ] E. v ( v  e.  A  /\  A. z
( z  e.  v  <->  ph ) )  <->  E. v [ y  /  x ] ( v  e.  A  /\  A. z
( z  e.  v  <->  ph ) ) )
2 sban 2399 . . . . 5  |-  ( [ y  /  x ]
( v  e.  A  /\  A. z ( z  e.  v  <->  ph ) )  <-> 
( [ y  /  x ] v  e.  A  /\  [ y  /  x ] A. z ( z  e.  v  <->  ph ) ) )
3 sbabel.1 . . . . . . . 8  |-  F/_ x A
43nfcri 2758 . . . . . . 7  |-  F/ x  v  e.  A
54sbf 2380 . . . . . 6  |-  ( [ y  /  x ]
v  e.  A  <->  v  e.  A )
6 nfv 1843 . . . . . . . . 9  |-  F/ x  z  e.  v
76sbf 2380 . . . . . . . 8  |-  ( [ y  /  x ]
z  e.  v  <->  z  e.  v )
87sbrbis 2405 . . . . . . 7  |-  ( [ y  /  x ]
( z  e.  v  <->  ph )  <->  ( z  e.  v  <->  [ y  /  x ] ph ) )
98sbalv 2464 . . . . . 6  |-  ( [ y  /  x ] A. z ( z  e.  v  <->  ph )  <->  A. z
( z  e.  v  <->  [ y  /  x ] ph ) )
105, 9anbi12i 733 . . . . 5  |-  ( ( [ y  /  x ] v  e.  A  /\  [ y  /  x ] A. z ( z  e.  v  <->  ph ) )  <-> 
( v  e.  A  /\  A. z ( z  e.  v  <->  [ y  /  x ] ph )
) )
112, 10bitri 264 . . . 4  |-  ( [ y  /  x ]
( v  e.  A  /\  A. z ( z  e.  v  <->  ph ) )  <-> 
( v  e.  A  /\  A. z ( z  e.  v  <->  [ y  /  x ] ph )
) )
1211exbii 1774 . . 3  |-  ( E. v [ y  /  x ] ( v  e.  A  /\  A. z
( z  e.  v  <->  ph ) )  <->  E. v
( v  e.  A  /\  A. z ( z  e.  v  <->  [ y  /  x ] ph )
) )
131, 12bitri 264 . 2  |-  ( [ y  /  x ] E. v ( v  e.  A  /\  A. z
( z  e.  v  <->  ph ) )  <->  E. v
( v  e.  A  /\  A. z ( z  e.  v  <->  [ y  /  x ] ph )
) )
14 clabel 2749 . . 3  |-  ( { z  |  ph }  e.  A  <->  E. v ( v  e.  A  /\  A. z ( z  e.  v  <->  ph ) ) )
1514sbbii 1887 . 2  |-  ( [ y  /  x ] { z  |  ph }  e.  A  <->  [ y  /  x ] E. v
( v  e.  A  /\  A. z ( z  e.  v  <->  ph ) ) )
16 clabel 2749 . 2  |-  ( { z  |  [ y  /  x ] ph }  e.  A  <->  E. v
( v  e.  A  /\  A. z ( z  e.  v  <->  [ y  /  x ] ph )
) )
1713, 15, 163bitr4i 292 1  |-  ( [ y  /  x ] { z  |  ph }  e.  A  <->  { z  |  [ y  /  x ] ph }  e.  A
)
Colors of variables: wff setvar class
Syntax hints:    <-> wb 196    /\ wa 384   A.wal 1481   E.wex 1704   [wsb 1880    e. wcel 1990   {cab 2608   F/_wnfc 2751
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator