This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Restriction of a unique element to a smaller class. (Contributed by NM, 21-Aug-2011) (Revised by NM, 22-Mar-2013)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | riotass2 | |- ( ( ( A C_ B /\ A. x e. A ( ph -> ps ) ) /\ ( E. x e. A ph /\ E! x e. B ps ) ) -> ( iota_ x e. A ph ) = ( iota_ x e. B ps ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | reuss2 | |- ( ( ( A C_ B /\ A. x e. A ( ph -> ps ) ) /\ ( E. x e. A ph /\ E! x e. B ps ) ) -> E! x e. A ph ) |
|
| 2 | simplr | |- ( ( ( A C_ B /\ A. x e. A ( ph -> ps ) ) /\ ( E. x e. A ph /\ E! x e. B ps ) ) -> A. x e. A ( ph -> ps ) ) |
|
| 3 | riotasbc | |- ( E! x e. A ph -> [. ( iota_ x e. A ph ) / x ]. ph ) |
|
| 4 | riotacl | |- ( E! x e. A ph -> ( iota_ x e. A ph ) e. A ) |
|
| 5 | rspsbc | |- ( ( iota_ x e. A ph ) e. A -> ( A. x e. A ( ph -> ps ) -> [. ( iota_ x e. A ph ) / x ]. ( ph -> ps ) ) ) |
|
| 6 | sbcimg | |- ( ( iota_ x e. A ph ) e. A -> ( [. ( iota_ x e. A ph ) / x ]. ( ph -> ps ) <-> ( [. ( iota_ x e. A ph ) / x ]. ph -> [. ( iota_ x e. A ph ) / x ]. ps ) ) ) |
|
| 7 | 5 6 | sylibd | |- ( ( iota_ x e. A ph ) e. A -> ( A. x e. A ( ph -> ps ) -> ( [. ( iota_ x e. A ph ) / x ]. ph -> [. ( iota_ x e. A ph ) / x ]. ps ) ) ) |
| 8 | 4 7 | syl | |- ( E! x e. A ph -> ( A. x e. A ( ph -> ps ) -> ( [. ( iota_ x e. A ph ) / x ]. ph -> [. ( iota_ x e. A ph ) / x ]. ps ) ) ) |
| 9 | 3 8 | mpid | |- ( E! x e. A ph -> ( A. x e. A ( ph -> ps ) -> [. ( iota_ x e. A ph ) / x ]. ps ) ) |
| 10 | 1 2 9 | sylc | |- ( ( ( A C_ B /\ A. x e. A ( ph -> ps ) ) /\ ( E. x e. A ph /\ E! x e. B ps ) ) -> [. ( iota_ x e. A ph ) / x ]. ps ) |
| 11 | 1 4 | syl | |- ( ( ( A C_ B /\ A. x e. A ( ph -> ps ) ) /\ ( E. x e. A ph /\ E! x e. B ps ) ) -> ( iota_ x e. A ph ) e. A ) |
| 12 | ssel | |- ( A C_ B -> ( ( iota_ x e. A ph ) e. A -> ( iota_ x e. A ph ) e. B ) ) |
|
| 13 | 12 | ad2antrr | |- ( ( ( A C_ B /\ A. x e. A ( ph -> ps ) ) /\ ( E. x e. A ph /\ E! x e. B ps ) ) -> ( ( iota_ x e. A ph ) e. A -> ( iota_ x e. A ph ) e. B ) ) |
| 14 | 11 13 | mpd | |- ( ( ( A C_ B /\ A. x e. A ( ph -> ps ) ) /\ ( E. x e. A ph /\ E! x e. B ps ) ) -> ( iota_ x e. A ph ) e. B ) |
| 15 | simprr | |- ( ( ( A C_ B /\ A. x e. A ( ph -> ps ) ) /\ ( E. x e. A ph /\ E! x e. B ps ) ) -> E! x e. B ps ) |
|
| 16 | nfriota1 | |- F/_ x ( iota_ x e. A ph ) |
|
| 17 | 16 | nfsbc1 | |- F/ x [. ( iota_ x e. A ph ) / x ]. ps |
| 18 | sbceq1a | |- ( x = ( iota_ x e. A ph ) -> ( ps <-> [. ( iota_ x e. A ph ) / x ]. ps ) ) |
|
| 19 | 16 17 18 | riota2f | |- ( ( ( iota_ x e. A ph ) e. B /\ E! x e. B ps ) -> ( [. ( iota_ x e. A ph ) / x ]. ps <-> ( iota_ x e. B ps ) = ( iota_ x e. A ph ) ) ) |
| 20 | 14 15 19 | syl2anc | |- ( ( ( A C_ B /\ A. x e. A ( ph -> ps ) ) /\ ( E. x e. A ph /\ E! x e. B ps ) ) -> ( [. ( iota_ x e. A ph ) / x ]. ps <-> ( iota_ x e. B ps ) = ( iota_ x e. A ph ) ) ) |
| 21 | 10 20 | mpbid | |- ( ( ( A C_ B /\ A. x e. A ( ph -> ps ) ) /\ ( E. x e. A ph /\ E! x e. B ps ) ) -> ( iota_ x e. B ps ) = ( iota_ x e. A ph ) ) |
| 22 | 21 | eqcomd | |- ( ( ( A C_ B /\ A. x e. A ( ph -> ps ) ) /\ ( E. x e. A ph /\ E! x e. B ps ) ) -> ( iota_ x e. A ph ) = ( iota_ x e. B ps ) ) |