This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Implicit substitution of 2 classes for 2 setvar variables. (Contributed by NM, 20-Aug-1995) Avoid ax-10 and ax-11 . (Revised by GG, 20-Aug-2023) (Proof shortened by Wolf Lammen, 23-Aug-2023)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | vtocl2ga.1 | |- ( x = A -> ( ph <-> ps ) ) |
|
| vtocl2ga.2 | |- ( y = B -> ( ps <-> ch ) ) |
||
| vtocl2ga.3 | |- ( ( x e. C /\ y e. D ) -> ph ) |
||
| Assertion | vtocl2ga | |- ( ( A e. C /\ B e. D ) -> ch ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | vtocl2ga.1 | |- ( x = A -> ( ph <-> ps ) ) |
|
| 2 | vtocl2ga.2 | |- ( y = B -> ( ps <-> ch ) ) |
|
| 3 | vtocl2ga.3 | |- ( ( x e. C /\ y e. D ) -> ph ) |
|
| 4 | 2 | imbi2d | |- ( y = B -> ( ( A e. C -> ps ) <-> ( A e. C -> ch ) ) ) |
| 5 | 1 | imbi2d | |- ( x = A -> ( ( y e. D -> ph ) <-> ( y e. D -> ps ) ) ) |
| 6 | 3 | ex | |- ( x e. C -> ( y e. D -> ph ) ) |
| 7 | 5 6 | vtoclga | |- ( A e. C -> ( y e. D -> ps ) ) |
| 8 | 7 | com12 | |- ( y e. D -> ( A e. C -> ps ) ) |
| 9 | 4 8 | vtoclga | |- ( B e. D -> ( A e. C -> ch ) ) |
| 10 | 9 | impcom | |- ( ( A e. C /\ B e. D ) -> ch ) |