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

Theorem sbabel 1189
Description: Theorem to move a substitution in and out of a class abstraction.
Hypothesis
Ref Expression
sbabel.1 |- (w e. A -> A.x w e. A)
Assertion
Ref Expression
sbabel |- ([y / x]{z | ph} e. A <-> {z | [y / x]ph} e. A)
Distinct variable group(s):   w,A   x,w   x,z   y,z

Proof of Theorem sbabel
StepHypRef Expression
1 sbex 998 . . 3 |- ([y / x]E.v(v = {z | ph} /\ v e. A) <-> E.v[y / x](v = {z | ph} /\ v e. A))
2 sban 889 . . . . 5 |- ([y / x](v = {z | ph} /\ v e. A) <-> ([y / x]v = {z | ph} /\ [y / x]v e. A))
3 ax-17 925 . . . . . . . . . 10 |- (w e. v -> A.x w e. v)
4 sbabel.1 . . . . . . . . . 10 |- (w e. A -> A.x w e. A)
53, 4hbel 1172 . . . . . . . . 9 |- (v e. A -> A.x v e. A)
65sbf 870 . . . . . . . 8 |- ([y / x]v e. A <-> v e. A)
76anbi2i 367 . . . . . . 7 |- (([y / x]v = {z | ph} /\ [y / x]v e. A) <-> ([y / x]v = {z | ph} /\ v e. A))
87bicomi 150 . . . . . 6 |- (([y / x]v = {z | ph} /\ v e. A) <-> ([y / x]v = {z | ph} /\ [y / x]v e. A))
9 sbal 997 . . . . . . . . 9 |- ([y / x]A.z(z e. v <-> ph) <-> A.z[y / x](z e. v <-> ph))
10 sbbi 890 . . . . . . . . . . 11 |- ([y / x](z e. v <-> ph) <-> ([y / x]z e. v <-> [y / x]ph))
11 ax-17 925 . . . . . . . . . . . . . 14 |- (z e. v -> A.x z e. v)
1211sbf 870 . . . . . . . . . . . . 13 |- ([y / x]z e. v <-> z e. v)
1312bibi1i 461 . . . . . . . . . . . 12 |- (([y / x]z e. v <-> [y / x]ph) <-> (z e. v <-> [y / x]ph))
1413bicomi 150 . . . . . . . . . . 11 |- ((z e. v <-> [y / x]ph) <-> ([y / x]z e. v <-> [y / x]ph))
1510, 14bitr4 154 . . . . . . . . . 10 |- ([y / x](z e. v <-> ph) <-> (z e. v <-> [y / x]ph))
1615bial 695 . . . . . . . . 9 |- (A.z[y / x](z e. v <-> ph) <-> A.z(z e. v <-> [y / x]ph))
179, 16bitr 151 . . . . . . . 8 |- ([y / x]A.z(z e. v <-> ph) <-> A.z(z e. v <-> [y / x]ph))
18 cleqab 1174 . . . . . . . . 9 |- (v = {z | ph} <-> A.z(z e. v <-> ph))
1918bisb 855 . . . . . . . 8 |- ([y / x]v = {z | ph} <-> [y / x]A.z(z e. v <-> ph))
20 cleqab 1174 . . . . . . . 8 |- (v = {z | [y / x]ph} <-> A.z(z e. v <-> [y / x]ph))
2117, 19, 203bitr4 158 . . . . . . 7 |- ([y / x]v = {z | ph} <-> v = {z | [y / x]ph})
2221anbi1i 368 . . . . . 6 |- (([y / x]v = {z | ph} /\ v e. A) <-> (v = {z | [y / x]ph} /\ v e. A))
238, 22bitr3 153 . . . . 5 |- (([y / x]v = {z | ph} /\ [y / x]v e. A) <-> (v = {z | [y / x]ph} /\ v e. A))
242, 23bitr 151 . . . 4 |- ([y / x](v = {z | ph} /\ v e. A) <-> (v = {z | [y / x]ph} /\ v e. A))
2524biex 733 . . 3 |- (E.v[y / x](v = {z | ph} /\ v e. A) <-> E.v(v = {z | [y / x]ph} /\ v e. A))
261, 25bitr 151 . 2 |- ([y / x]E.v(v = {z | ph} /\ v e. A) <-> E.v(v = {z | [y / x]ph} /\ v e. A))
27 df-clel 1099 . . 3 |- ({z | ph} e. A <-> E.v(v = {z | ph} /\ v e. A))
2827bisb 855 . 2 |- ([y / x]{z | ph} e. A <-> [y / x]E.v(v = {z | ph} /\ v e. A))
29 df-clel 1099 . 2 |- ({z | [y / x]ph} e. A <-> E.v(v = {z | [y / x]ph} /\ v e. A))
3026, 28, 293bitr4 158 1 |- ([y / x]{z | ph} e. A <-> {z | [y / x]ph} e. A)
Colors of variables: wff set class
Syntax hints:   -> wi 2   <-> wb 127   /\ wa 196  A.wal 672  E.wex 678   e. wel 803  [wsb 852  {cab 1090   = wceq 1091   e. wcel 1092
This theorem was proved from axioms:  ax-1 3  ax-2 4  ax-3 5  ax-mp 6  ax-4 673  ax-5 674  ax-6 675  ax-7 676  ax-gen 677  ax-8 798  ax-9 799  ax-10 800  ax-11 801  ax-12 802  ax-16 922  ax-17 925  ax-ext 1074
This theorem depends on definitions:  df-bi 128  df-or 197  df-an 198  df-ex 679  df-sb 853  df-clab 1093  df-cleq 1097  df-clel 1099
metamath.org