This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: The value of an operation class abstraction (weak version). (Contributed by NM, 14-Sep-1999) Remove unnecessary distinct variable conditions. (Revised by David Abernethy, 19-Jun-2012) (Revised by Mario Carneiro, 19-Dec-2013)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | ovig.1 | |- ( ( x = A /\ y = B /\ z = C ) -> ( ph <-> ps ) ) |
|
| ovig.2 | |- ( ( x e. R /\ y e. S ) -> E* z ph ) |
||
| ovig.3 | |- F = { <. <. x , y >. , z >. | ( ( x e. R /\ y e. S ) /\ ph ) } |
||
| Assertion | ovig | |- ( ( A e. R /\ B e. S /\ C e. D ) -> ( ps -> ( A F B ) = C ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | ovig.1 | |- ( ( x = A /\ y = B /\ z = C ) -> ( ph <-> ps ) ) |
|
| 2 | ovig.2 | |- ( ( x e. R /\ y e. S ) -> E* z ph ) |
|
| 3 | ovig.3 | |- F = { <. <. x , y >. , z >. | ( ( x e. R /\ y e. S ) /\ ph ) } |
|
| 4 | 3simpa | |- ( ( A e. R /\ B e. S /\ C e. D ) -> ( A e. R /\ B e. S ) ) |
|
| 5 | eleq1 | |- ( x = A -> ( x e. R <-> A e. R ) ) |
|
| 6 | eleq1 | |- ( y = B -> ( y e. S <-> B e. S ) ) |
|
| 7 | 5 6 | bi2anan9 | |- ( ( x = A /\ y = B ) -> ( ( x e. R /\ y e. S ) <-> ( A e. R /\ B e. S ) ) ) |
| 8 | 7 | 3adant3 | |- ( ( x = A /\ y = B /\ z = C ) -> ( ( x e. R /\ y e. S ) <-> ( A e. R /\ B e. S ) ) ) |
| 9 | 8 1 | anbi12d | |- ( ( x = A /\ y = B /\ z = C ) -> ( ( ( x e. R /\ y e. S ) /\ ph ) <-> ( ( A e. R /\ B e. S ) /\ ps ) ) ) |
| 10 | moanimv | |- ( E* z ( ( x e. R /\ y e. S ) /\ ph ) <-> ( ( x e. R /\ y e. S ) -> E* z ph ) ) |
|
| 11 | 2 10 | mpbir | |- E* z ( ( x e. R /\ y e. S ) /\ ph ) |
| 12 | 9 11 3 | ovigg | |- ( ( A e. R /\ B e. S /\ C e. D ) -> ( ( ( A e. R /\ B e. S ) /\ ps ) -> ( A F B ) = C ) ) |
| 13 | 4 12 | mpand | |- ( ( A e. R /\ B e. S /\ C e. D ) -> ( ps -> ( A F B ) = C ) ) |