Metamath Proof Explorer


Theorem isngp2

Description: The property of being a normed group. (Contributed by Mario Carneiro, 2-Oct-2015)

Ref Expression
Hypotheses isngp.n 𝑁 = ( norm ‘ 𝐺 )
isngp.z = ( -g𝐺 )
isngp.d 𝐷 = ( dist ‘ 𝐺 )
isngp2.x 𝑋 = ( Base ‘ 𝐺 )
isngp2.e 𝐸 = ( 𝐷 ↾ ( 𝑋 × 𝑋 ) )
Assertion isngp2 ( 𝐺 ∈ NrmGrp ↔ ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ∧ ( 𝑁 ) = 𝐸 ) )

Proof

Step Hyp Ref Expression
1 isngp.n 𝑁 = ( norm ‘ 𝐺 )
2 isngp.z = ( -g𝐺 )
3 isngp.d 𝐷 = ( dist ‘ 𝐺 )
4 isngp2.x 𝑋 = ( Base ‘ 𝐺 )
5 isngp2.e 𝐸 = ( 𝐷 ↾ ( 𝑋 × 𝑋 ) )
6 1 2 3 isngp ( 𝐺 ∈ NrmGrp ↔ ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ∧ ( 𝑁 ) ⊆ 𝐷 ) )
7 resss ( 𝐷 ↾ ( 𝑋 × 𝑋 ) ) ⊆ 𝐷
8 5 7 eqsstri 𝐸𝐷
9 sseq1 ( ( 𝑁 ) = 𝐸 → ( ( 𝑁 ) ⊆ 𝐷𝐸𝐷 ) )
10 8 9 mpbiri ( ( 𝑁 ) = 𝐸 → ( 𝑁 ) ⊆ 𝐷 )
11 3 reseq1i ( 𝐷 ↾ ( 𝑋 × 𝑋 ) ) = ( ( dist ‘ 𝐺 ) ↾ ( 𝑋 × 𝑋 ) )
12 5 11 eqtri 𝐸 = ( ( dist ‘ 𝐺 ) ↾ ( 𝑋 × 𝑋 ) )
13 4 12 msmet ( 𝐺 ∈ MetSp → 𝐸 ∈ ( Met ‘ 𝑋 ) )
14 1 4 3 5 nmf2 ( ( 𝐺 ∈ Grp ∧ 𝐸 ∈ ( Met ‘ 𝑋 ) ) → 𝑁 : 𝑋 ⟶ ℝ )
15 13 14 sylan2 ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) → 𝑁 : 𝑋 ⟶ ℝ )
16 4 2 grpsubf ( 𝐺 ∈ Grp → : ( 𝑋 × 𝑋 ) ⟶ 𝑋 )
17 16 ad2antrr ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → : ( 𝑋 × 𝑋 ) ⟶ 𝑋 )
18 fco ( ( 𝑁 : 𝑋 ⟶ ℝ ∧ : ( 𝑋 × 𝑋 ) ⟶ 𝑋 ) → ( 𝑁 ) : ( 𝑋 × 𝑋 ) ⟶ ℝ )
19 15 17 18 syl2an2r ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → ( 𝑁 ) : ( 𝑋 × 𝑋 ) ⟶ ℝ )
20 19 fdmd ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → dom ( 𝑁 ) = ( 𝑋 × 𝑋 ) )
21 20 reseq2d ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → ( 𝐸 ↾ dom ( 𝑁 ) ) = ( 𝐸 ↾ ( 𝑋 × 𝑋 ) ) )
22 4 12 msf ( 𝐺 ∈ MetSp → 𝐸 : ( 𝑋 × 𝑋 ) ⟶ ℝ )
23 22 ad2antlr ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → 𝐸 : ( 𝑋 × 𝑋 ) ⟶ ℝ )
24 23 ffund ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → Fun 𝐸 )
25 simpr ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → ( 𝑁 ) ⊆ 𝐷 )
26 ssv ℝ ⊆ V
27 fss ( ( ( 𝑁 ) : ( 𝑋 × 𝑋 ) ⟶ ℝ ∧ ℝ ⊆ V ) → ( 𝑁 ) : ( 𝑋 × 𝑋 ) ⟶ V )
28 19 26 27 sylancl ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → ( 𝑁 ) : ( 𝑋 × 𝑋 ) ⟶ V )
29 fssxp ( ( 𝑁 ) : ( 𝑋 × 𝑋 ) ⟶ V → ( 𝑁 ) ⊆ ( ( 𝑋 × 𝑋 ) × V ) )
30 28 29 syl ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → ( 𝑁 ) ⊆ ( ( 𝑋 × 𝑋 ) × V ) )
31 25 30 ssind ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → ( 𝑁 ) ⊆ ( 𝐷 ∩ ( ( 𝑋 × 𝑋 ) × V ) ) )
32 df-res ( 𝐷 ↾ ( 𝑋 × 𝑋 ) ) = ( 𝐷 ∩ ( ( 𝑋 × 𝑋 ) × V ) )
33 5 32 eqtri 𝐸 = ( 𝐷 ∩ ( ( 𝑋 × 𝑋 ) × V ) )
34 31 33 sseqtrrdi ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → ( 𝑁 ) ⊆ 𝐸 )
35 funssres ( ( Fun 𝐸 ∧ ( 𝑁 ) ⊆ 𝐸 ) → ( 𝐸 ↾ dom ( 𝑁 ) ) = ( 𝑁 ) )
36 24 34 35 syl2anc ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → ( 𝐸 ↾ dom ( 𝑁 ) ) = ( 𝑁 ) )
37 ffn ( 𝐸 : ( 𝑋 × 𝑋 ) ⟶ ℝ → 𝐸 Fn ( 𝑋 × 𝑋 ) )
38 fnresdm ( 𝐸 Fn ( 𝑋 × 𝑋 ) → ( 𝐸 ↾ ( 𝑋 × 𝑋 ) ) = 𝐸 )
39 23 37 38 3syl ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → ( 𝐸 ↾ ( 𝑋 × 𝑋 ) ) = 𝐸 )
40 21 36 39 3eqtr3d ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) → ( 𝑁 ) = 𝐸 )
41 40 ex ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) → ( ( 𝑁 ) ⊆ 𝐷 → ( 𝑁 ) = 𝐸 ) )
42 10 41 impbid2 ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) → ( ( 𝑁 ) = 𝐸 ↔ ( 𝑁 ) ⊆ 𝐷 ) )
43 42 pm5.32i ( ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) = 𝐸 ) ↔ ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) )
44 df-3an ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ∧ ( 𝑁 ) = 𝐸 ) ↔ ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) = 𝐸 ) )
45 df-3an ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ∧ ( 𝑁 ) ⊆ 𝐷 ) ↔ ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ) ∧ ( 𝑁 ) ⊆ 𝐷 ) )
46 43 44 45 3bitr4i ( ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ∧ ( 𝑁 ) = 𝐸 ) ↔ ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ∧ ( 𝑁 ) ⊆ 𝐷 ) )
47 6 46 bitr4i ( 𝐺 ∈ NrmGrp ↔ ( 𝐺 ∈ Grp ∧ 𝐺 ∈ MetSp ∧ ( 𝑁 ) = 𝐸 ) )