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

Theorem cbvoprab2 6365
Description: Change the second bound variable in an operation abstraction. (Contributed by Jeff Madsen, 11-Jun-2010.) (Revised by Mario Carneiro, 11-Dec-2016.)
Hypotheses
Ref Expression
cbvoprab2.1  |-  F/ w ph
cbvoprab2.2  |-  F/ y ps
cbvoprab2.3  |-  ( y  =  w  ->  ( ph 
<->  ps ) )
Assertion
Ref Expression
cbvoprab2  |-  { <. <.
x ,  y >. ,  z >.  |  ph }  =  { <. <. x ,  w >. ,  z >.  |  ps }
Distinct variable group:    x, w, y, z
Allowed substitution hints:    ph( x, y, z, w)    ps( x, y, z, w)

Proof of Theorem cbvoprab2
Dummy variable  v is distinct from all other variables.
StepHypRef Expression
1 nfv 1683 . . . . . . 7  |-  F/ w  v  =  <. <. x ,  y >. ,  z
>.
2 cbvoprab2.1 . . . . . . 7  |-  F/ w ph
31, 2nfan 1875 . . . . . 6  |-  F/ w
( v  =  <. <.
x ,  y >. ,  z >.  /\  ph )
43nfex 1895 . . . . 5  |-  F/ w E. z ( v  = 
<. <. x ,  y
>. ,  z >.  /\ 
ph )
5 nfv 1683 . . . . . . 7  |-  F/ y  v  =  <. <. x ,  w >. ,  z >.
6 cbvoprab2.2 . . . . . . 7  |-  F/ y ps
75, 6nfan 1875 . . . . . 6  |-  F/ y ( v  =  <. <.
x ,  w >. ,  z >.  /\  ps )
87nfex 1895 . . . . 5  |-  F/ y E. z ( v  =  <. <. x ,  w >. ,  z >.  /\  ps )
9 opeq2 4220 . . . . . . . . 9  |-  ( y  =  w  ->  <. x ,  y >.  =  <. x ,  w >. )
109opeq1d 4225 . . . . . . . 8  |-  ( y  =  w  ->  <. <. x ,  y >. ,  z
>.  =  <. <. x ,  w >. ,  z >.
)
1110eqeq2d 2481 . . . . . . 7  |-  ( y  =  w  ->  (
v  =  <. <. x ,  y >. ,  z
>. 
<->  v  =  <. <. x ,  w >. ,  z >.
) )
12 cbvoprab2.3 . . . . . . 7  |-  ( y  =  w  ->  ( ph 
<->  ps ) )
1311, 12anbi12d 710 . . . . . 6  |-  ( y  =  w  ->  (
( v  =  <. <.
x ,  y >. ,  z >.  /\  ph ) 
<->  ( v  =  <. <.
x ,  w >. ,  z >.  /\  ps )
) )
1413exbidv 1690 . . . . 5  |-  ( y  =  w  ->  ( E. z ( v  = 
<. <. x ,  y
>. ,  z >.  /\ 
ph )  <->  E. z
( v  =  <. <.
x ,  w >. ,  z >.  /\  ps )
) )
154, 8, 14cbvex 1995 . . . 4  |-  ( E. y E. z ( v  =  <. <. x ,  y >. ,  z
>.  /\  ph )  <->  E. w E. z ( v  = 
<. <. x ,  w >. ,  z >.  /\  ps ) )
1615exbii 1644 . . 3  |-  ( E. x E. y E. z ( v  = 
<. <. x ,  y
>. ,  z >.  /\ 
ph )  <->  E. x E. w E. z ( v  =  <. <. x ,  w >. ,  z >.  /\  ps ) )
1716abbii 2601 . 2  |-  { v  |  E. x E. y E. z ( v  =  <. <. x ,  y
>. ,  z >.  /\ 
ph ) }  =  { v  |  E. x E. w E. z
( v  =  <. <.
x ,  w >. ,  z >.  /\  ps ) }
18 df-oprab 6299 . 2  |-  { <. <.
x ,  y >. ,  z >.  |  ph }  =  { v  |  E. x E. y E. z ( v  = 
<. <. x ,  y
>. ,  z >.  /\ 
ph ) }
19 df-oprab 6299 . 2  |-  { <. <.
x ,  w >. ,  z >.  |  ps }  =  { v  |  E. x E. w E. z ( v  = 
<. <. x ,  w >. ,  z >.  /\  ps ) }
2017, 18, 193eqtr4i 2506 1  |-  { <. <.
x ,  y >. ,  z >.  |  ph }  =  { <. <. x ,  w >. ,  z >.  |  ps }
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 184    /\ wa 369    = wceq 1379   E.wex 1596   F/wnf 1599   {cab 2452   <.cop 4039   {coprab 6296
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1601  ax-4 1612  ax-5 1680  ax-6 1719  ax-7 1739  ax-10 1786  ax-11 1791  ax-12 1803  ax-13 1968  ax-ext 2445
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3an 975  df-tru 1382  df-ex 1597  df-nf 1600  df-sb 1712  df-clab 2453  df-cleq 2459  df-clel 2462  df-nfc 2617  df-rab 2826  df-v 3120  df-dif 3484  df-un 3486  df-in 3488  df-ss 3495  df-nul 3791  df-if 3946  df-sn 4034  df-pr 4036  df-op 4040  df-oprab 6299
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator