This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: A closed subspace of a complete metric space which is also a subcomplex pre-Hilbert space is a complete metric space. Remark: the assumption that the Banach space must be a (subcomplex) pre-Hilbert space is required because the definition of ClSubSp is based on an inner product. If ClSubSp was generalized to arbitrary topological spaces (or at least topological modules), this assumption could be omitted. (Contributed by AV, 8-Oct-2022)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | cmslssbn.x | |- X = ( W |`s U ) |
|
| cmscsscms.s | |- S = ( ClSubSp ` W ) |
||
| Assertion | cmscsscms | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> X e. CMetSp ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | cmslssbn.x | |- X = ( W |`s U ) |
|
| 2 | cmscsscms.s | |- S = ( ClSubSp ` W ) |
|
| 3 | cmsms | |- ( W e. CMetSp -> W e. MetSp ) |
|
| 4 | 3 | adantr | |- ( ( W e. CMetSp /\ W e. CPreHil ) -> W e. MetSp ) |
| 5 | ressms | |- ( ( W e. MetSp /\ U e. S ) -> ( W |`s U ) e. MetSp ) |
|
| 6 | 4 5 | sylan | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( W |`s U ) e. MetSp ) |
| 7 | 1 6 | eqeltrid | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> X e. MetSp ) |
| 8 | cphlmod | |- ( W e. CPreHil -> W e. LMod ) |
|
| 9 | 8 | adantl | |- ( ( W e. CMetSp /\ W e. CPreHil ) -> W e. LMod ) |
| 10 | 9 | adantr | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> W e. LMod ) |
| 11 | cphphl | |- ( W e. CPreHil -> W e. PreHil ) |
|
| 12 | 11 | adantl | |- ( ( W e. CMetSp /\ W e. CPreHil ) -> W e. PreHil ) |
| 13 | eqid | |- ( LSubSp ` W ) = ( LSubSp ` W ) |
|
| 14 | 2 13 | csslss | |- ( ( W e. PreHil /\ U e. S ) -> U e. ( LSubSp ` W ) ) |
| 15 | 12 14 | sylan | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> U e. ( LSubSp ` W ) ) |
| 16 | 13 | lsssubg | |- ( ( W e. LMod /\ U e. ( LSubSp ` W ) ) -> U e. ( SubGrp ` W ) ) |
| 17 | 10 15 16 | syl2anc | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> U e. ( SubGrp ` W ) ) |
| 18 | 1 | subgbas | |- ( U e. ( SubGrp ` W ) -> U = ( Base ` X ) ) |
| 19 | 17 18 | syl | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> U = ( Base ` X ) ) |
| 20 | eqid | |- ( TopOpen ` W ) = ( TopOpen ` W ) |
|
| 21 | 2 20 | csscld | |- ( ( W e. CPreHil /\ U e. S ) -> U e. ( Clsd ` ( TopOpen ` W ) ) ) |
| 22 | 21 | adantll | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> U e. ( Clsd ` ( TopOpen ` W ) ) ) |
| 23 | 19 22 | eqeltrrd | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( Base ` X ) e. ( Clsd ` ( TopOpen ` W ) ) ) |
| 24 | eqid | |- ( dist ` W ) = ( dist ` W ) |
|
| 25 | 1 24 | ressds | |- ( U e. S -> ( dist ` W ) = ( dist ` X ) ) |
| 26 | 25 | adantl | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( dist ` W ) = ( dist ` X ) ) |
| 27 | 26 | eqcomd | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( dist ` X ) = ( dist ` W ) ) |
| 28 | 27 | reseq1d | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( ( dist ` X ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) = ( ( dist ` W ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) ) |
| 29 | 19 17 | eqeltrrd | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( Base ` X ) e. ( SubGrp ` W ) ) |
| 30 | eqid | |- ( Base ` W ) = ( Base ` W ) |
|
| 31 | 30 | subgss | |- ( ( Base ` X ) e. ( SubGrp ` W ) -> ( Base ` X ) C_ ( Base ` W ) ) |
| 32 | 29 31 | syl | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( Base ` X ) C_ ( Base ` W ) ) |
| 33 | xpss12 | |- ( ( ( Base ` X ) C_ ( Base ` W ) /\ ( Base ` X ) C_ ( Base ` W ) ) -> ( ( Base ` X ) X. ( Base ` X ) ) C_ ( ( Base ` W ) X. ( Base ` W ) ) ) |
|
| 34 | 32 32 33 | syl2anc | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( ( Base ` X ) X. ( Base ` X ) ) C_ ( ( Base ` W ) X. ( Base ` W ) ) ) |
| 35 | 34 | resabs1d | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) = ( ( dist ` W ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) ) |
| 36 | 28 35 | eqtr4d | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( ( dist ` X ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) = ( ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) ) |
| 37 | 36 | eleq1d | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( ( ( dist ` X ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) e. ( CMet ` ( Base ` X ) ) <-> ( ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) e. ( CMet ` ( Base ` X ) ) ) ) |
| 38 | eqid | |- ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) = ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) |
|
| 39 | 30 38 | cmscmet | |- ( W e. CMetSp -> ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) e. ( CMet ` ( Base ` W ) ) ) |
| 40 | 39 | adantr | |- ( ( W e. CMetSp /\ W e. CPreHil ) -> ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) e. ( CMet ` ( Base ` W ) ) ) |
| 41 | 40 | adantr | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) e. ( CMet ` ( Base ` W ) ) ) |
| 42 | eqid | |- ( MetOpen ` ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) ) = ( MetOpen ` ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) ) |
|
| 43 | 42 | cmetss | |- ( ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) e. ( CMet ` ( Base ` W ) ) -> ( ( ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) e. ( CMet ` ( Base ` X ) ) <-> ( Base ` X ) e. ( Clsd ` ( MetOpen ` ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) ) ) ) ) |
| 44 | 41 43 | syl | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( ( ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) e. ( CMet ` ( Base ` X ) ) <-> ( Base ` X ) e. ( Clsd ` ( MetOpen ` ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) ) ) ) ) |
| 45 | 4 | adantr | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> W e. MetSp ) |
| 46 | 20 30 38 | mstopn | |- ( W e. MetSp -> ( TopOpen ` W ) = ( MetOpen ` ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) ) ) |
| 47 | 45 46 | syl | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( TopOpen ` W ) = ( MetOpen ` ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) ) ) |
| 48 | 47 | eqcomd | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( MetOpen ` ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) ) = ( TopOpen ` W ) ) |
| 49 | 48 | fveq2d | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( Clsd ` ( MetOpen ` ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) ) ) = ( Clsd ` ( TopOpen ` W ) ) ) |
| 50 | 49 | eleq2d | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( ( Base ` X ) e. ( Clsd ` ( MetOpen ` ( ( dist ` W ) |` ( ( Base ` W ) X. ( Base ` W ) ) ) ) ) <-> ( Base ` X ) e. ( Clsd ` ( TopOpen ` W ) ) ) ) |
| 51 | 37 44 50 | 3bitrd | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( ( ( dist ` X ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) e. ( CMet ` ( Base ` X ) ) <-> ( Base ` X ) e. ( Clsd ` ( TopOpen ` W ) ) ) ) |
| 52 | 23 51 | mpbird | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> ( ( dist ` X ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) e. ( CMet ` ( Base ` X ) ) ) |
| 53 | eqid | |- ( Base ` X ) = ( Base ` X ) |
|
| 54 | eqid | |- ( ( dist ` X ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) = ( ( dist ` X ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) |
|
| 55 | 53 54 | iscms | |- ( X e. CMetSp <-> ( X e. MetSp /\ ( ( dist ` X ) |` ( ( Base ` X ) X. ( Base ` X ) ) ) e. ( CMet ` ( Base ` X ) ) ) ) |
| 56 | 7 52 55 | sylanbrc | |- ( ( ( W e. CMetSp /\ W e. CPreHil ) /\ U e. S ) -> X e. CMetSp ) |