This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: The limit of a function at the upper bound of a closed interval only depends on the values in the inner open interval. (Contributed by Glauco Siliprandi, 11-Dec-2019)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | limcicciooub.1 | |- ( ph -> A e. RR ) |
|
| limcicciooub.2 | |- ( ph -> B e. RR ) |
||
| limcicciooub.3 | |- ( ph -> A < B ) |
||
| limcicciooub.4 | |- ( ph -> F : ( A [,] B ) --> CC ) |
||
| Assertion | limcicciooub | |- ( ph -> ( ( F |` ( A (,) B ) ) limCC B ) = ( F limCC B ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | limcicciooub.1 | |- ( ph -> A e. RR ) |
|
| 2 | limcicciooub.2 | |- ( ph -> B e. RR ) |
|
| 3 | limcicciooub.3 | |- ( ph -> A < B ) |
|
| 4 | limcicciooub.4 | |- ( ph -> F : ( A [,] B ) --> CC ) |
|
| 5 | ioossicc | |- ( A (,) B ) C_ ( A [,] B ) |
|
| 6 | 5 | a1i | |- ( ph -> ( A (,) B ) C_ ( A [,] B ) ) |
| 7 | 1 2 | iccssred | |- ( ph -> ( A [,] B ) C_ RR ) |
| 8 | ax-resscn | |- RR C_ CC |
|
| 9 | 7 8 | sstrdi | |- ( ph -> ( A [,] B ) C_ CC ) |
| 10 | eqid | |- ( TopOpen ` CCfld ) = ( TopOpen ` CCfld ) |
|
| 11 | eqid | |- ( ( TopOpen ` CCfld ) |`t ( ( A [,] B ) u. { B } ) ) = ( ( TopOpen ` CCfld ) |`t ( ( A [,] B ) u. { B } ) ) |
|
| 12 | retop | |- ( topGen ` ran (,) ) e. Top |
|
| 13 | 12 | a1i | |- ( ph -> ( topGen ` ran (,) ) e. Top ) |
| 14 | 1 | rexrd | |- ( ph -> A e. RR* ) |
| 15 | iocssre | |- ( ( A e. RR* /\ B e. RR ) -> ( A (,] B ) C_ RR ) |
|
| 16 | 14 2 15 | syl2anc | |- ( ph -> ( A (,] B ) C_ RR ) |
| 17 | difssd | |- ( ph -> ( RR \ ( A [,] B ) ) C_ RR ) |
|
| 18 | 16 17 | unssd | |- ( ph -> ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) C_ RR ) |
| 19 | uniretop | |- RR = U. ( topGen ` ran (,) ) |
|
| 20 | 18 19 | sseqtrdi | |- ( ph -> ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) C_ U. ( topGen ` ran (,) ) ) |
| 21 | elioore | |- ( x e. ( A (,) +oo ) -> x e. RR ) |
|
| 22 | 21 | ad2antlr | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ x <_ B ) -> x e. RR ) |
| 23 | simplr | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ x <_ B ) -> x e. ( A (,) +oo ) ) |
|
| 24 | 14 | ad2antrr | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ x <_ B ) -> A e. RR* ) |
| 25 | pnfxr | |- +oo e. RR* |
|
| 26 | elioo2 | |- ( ( A e. RR* /\ +oo e. RR* ) -> ( x e. ( A (,) +oo ) <-> ( x e. RR /\ A < x /\ x < +oo ) ) ) |
|
| 27 | 24 25 26 | sylancl | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ x <_ B ) -> ( x e. ( A (,) +oo ) <-> ( x e. RR /\ A < x /\ x < +oo ) ) ) |
| 28 | 23 27 | mpbid | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ x <_ B ) -> ( x e. RR /\ A < x /\ x < +oo ) ) |
| 29 | 28 | simp2d | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ x <_ B ) -> A < x ) |
| 30 | simpr | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ x <_ B ) -> x <_ B ) |
|
| 31 | 2 | ad2antrr | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ x <_ B ) -> B e. RR ) |
| 32 | elioc2 | |- ( ( A e. RR* /\ B e. RR ) -> ( x e. ( A (,] B ) <-> ( x e. RR /\ A < x /\ x <_ B ) ) ) |
|
| 33 | 24 31 32 | syl2anc | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ x <_ B ) -> ( x e. ( A (,] B ) <-> ( x e. RR /\ A < x /\ x <_ B ) ) ) |
| 34 | 22 29 30 33 | mpbir3and | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ x <_ B ) -> x e. ( A (,] B ) ) |
| 35 | 34 | orcd | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ x <_ B ) -> ( x e. ( A (,] B ) \/ x e. ( RR \ ( A [,] B ) ) ) ) |
| 36 | 21 | ad2antlr | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ -. x <_ B ) -> x e. RR ) |
| 37 | 3mix3 | |- ( -. x <_ B -> ( -. x e. RR \/ -. A <_ x \/ -. x <_ B ) ) |
|
| 38 | 3ianor | |- ( -. ( x e. RR /\ A <_ x /\ x <_ B ) <-> ( -. x e. RR \/ -. A <_ x \/ -. x <_ B ) ) |
|
| 39 | 37 38 | sylibr | |- ( -. x <_ B -> -. ( x e. RR /\ A <_ x /\ x <_ B ) ) |
| 40 | 39 | adantl | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ -. x <_ B ) -> -. ( x e. RR /\ A <_ x /\ x <_ B ) ) |
| 41 | 1 | ad2antrr | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ -. x <_ B ) -> A e. RR ) |
| 42 | 2 | ad2antrr | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ -. x <_ B ) -> B e. RR ) |
| 43 | elicc2 | |- ( ( A e. RR /\ B e. RR ) -> ( x e. ( A [,] B ) <-> ( x e. RR /\ A <_ x /\ x <_ B ) ) ) |
|
| 44 | 41 42 43 | syl2anc | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ -. x <_ B ) -> ( x e. ( A [,] B ) <-> ( x e. RR /\ A <_ x /\ x <_ B ) ) ) |
| 45 | 40 44 | mtbird | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ -. x <_ B ) -> -. x e. ( A [,] B ) ) |
| 46 | 36 45 | eldifd | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ -. x <_ B ) -> x e. ( RR \ ( A [,] B ) ) ) |
| 47 | 46 | olcd | |- ( ( ( ph /\ x e. ( A (,) +oo ) ) /\ -. x <_ B ) -> ( x e. ( A (,] B ) \/ x e. ( RR \ ( A [,] B ) ) ) ) |
| 48 | 35 47 | pm2.61dan | |- ( ( ph /\ x e. ( A (,) +oo ) ) -> ( x e. ( A (,] B ) \/ x e. ( RR \ ( A [,] B ) ) ) ) |
| 49 | elun | |- ( x e. ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) <-> ( x e. ( A (,] B ) \/ x e. ( RR \ ( A [,] B ) ) ) ) |
|
| 50 | 48 49 | sylibr | |- ( ( ph /\ x e. ( A (,) +oo ) ) -> x e. ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) ) |
| 51 | 50 | ralrimiva | |- ( ph -> A. x e. ( A (,) +oo ) x e. ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) ) |
| 52 | dfss3 | |- ( ( A (,) +oo ) C_ ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) <-> A. x e. ( A (,) +oo ) x e. ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) ) |
|
| 53 | 51 52 | sylibr | |- ( ph -> ( A (,) +oo ) C_ ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) ) |
| 54 | eqid | |- U. ( topGen ` ran (,) ) = U. ( topGen ` ran (,) ) |
|
| 55 | 54 | ntrss | |- ( ( ( topGen ` ran (,) ) e. Top /\ ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) C_ U. ( topGen ` ran (,) ) /\ ( A (,) +oo ) C_ ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) ) -> ( ( int ` ( topGen ` ran (,) ) ) ` ( A (,) +oo ) ) C_ ( ( int ` ( topGen ` ran (,) ) ) ` ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) ) ) |
| 56 | 13 20 53 55 | syl3anc | |- ( ph -> ( ( int ` ( topGen ` ran (,) ) ) ` ( A (,) +oo ) ) C_ ( ( int ` ( topGen ` ran (,) ) ) ` ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) ) ) |
| 57 | 25 | a1i | |- ( ph -> +oo e. RR* ) |
| 58 | 2 | ltpnfd | |- ( ph -> B < +oo ) |
| 59 | 14 57 2 3 58 | eliood | |- ( ph -> B e. ( A (,) +oo ) ) |
| 60 | iooretop | |- ( A (,) +oo ) e. ( topGen ` ran (,) ) |
|
| 61 | isopn3i | |- ( ( ( topGen ` ran (,) ) e. Top /\ ( A (,) +oo ) e. ( topGen ` ran (,) ) ) -> ( ( int ` ( topGen ` ran (,) ) ) ` ( A (,) +oo ) ) = ( A (,) +oo ) ) |
|
| 62 | 13 60 61 | sylancl | |- ( ph -> ( ( int ` ( topGen ` ran (,) ) ) ` ( A (,) +oo ) ) = ( A (,) +oo ) ) |
| 63 | 59 62 | eleqtrrd | |- ( ph -> B e. ( ( int ` ( topGen ` ran (,) ) ) ` ( A (,) +oo ) ) ) |
| 64 | 56 63 | sseldd | |- ( ph -> B e. ( ( int ` ( topGen ` ran (,) ) ) ` ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) ) ) |
| 65 | 2 | rexrd | |- ( ph -> B e. RR* ) |
| 66 | 1 2 3 | ltled | |- ( ph -> A <_ B ) |
| 67 | ubicc2 | |- ( ( A e. RR* /\ B e. RR* /\ A <_ B ) -> B e. ( A [,] B ) ) |
|
| 68 | 14 65 66 67 | syl3anc | |- ( ph -> B e. ( A [,] B ) ) |
| 69 | 64 68 | elind | |- ( ph -> B e. ( ( ( int ` ( topGen ` ran (,) ) ) ` ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) ) i^i ( A [,] B ) ) ) |
| 70 | iocssicc | |- ( A (,] B ) C_ ( A [,] B ) |
|
| 71 | 70 | a1i | |- ( ph -> ( A (,] B ) C_ ( A [,] B ) ) |
| 72 | eqid | |- ( ( topGen ` ran (,) ) |`t ( A [,] B ) ) = ( ( topGen ` ran (,) ) |`t ( A [,] B ) ) |
|
| 73 | 19 72 | restntr | |- ( ( ( topGen ` ran (,) ) e. Top /\ ( A [,] B ) C_ RR /\ ( A (,] B ) C_ ( A [,] B ) ) -> ( ( int ` ( ( topGen ` ran (,) ) |`t ( A [,] B ) ) ) ` ( A (,] B ) ) = ( ( ( int ` ( topGen ` ran (,) ) ) ` ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) ) i^i ( A [,] B ) ) ) |
| 74 | 13 7 71 73 | syl3anc | |- ( ph -> ( ( int ` ( ( topGen ` ran (,) ) |`t ( A [,] B ) ) ) ` ( A (,] B ) ) = ( ( ( int ` ( topGen ` ran (,) ) ) ` ( ( A (,] B ) u. ( RR \ ( A [,] B ) ) ) ) i^i ( A [,] B ) ) ) |
| 75 | 69 74 | eleqtrrd | |- ( ph -> B e. ( ( int ` ( ( topGen ` ran (,) ) |`t ( A [,] B ) ) ) ` ( A (,] B ) ) ) |
| 76 | eqid | |- ( topGen ` ran (,) ) = ( topGen ` ran (,) ) |
|
| 77 | 10 76 | rerest | |- ( ( A [,] B ) C_ RR -> ( ( TopOpen ` CCfld ) |`t ( A [,] B ) ) = ( ( topGen ` ran (,) ) |`t ( A [,] B ) ) ) |
| 78 | 7 77 | syl | |- ( ph -> ( ( TopOpen ` CCfld ) |`t ( A [,] B ) ) = ( ( topGen ` ran (,) ) |`t ( A [,] B ) ) ) |
| 79 | 78 | eqcomd | |- ( ph -> ( ( topGen ` ran (,) ) |`t ( A [,] B ) ) = ( ( TopOpen ` CCfld ) |`t ( A [,] B ) ) ) |
| 80 | 79 | fveq2d | |- ( ph -> ( int ` ( ( topGen ` ran (,) ) |`t ( A [,] B ) ) ) = ( int ` ( ( TopOpen ` CCfld ) |`t ( A [,] B ) ) ) ) |
| 81 | 80 | fveq1d | |- ( ph -> ( ( int ` ( ( topGen ` ran (,) ) |`t ( A [,] B ) ) ) ` ( A (,] B ) ) = ( ( int ` ( ( TopOpen ` CCfld ) |`t ( A [,] B ) ) ) ` ( A (,] B ) ) ) |
| 82 | 75 81 | eleqtrd | |- ( ph -> B e. ( ( int ` ( ( TopOpen ` CCfld ) |`t ( A [,] B ) ) ) ` ( A (,] B ) ) ) |
| 83 | 68 | snssd | |- ( ph -> { B } C_ ( A [,] B ) ) |
| 84 | ssequn2 | |- ( { B } C_ ( A [,] B ) <-> ( ( A [,] B ) u. { B } ) = ( A [,] B ) ) |
|
| 85 | 83 84 | sylib | |- ( ph -> ( ( A [,] B ) u. { B } ) = ( A [,] B ) ) |
| 86 | 85 | eqcomd | |- ( ph -> ( A [,] B ) = ( ( A [,] B ) u. { B } ) ) |
| 87 | 86 | oveq2d | |- ( ph -> ( ( TopOpen ` CCfld ) |`t ( A [,] B ) ) = ( ( TopOpen ` CCfld ) |`t ( ( A [,] B ) u. { B } ) ) ) |
| 88 | 87 | fveq2d | |- ( ph -> ( int ` ( ( TopOpen ` CCfld ) |`t ( A [,] B ) ) ) = ( int ` ( ( TopOpen ` CCfld ) |`t ( ( A [,] B ) u. { B } ) ) ) ) |
| 89 | ioounsn | |- ( ( A e. RR* /\ B e. RR* /\ A < B ) -> ( ( A (,) B ) u. { B } ) = ( A (,] B ) ) |
|
| 90 | 14 65 3 89 | syl3anc | |- ( ph -> ( ( A (,) B ) u. { B } ) = ( A (,] B ) ) |
| 91 | 90 | eqcomd | |- ( ph -> ( A (,] B ) = ( ( A (,) B ) u. { B } ) ) |
| 92 | 88 91 | fveq12d | |- ( ph -> ( ( int ` ( ( TopOpen ` CCfld ) |`t ( A [,] B ) ) ) ` ( A (,] B ) ) = ( ( int ` ( ( TopOpen ` CCfld ) |`t ( ( A [,] B ) u. { B } ) ) ) ` ( ( A (,) B ) u. { B } ) ) ) |
| 93 | 82 92 | eleqtrd | |- ( ph -> B e. ( ( int ` ( ( TopOpen ` CCfld ) |`t ( ( A [,] B ) u. { B } ) ) ) ` ( ( A (,) B ) u. { B } ) ) ) |
| 94 | 4 6 9 10 11 93 | limcres | |- ( ph -> ( ( F |` ( A (,) B ) ) limCC B ) = ( F limCC B ) ) |