This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Theorem *14.25 in WhiteheadRussell p. 192. (Contributed by Andrew Salmon, 12-Jul-2011)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | sbiota1 | |- ( E! x ph -> ( A. x ( ph -> ps ) <-> [. ( iota x ph ) / x ]. ps ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | eu6 | |- ( E! x ph <-> E. y A. x ( ph <-> x = y ) ) |
|
| 2 | 1 | biimpi | |- ( E! x ph -> E. y A. x ( ph <-> x = y ) ) |
| 3 | iota4 | |- ( E! x ph -> [. ( iota x ph ) / x ]. ph ) |
|
| 4 | iotaval | |- ( A. x ( ph <-> x = y ) -> ( iota x ph ) = y ) |
|
| 5 | 4 | eqcomd | |- ( A. x ( ph <-> x = y ) -> y = ( iota x ph ) ) |
| 6 | spsbim | |- ( A. x ( ph -> ps ) -> ( [ y / x ] ph -> [ y / x ] ps ) ) |
|
| 7 | sbsbc | |- ( [ y / x ] ph <-> [. y / x ]. ph ) |
|
| 8 | sbsbc | |- ( [ y / x ] ps <-> [. y / x ]. ps ) |
|
| 9 | 6 7 8 | 3imtr3g | |- ( A. x ( ph -> ps ) -> ( [. y / x ]. ph -> [. y / x ]. ps ) ) |
| 10 | dfsbcq | |- ( y = ( iota x ph ) -> ( [. y / x ]. ph <-> [. ( iota x ph ) / x ]. ph ) ) |
|
| 11 | dfsbcq | |- ( y = ( iota x ph ) -> ( [. y / x ]. ps <-> [. ( iota x ph ) / x ]. ps ) ) |
|
| 12 | 10 11 | imbi12d | |- ( y = ( iota x ph ) -> ( ( [. y / x ]. ph -> [. y / x ]. ps ) <-> ( [. ( iota x ph ) / x ]. ph -> [. ( iota x ph ) / x ]. ps ) ) ) |
| 13 | 9 12 | imbitrid | |- ( y = ( iota x ph ) -> ( A. x ( ph -> ps ) -> ( [. ( iota x ph ) / x ]. ph -> [. ( iota x ph ) / x ]. ps ) ) ) |
| 14 | 13 | com23 | |- ( y = ( iota x ph ) -> ( [. ( iota x ph ) / x ]. ph -> ( A. x ( ph -> ps ) -> [. ( iota x ph ) / x ]. ps ) ) ) |
| 15 | 5 14 | syl | |- ( A. x ( ph <-> x = y ) -> ( [. ( iota x ph ) / x ]. ph -> ( A. x ( ph -> ps ) -> [. ( iota x ph ) / x ]. ps ) ) ) |
| 16 | 15 | exlimiv | |- ( E. y A. x ( ph <-> x = y ) -> ( [. ( iota x ph ) / x ]. ph -> ( A. x ( ph -> ps ) -> [. ( iota x ph ) / x ]. ps ) ) ) |
| 17 | 2 3 16 | sylc | |- ( E! x ph -> ( A. x ( ph -> ps ) -> [. ( iota x ph ) / x ]. ps ) ) |
| 18 | iotaexeu | |- ( E! x ph -> ( iota x ph ) e. _V ) |
|
| 19 | 10 11 | anbi12d | |- ( y = ( iota x ph ) -> ( ( [. y / x ]. ph /\ [. y / x ]. ps ) <-> ( [. ( iota x ph ) / x ]. ph /\ [. ( iota x ph ) / x ]. ps ) ) ) |
| 20 | 19 | imbi1d | |- ( y = ( iota x ph ) -> ( ( ( [. y / x ]. ph /\ [. y / x ]. ps ) -> E. x ( ph /\ ps ) ) <-> ( ( [. ( iota x ph ) / x ]. ph /\ [. ( iota x ph ) / x ]. ps ) -> E. x ( ph /\ ps ) ) ) ) |
| 21 | sbcan | |- ( [. y / x ]. ( ph /\ ps ) <-> ( [. y / x ]. ph /\ [. y / x ]. ps ) ) |
|
| 22 | spesbc | |- ( [. y / x ]. ( ph /\ ps ) -> E. x ( ph /\ ps ) ) |
|
| 23 | 21 22 | sylbir | |- ( ( [. y / x ]. ph /\ [. y / x ]. ps ) -> E. x ( ph /\ ps ) ) |
| 24 | 20 23 | vtoclg | |- ( ( iota x ph ) e. _V -> ( ( [. ( iota x ph ) / x ]. ph /\ [. ( iota x ph ) / x ]. ps ) -> E. x ( ph /\ ps ) ) ) |
| 25 | 24 | expd | |- ( ( iota x ph ) e. _V -> ( [. ( iota x ph ) / x ]. ph -> ( [. ( iota x ph ) / x ]. ps -> E. x ( ph /\ ps ) ) ) ) |
| 26 | 18 3 25 | sylc | |- ( E! x ph -> ( [. ( iota x ph ) / x ]. ps -> E. x ( ph /\ ps ) ) ) |
| 27 | 26 | anc2li | |- ( E! x ph -> ( [. ( iota x ph ) / x ]. ps -> ( E! x ph /\ E. x ( ph /\ ps ) ) ) ) |
| 28 | eupicka | |- ( ( E! x ph /\ E. x ( ph /\ ps ) ) -> A. x ( ph -> ps ) ) |
|
| 29 | 27 28 | syl6 | |- ( E! x ph -> ( [. ( iota x ph ) / x ]. ps -> A. x ( ph -> ps ) ) ) |
| 30 | 17 29 | impbid | |- ( E! x ph -> ( A. x ( ph -> ps ) <-> [. ( iota x ph ) / x ]. ps ) ) |