This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Equivalence for interchangeable setvar variables. (Contributed by AV, 29-Jul-2023)
| Ref | Expression | ||
|---|---|---|---|
| Hypothesis | ichbi12i.1 | |- ( ( x = a /\ y = b ) -> ( ps <-> ch ) ) |
|
| Assertion | ichbi12i | |- ( [ x <> y ] ps <-> [ a <> b ] ch ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | ichbi12i.1 | |- ( ( x = a /\ y = b ) -> ( ps <-> ch ) ) |
|
| 2 | nfv | |- F/ b ps |
|
| 3 | 2 | sbco2v | |- ( [ v / b ] [ b / y ] ps <-> [ v / y ] ps ) |
| 4 | 3 | bicomi | |- ( [ v / y ] ps <-> [ v / b ] [ b / y ] ps ) |
| 5 | 4 | sbbii | |- ( [ a / x ] [ v / y ] ps <-> [ a / x ] [ v / b ] [ b / y ] ps ) |
| 6 | sbcom2 | |- ( [ a / x ] [ v / b ] [ b / y ] ps <-> [ v / b ] [ a / x ] [ b / y ] ps ) |
|
| 7 | 5 6 | bitri | |- ( [ a / x ] [ v / y ] ps <-> [ v / b ] [ a / x ] [ b / y ] ps ) |
| 8 | 7 | sbbii | |- ( [ u / a ] [ a / x ] [ v / y ] ps <-> [ u / a ] [ v / b ] [ a / x ] [ b / y ] ps ) |
| 9 | nfv | |- F/ a ps |
|
| 10 | 9 | nfsbv | |- F/ a [ v / y ] ps |
| 11 | 10 | sbco2v | |- ( [ u / a ] [ a / x ] [ v / y ] ps <-> [ u / x ] [ v / y ] ps ) |
| 12 | 1 | 2sbievw | |- ( [ a / x ] [ b / y ] ps <-> ch ) |
| 13 | 12 | 2sbbii | |- ( [ u / a ] [ v / b ] [ a / x ] [ b / y ] ps <-> [ u / a ] [ v / b ] ch ) |
| 14 | 8 11 13 | 3bitr3i | |- ( [ u / x ] [ v / y ] ps <-> [ u / a ] [ v / b ] ch ) |
| 15 | sbcom2 | |- ( [ u / b ] [ a / x ] [ b / y ] ps <-> [ a / x ] [ u / b ] [ b / y ] ps ) |
|
| 16 | 2 | sbco2v | |- ( [ u / b ] [ b / y ] ps <-> [ u / y ] ps ) |
| 17 | 16 | sbbii | |- ( [ a / x ] [ u / b ] [ b / y ] ps <-> [ a / x ] [ u / y ] ps ) |
| 18 | 15 17 | bitri | |- ( [ u / b ] [ a / x ] [ b / y ] ps <-> [ a / x ] [ u / y ] ps ) |
| 19 | 18 | sbbii | |- ( [ v / a ] [ u / b ] [ a / x ] [ b / y ] ps <-> [ v / a ] [ a / x ] [ u / y ] ps ) |
| 20 | 12 | 2sbbii | |- ( [ v / a ] [ u / b ] [ a / x ] [ b / y ] ps <-> [ v / a ] [ u / b ] ch ) |
| 21 | 9 | nfsbv | |- F/ a [ u / y ] ps |
| 22 | 21 | sbco2v | |- ( [ v / a ] [ a / x ] [ u / y ] ps <-> [ v / x ] [ u / y ] ps ) |
| 23 | 19 20 22 | 3bitr3ri | |- ( [ v / x ] [ u / y ] ps <-> [ v / a ] [ u / b ] ch ) |
| 24 | 14 23 | bibi12i | |- ( ( [ u / x ] [ v / y ] ps <-> [ v / x ] [ u / y ] ps ) <-> ( [ u / a ] [ v / b ] ch <-> [ v / a ] [ u / b ] ch ) ) |
| 25 | 24 | 2albii | |- ( A. u A. v ( [ u / x ] [ v / y ] ps <-> [ v / x ] [ u / y ] ps ) <-> A. u A. v ( [ u / a ] [ v / b ] ch <-> [ v / a ] [ u / b ] ch ) ) |
| 26 | dfich2 | |- ( [ x <> y ] ps <-> A. u A. v ( [ u / x ] [ v / y ] ps <-> [ v / x ] [ u / y ] ps ) ) |
|
| 27 | dfich2 | |- ( [ a <> b ] ch <-> A. u A. v ( [ u / a ] [ v / b ] ch <-> [ v / a ] [ u / b ] ch ) ) |
|
| 28 | 25 26 27 | 3bitr4i | |- ( [ x <> y ] ps <-> [ a <> b ] ch ) |