This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Rule used to change bound variables, using implicit substitution. Version of cbvab with a disjoint variable condition, which does not require ax-10 , ax-13 . (Contributed by Andrew Salmon, 11-Jul-2011) (Revised by GG, 23-May-2024)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | cbvabw.1 | |- F/ y ph |
|
| cbvabw.2 | |- F/ x ps |
||
| cbvabw.3 | |- ( x = y -> ( ph <-> ps ) ) |
||
| Assertion | cbvabw | |- { x | ph } = { y | ps } |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | cbvabw.1 | |- F/ y ph |
|
| 2 | cbvabw.2 | |- F/ x ps |
|
| 3 | cbvabw.3 | |- ( x = y -> ( ph <-> ps ) ) |
|
| 4 | 1 2 3 | cbvsbvf | |- ( [ z / x ] ph <-> [ z / y ] ps ) |
| 5 | df-clab | |- ( z e. { x | ph } <-> [ z / x ] ph ) |
|
| 6 | df-clab | |- ( z e. { y | ps } <-> [ z / y ] ps ) |
|
| 7 | 4 5 6 | 3bitr4i | |- ( z e. { x | ph } <-> z e. { y | ps } ) |
| 8 | 7 | eqriv | |- { x | ph } = { y | ps } |