HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem cbvoprab12 3998
Description: Rule used to change first two bound variables in an operation abstraction, using implicit substitution.
Hypotheses
Ref Expression
cbvoprab12.1 |- (ph -> A.wph)
cbvoprab12.2 |- (ph -> A.vph)
cbvoprab12.3 |- (ps -> A.xps)
cbvoprab12.4 |- (ps -> A.yps)
cbvoprab12.5 |- ((x = w /\ y = v) -> (ph <-> ps))
Assertion
Ref Expression
cbvoprab12 |- {<.<.x, y>., z>. | ph} = {<.<.w, v>., z>. | ps}
Distinct variable group:   x,y,z,w,v

Proof of Theorem cbvoprab12
StepHypRef Expression
1 ax-17 971 . . . . . 6 |- (u = <.<.x, y>., z>. -> A.w u = <.<.x, y>., z>.)
2 cbvoprab12.1 . . . . . 6 |- (ph -> A.wph)
31, 2hban 1009 . . . . 5 |- ((u = <.<.x, y>., z>. /\ ph) -> A.w(u = <.<.x, y>., z>. /\ ph))
43hbex 1006 . . . 4 |- (E.z(u = <.<.x, y>., z>. /\ ph) -> A.wE.z(u = <.<.x, y>., z>. /\ ph))
5 ax-17 971 . . . . . 6 |- (u = <.<.x, y>., z>. -> A.v u = <.<.x, y>., z>.)
6 cbvoprab12.2 . . . . . 6 |- (ph -> A.vph)
75, 6hban 1009 . . . . 5 |- ((u = <.<.x, y>., z>. /\ ph) -> A.v(u = <.<.x, y>., z>. /\ ph))
87hbex 1006 . . . 4 |- (E.z(u = <.<.x, y>., z>. /\ ph) -> A.vE.z(u = <.<.x, y>., z>. /\ ph))
9 ax-17 971 . . . . . 6 |- (u = <.<.w, v>., z>. -> A.x u = <.<.w, v>., z>.)
10 cbvoprab12.3 . . . . . 6 |- (ps -> A.xps)
119, 10hban 1009 . . . . 5 |- ((u = <.<.w, v>., z>. /\ ps) -> A.x(u = <.<.w, v>., z>. /\ ps))
1211hbex 1006 . . . 4 |- (E.z(u = <.<.w, v>., z>. /\ ps) -> A.xE.z(u = <.<.w, v>., z>. /\ ps))
13 ax-17 971 . . . . . 6 |- (u = <.<.w, v>., z>. -> A.y u = <.<.w, v>., z>.)
14 cbvoprab12.4 . . . . . 6 |- (ps -> A.yps)
1513, 14hban 1009 . . . . 5 |- ((u = <.<.w, v>., z>. /\ ps) -> A.y(u = <.<.w, v>., z>. /\ ps))
1615hbex 1006 . . . 4 |- (E.z(u = <.<.w, v>., z>. /\ ps) -> A.yE.z(u = <.<.w, v>., z>. /\ ps))
17 opeq12 2489 . . . . . . . 8 |- ((x = w /\ y = v) -> <.x, y>. = <.w, v>.)
1817opeq1d 2493 . . . . . . 7 |- ((x = w /\ y = v) -> <.<.x, y>., z>. = <.<.w, v>., z>.)
1918eqeq2d 1486 . . . . . 6 |- ((x = w /\ y = v) -> (u = <.<.x, y>., z>. <-> u = <.<.w, v>., z>.))
20 cbvoprab12.5 . . . . . 6 |- ((x = w /\ y = v) -> (ph <-> ps))
2119, 20anbi12d 628 . . . . 5 |- ((x = w /\ y = v) -> ((u = <.<.x, y>., z>. /\ ph) <-> (u = <.<.w, v>., z>. /\ ps)))
2221exbidv 1279 . . . 4 |- ((x = w /\ y = v) -> (E.z(u = <.<.x, y>., z>. /\ ph) <-> E.z(u = <.<.w, v>., z>. /\ ps)))
234, 8, 12, 16, 22cbvex2 1317 . . 3 |- (E.xE.yE.z(u = <.<.x, y>., z>. /\ ph) <-> E.wE.vE.z(u = <.<.w, v>., z>. /\ ps))
2423abbii 1575 . 2 |- {u | E.xE.yE.z(u = <.<.x, y>., z>. /\ ph)} = {u | E.wE.vE.z(u = <.<.w, v>., z>. /\ ps)}
25 df-oprab 3966 . 2 |- {<.<.x, y>., z>. | ph} = {u | E.xE.yE.z(u = <.<.x, y>., z>. /\ ph)}
26 df-oprab 3966 . 2 |- {<.<.w, v>., z>. | ps} = {u | E.wE.vE.z(u = <.<.w, v>., z>. /\ ps)}
2724, 25, 263eqtr4 1505 1 |- {<.<.x, y>., z>. | ph} = {<.<.w, v>., z>. | ps}
Colors of variables: wff set class
Syntax hints:   -> wi 3   <-> wb 146   /\ wa 223  A.wal 954   = wceq 956  E.wex 980  {cab 1463  <.cop 2411  {copab2 3964
This theorem is referenced by:  cbvoprab12v 3999  oprabval2gf 4026  oprabval4g 4031
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 962  ax-gen 963  ax-8 964  ax-10 966  ax-12 968  ax-17 971  ax-4 973  ax-5o 975  ax-6o 978  ax-9o 1123  ax-10o 1140  ax-16 1210  ax-11o 1218  ax-ext 1459
This theorem depends on definitions:  df-bi 147  df-or 224  df-an 225  df-ex 981  df-sb 1172  df-clab 1464  df-cleq 1469  df-clel 1472  df-v 1812  df-un 2050  df-sn 2412  df-pr 2413  df-op 2416  df-oprab 3966
Copyright terms: Public domain