| 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 ) |