MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  nrmmetd Structured version   Visualization version   GIF version

Theorem nrmmetd 23111
Description: Show that a group norm generates a metric. Part of Definition 2.2-1 of [Kreyszig] p. 58. (Contributed by NM, 4-Dec-2006.) (Revised by Mario Carneiro, 2-Oct-2015.)
Hypotheses
Ref Expression
nrmmetd.x 𝑋 = (Base‘𝐺)
nrmmetd.m = (-g𝐺)
nrmmetd.z 0 = (0g𝐺)
nrmmetd.g (𝜑𝐺 ∈ Grp)
nrmmetd.f (𝜑𝐹:𝑋⟶ℝ)
nrmmetd.1 ((𝜑𝑥𝑋) → ((𝐹𝑥) = 0 ↔ 𝑥 = 0 ))
nrmmetd.2 ((𝜑 ∧ (𝑥𝑋𝑦𝑋)) → (𝐹‘(𝑥 𝑦)) ≤ ((𝐹𝑥) + (𝐹𝑦)))
Assertion
Ref Expression
nrmmetd (𝜑 → (𝐹 ) ∈ (Met‘𝑋))
Distinct variable groups:   𝑥,𝑦,   𝑥, 0 ,𝑦   𝑥,𝐹,𝑦   𝜑,𝑥,𝑦   𝑥,𝑋,𝑦
Allowed substitution hints:   𝐺(𝑥,𝑦)

Proof of Theorem nrmmetd
Dummy variables 𝑎 𝑏 𝑐 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 nrmmetd.f . . 3 (𝜑𝐹:𝑋⟶ℝ)
2 nrmmetd.g . . . 4 (𝜑𝐺 ∈ Grp)
3 nrmmetd.x . . . . 5 𝑋 = (Base‘𝐺)
4 nrmmetd.m . . . . 5 = (-g𝐺)
53, 4grpsubf 18116 . . . 4 (𝐺 ∈ Grp → :(𝑋 × 𝑋)⟶𝑋)
62, 5syl 17 . . 3 (𝜑 :(𝑋 × 𝑋)⟶𝑋)
7 fco 6524 . . 3 ((𝐹:𝑋⟶ℝ ∧ :(𝑋 × 𝑋)⟶𝑋) → (𝐹 ):(𝑋 × 𝑋)⟶ℝ)
81, 6, 7syl2anc 584 . 2 (𝜑 → (𝐹 ):(𝑋 × 𝑋)⟶ℝ)
9 opelxpi 5585 . . . . . . . 8 ((𝑎𝑋𝑏𝑋) → ⟨𝑎, 𝑏⟩ ∈ (𝑋 × 𝑋))
10 fvco3 6753 . . . . . . . 8 (( :(𝑋 × 𝑋)⟶𝑋 ∧ ⟨𝑎, 𝑏⟩ ∈ (𝑋 × 𝑋)) → ((𝐹 )‘⟨𝑎, 𝑏⟩) = (𝐹‘( ‘⟨𝑎, 𝑏⟩)))
116, 9, 10syl2an 595 . . . . . . 7 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → ((𝐹 )‘⟨𝑎, 𝑏⟩) = (𝐹‘( ‘⟨𝑎, 𝑏⟩)))
12 df-ov 7148 . . . . . . 7 (𝑎(𝐹 )𝑏) = ((𝐹 )‘⟨𝑎, 𝑏⟩)
13 df-ov 7148 . . . . . . . 8 (𝑎 𝑏) = ( ‘⟨𝑎, 𝑏⟩)
1413fveq2i 6666 . . . . . . 7 (𝐹‘(𝑎 𝑏)) = (𝐹‘( ‘⟨𝑎, 𝑏⟩))
1511, 12, 143eqtr4g 2878 . . . . . 6 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (𝑎(𝐹 )𝑏) = (𝐹‘(𝑎 𝑏)))
1615eqeq1d 2820 . . . . 5 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → ((𝑎(𝐹 )𝑏) = 0 ↔ (𝐹‘(𝑎 𝑏)) = 0))
17 nrmmetd.1 . . . . . . 7 ((𝜑𝑥𝑋) → ((𝐹𝑥) = 0 ↔ 𝑥 = 0 ))
1817ralrimiva 3179 . . . . . 6 (𝜑 → ∀𝑥𝑋 ((𝐹𝑥) = 0 ↔ 𝑥 = 0 ))
193, 4grpsubcl 18117 . . . . . . . 8 ((𝐺 ∈ Grp ∧ 𝑎𝑋𝑏𝑋) → (𝑎 𝑏) ∈ 𝑋)
20193expb 1112 . . . . . . 7 ((𝐺 ∈ Grp ∧ (𝑎𝑋𝑏𝑋)) → (𝑎 𝑏) ∈ 𝑋)
212, 20sylan 580 . . . . . 6 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (𝑎 𝑏) ∈ 𝑋)
22 fveq2 6663 . . . . . . . . 9 (𝑥 = (𝑎 𝑏) → (𝐹𝑥) = (𝐹‘(𝑎 𝑏)))
2322eqeq1d 2820 . . . . . . . 8 (𝑥 = (𝑎 𝑏) → ((𝐹𝑥) = 0 ↔ (𝐹‘(𝑎 𝑏)) = 0))
24 eqeq1 2822 . . . . . . . 8 (𝑥 = (𝑎 𝑏) → (𝑥 = 0 ↔ (𝑎 𝑏) = 0 ))
2523, 24bibi12d 347 . . . . . . 7 (𝑥 = (𝑎 𝑏) → (((𝐹𝑥) = 0 ↔ 𝑥 = 0 ) ↔ ((𝐹‘(𝑎 𝑏)) = 0 ↔ (𝑎 𝑏) = 0 )))
2625rspccva 3619 . . . . . 6 ((∀𝑥𝑋 ((𝐹𝑥) = 0 ↔ 𝑥 = 0 ) ∧ (𝑎 𝑏) ∈ 𝑋) → ((𝐹‘(𝑎 𝑏)) = 0 ↔ (𝑎 𝑏) = 0 ))
2718, 21, 26syl2an2r 681 . . . . 5 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → ((𝐹‘(𝑎 𝑏)) = 0 ↔ (𝑎 𝑏) = 0 ))
28 nrmmetd.z . . . . . . . 8 0 = (0g𝐺)
293, 28, 4grpsubeq0 18123 . . . . . . 7 ((𝐺 ∈ Grp ∧ 𝑎𝑋𝑏𝑋) → ((𝑎 𝑏) = 0𝑎 = 𝑏))
30293expb 1112 . . . . . 6 ((𝐺 ∈ Grp ∧ (𝑎𝑋𝑏𝑋)) → ((𝑎 𝑏) = 0𝑎 = 𝑏))
312, 30sylan 580 . . . . 5 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → ((𝑎 𝑏) = 0𝑎 = 𝑏))
3216, 27, 313bitrd 306 . . . 4 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → ((𝑎(𝐹 )𝑏) = 0 ↔ 𝑎 = 𝑏))
331adantr 481 . . . . . . . . 9 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → 𝐹:𝑋⟶ℝ)
3421adantrr 713 . . . . . . . . 9 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝑎 𝑏) ∈ 𝑋)
3533, 34ffvelrnd 6844 . . . . . . . 8 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝐹‘(𝑎 𝑏)) ∈ ℝ)
362adantr 481 . . . . . . . . . . 11 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → 𝐺 ∈ Grp)
37 simprll 775 . . . . . . . . . . 11 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → 𝑎𝑋)
38 simprr 769 . . . . . . . . . . 11 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → 𝑐𝑋)
393, 4grpsubcl 18117 . . . . . . . . . . 11 ((𝐺 ∈ Grp ∧ 𝑎𝑋𝑐𝑋) → (𝑎 𝑐) ∈ 𝑋)
4036, 37, 38, 39syl3anc 1363 . . . . . . . . . 10 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝑎 𝑐) ∈ 𝑋)
4133, 40ffvelrnd 6844 . . . . . . . . 9 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝐹‘(𝑎 𝑐)) ∈ ℝ)
42 simprlr 776 . . . . . . . . . . 11 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → 𝑏𝑋)
433, 4grpsubcl 18117 . . . . . . . . . . 11 ((𝐺 ∈ Grp ∧ 𝑏𝑋𝑐𝑋) → (𝑏 𝑐) ∈ 𝑋)
4436, 42, 38, 43syl3anc 1363 . . . . . . . . . 10 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝑏 𝑐) ∈ 𝑋)
4533, 44ffvelrnd 6844 . . . . . . . . 9 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝐹‘(𝑏 𝑐)) ∈ ℝ)
4641, 45readdcld 10658 . . . . . . . 8 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → ((𝐹‘(𝑎 𝑐)) + (𝐹‘(𝑏 𝑐))) ∈ ℝ)
473, 4grpsubcl 18117 . . . . . . . . . . 11 ((𝐺 ∈ Grp ∧ 𝑐𝑋𝑎𝑋) → (𝑐 𝑎) ∈ 𝑋)
4836, 38, 37, 47syl3anc 1363 . . . . . . . . . 10 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝑐 𝑎) ∈ 𝑋)
4933, 48ffvelrnd 6844 . . . . . . . . 9 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝐹‘(𝑐 𝑎)) ∈ ℝ)
503, 4grpsubcl 18117 . . . . . . . . . . 11 ((𝐺 ∈ Grp ∧ 𝑐𝑋𝑏𝑋) → (𝑐 𝑏) ∈ 𝑋)
5136, 38, 42, 50syl3anc 1363 . . . . . . . . . 10 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝑐 𝑏) ∈ 𝑋)
5233, 51ffvelrnd 6844 . . . . . . . . 9 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝐹‘(𝑐 𝑏)) ∈ ℝ)
5349, 52readdcld 10658 . . . . . . . 8 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → ((𝐹‘(𝑐 𝑎)) + (𝐹‘(𝑐 𝑏))) ∈ ℝ)
543, 4grpnnncan2 18134 . . . . . . . . . . 11 ((𝐺 ∈ Grp ∧ (𝑎𝑋𝑏𝑋𝑐𝑋)) → ((𝑎 𝑐) (𝑏 𝑐)) = (𝑎 𝑏))
5536, 37, 42, 38, 54syl13anc 1364 . . . . . . . . . 10 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → ((𝑎 𝑐) (𝑏 𝑐)) = (𝑎 𝑏))
5655fveq2d 6667 . . . . . . . . 9 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝐹‘((𝑎 𝑐) (𝑏 𝑐))) = (𝐹‘(𝑎 𝑏)))
57 nrmmetd.2 . . . . . . . . . . . 12 ((𝜑 ∧ (𝑥𝑋𝑦𝑋)) → (𝐹‘(𝑥 𝑦)) ≤ ((𝐹𝑥) + (𝐹𝑦)))
5857ralrimivva 3188 . . . . . . . . . . 11 (𝜑 → ∀𝑥𝑋𝑦𝑋 (𝐹‘(𝑥 𝑦)) ≤ ((𝐹𝑥) + (𝐹𝑦)))
5958adantr 481 . . . . . . . . . 10 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → ∀𝑥𝑋𝑦𝑋 (𝐹‘(𝑥 𝑦)) ≤ ((𝐹𝑥) + (𝐹𝑦)))
60 fvoveq1 7168 . . . . . . . . . . . 12 (𝑥 = (𝑎 𝑐) → (𝐹‘(𝑥 𝑦)) = (𝐹‘((𝑎 𝑐) 𝑦)))
61 fveq2 6663 . . . . . . . . . . . . 13 (𝑥 = (𝑎 𝑐) → (𝐹𝑥) = (𝐹‘(𝑎 𝑐)))
6261oveq1d 7160 . . . . . . . . . . . 12 (𝑥 = (𝑎 𝑐) → ((𝐹𝑥) + (𝐹𝑦)) = ((𝐹‘(𝑎 𝑐)) + (𝐹𝑦)))
6360, 62breq12d 5070 . . . . . . . . . . 11 (𝑥 = (𝑎 𝑐) → ((𝐹‘(𝑥 𝑦)) ≤ ((𝐹𝑥) + (𝐹𝑦)) ↔ (𝐹‘((𝑎 𝑐) 𝑦)) ≤ ((𝐹‘(𝑎 𝑐)) + (𝐹𝑦))))
64 oveq2 7153 . . . . . . . . . . . . 13 (𝑦 = (𝑏 𝑐) → ((𝑎 𝑐) 𝑦) = ((𝑎 𝑐) (𝑏 𝑐)))
6564fveq2d 6667 . . . . . . . . . . . 12 (𝑦 = (𝑏 𝑐) → (𝐹‘((𝑎 𝑐) 𝑦)) = (𝐹‘((𝑎 𝑐) (𝑏 𝑐))))
66 fveq2 6663 . . . . . . . . . . . . 13 (𝑦 = (𝑏 𝑐) → (𝐹𝑦) = (𝐹‘(𝑏 𝑐)))
6766oveq2d 7161 . . . . . . . . . . . 12 (𝑦 = (𝑏 𝑐) → ((𝐹‘(𝑎 𝑐)) + (𝐹𝑦)) = ((𝐹‘(𝑎 𝑐)) + (𝐹‘(𝑏 𝑐))))
6865, 67breq12d 5070 . . . . . . . . . . 11 (𝑦 = (𝑏 𝑐) → ((𝐹‘((𝑎 𝑐) 𝑦)) ≤ ((𝐹‘(𝑎 𝑐)) + (𝐹𝑦)) ↔ (𝐹‘((𝑎 𝑐) (𝑏 𝑐))) ≤ ((𝐹‘(𝑎 𝑐)) + (𝐹‘(𝑏 𝑐)))))
6963, 68rspc2va 3631 . . . . . . . . . 10 ((((𝑎 𝑐) ∈ 𝑋 ∧ (𝑏 𝑐) ∈ 𝑋) ∧ ∀𝑥𝑋𝑦𝑋 (𝐹‘(𝑥 𝑦)) ≤ ((𝐹𝑥) + (𝐹𝑦))) → (𝐹‘((𝑎 𝑐) (𝑏 𝑐))) ≤ ((𝐹‘(𝑎 𝑐)) + (𝐹‘(𝑏 𝑐))))
7040, 44, 59, 69syl21anc 833 . . . . . . . . 9 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝐹‘((𝑎 𝑐) (𝑏 𝑐))) ≤ ((𝐹‘(𝑎 𝑐)) + (𝐹‘(𝑏 𝑐))))
7156, 70eqbrtrrd 5081 . . . . . . . 8 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝐹‘(𝑎 𝑏)) ≤ ((𝐹‘(𝑎 𝑐)) + (𝐹‘(𝑏 𝑐))))
72 eleq1w 2892 . . . . . . . . . . . . . 14 (𝑏 = 𝑐 → (𝑏𝑋𝑐𝑋))
7372anbi2d 628 . . . . . . . . . . . . 13 (𝑏 = 𝑐 → ((𝑎𝑋𝑏𝑋) ↔ (𝑎𝑋𝑐𝑋)))
7473anbi2d 628 . . . . . . . . . . . 12 (𝑏 = 𝑐 → ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) ↔ (𝜑 ∧ (𝑎𝑋𝑐𝑋))))
75 oveq2 7153 . . . . . . . . . . . . . 14 (𝑏 = 𝑐 → (𝑎 𝑏) = (𝑎 𝑐))
7675fveq2d 6667 . . . . . . . . . . . . 13 (𝑏 = 𝑐 → (𝐹‘(𝑎 𝑏)) = (𝐹‘(𝑎 𝑐)))
77 fvoveq1 7168 . . . . . . . . . . . . 13 (𝑏 = 𝑐 → (𝐹‘(𝑏 𝑎)) = (𝐹‘(𝑐 𝑎)))
7876, 77breq12d 5070 . . . . . . . . . . . 12 (𝑏 = 𝑐 → ((𝐹‘(𝑎 𝑏)) ≤ (𝐹‘(𝑏 𝑎)) ↔ (𝐹‘(𝑎 𝑐)) ≤ (𝐹‘(𝑐 𝑎))))
7974, 78imbi12d 346 . . . . . . . . . . 11 (𝑏 = 𝑐 → (((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (𝐹‘(𝑎 𝑏)) ≤ (𝐹‘(𝑏 𝑎))) ↔ ((𝜑 ∧ (𝑎𝑋𝑐𝑋)) → (𝐹‘(𝑎 𝑐)) ≤ (𝐹‘(𝑐 𝑎)))))
802adantr 481 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → 𝐺 ∈ Grp)
813, 28grpidcl 18069 . . . . . . . . . . . . . 14 (𝐺 ∈ Grp → 0𝑋)
8280, 81syl 17 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → 0𝑋)
83 simprr 769 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → 𝑏𝑋)
84 simprl 767 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → 𝑎𝑋)
853, 4grpsubcl 18117 . . . . . . . . . . . . . 14 ((𝐺 ∈ Grp ∧ 𝑏𝑋𝑎𝑋) → (𝑏 𝑎) ∈ 𝑋)
8680, 83, 84, 85syl3anc 1363 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (𝑏 𝑎) ∈ 𝑋)
8758adantr 481 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → ∀𝑥𝑋𝑦𝑋 (𝐹‘(𝑥 𝑦)) ≤ ((𝐹𝑥) + (𝐹𝑦)))
88 fvoveq1 7168 . . . . . . . . . . . . . . 15 (𝑥 = 0 → (𝐹‘(𝑥 𝑦)) = (𝐹‘( 0 𝑦)))
89 fveq2 6663 . . . . . . . . . . . . . . . 16 (𝑥 = 0 → (𝐹𝑥) = (𝐹0 ))
9089oveq1d 7160 . . . . . . . . . . . . . . 15 (𝑥 = 0 → ((𝐹𝑥) + (𝐹𝑦)) = ((𝐹0 ) + (𝐹𝑦)))
9188, 90breq12d 5070 . . . . . . . . . . . . . 14 (𝑥 = 0 → ((𝐹‘(𝑥 𝑦)) ≤ ((𝐹𝑥) + (𝐹𝑦)) ↔ (𝐹‘( 0 𝑦)) ≤ ((𝐹0 ) + (𝐹𝑦))))
92 oveq2 7153 . . . . . . . . . . . . . . . 16 (𝑦 = (𝑏 𝑎) → ( 0 𝑦) = ( 0 (𝑏 𝑎)))
9392fveq2d 6667 . . . . . . . . . . . . . . 15 (𝑦 = (𝑏 𝑎) → (𝐹‘( 0 𝑦)) = (𝐹‘( 0 (𝑏 𝑎))))
94 fveq2 6663 . . . . . . . . . . . . . . . 16 (𝑦 = (𝑏 𝑎) → (𝐹𝑦) = (𝐹‘(𝑏 𝑎)))
9594oveq2d 7161 . . . . . . . . . . . . . . 15 (𝑦 = (𝑏 𝑎) → ((𝐹0 ) + (𝐹𝑦)) = ((𝐹0 ) + (𝐹‘(𝑏 𝑎))))
9693, 95breq12d 5070 . . . . . . . . . . . . . 14 (𝑦 = (𝑏 𝑎) → ((𝐹‘( 0 𝑦)) ≤ ((𝐹0 ) + (𝐹𝑦)) ↔ (𝐹‘( 0 (𝑏 𝑎))) ≤ ((𝐹0 ) + (𝐹‘(𝑏 𝑎)))))
9791, 96rspc2va 3631 . . . . . . . . . . . . 13 ((( 0𝑋 ∧ (𝑏 𝑎) ∈ 𝑋) ∧ ∀𝑥𝑋𝑦𝑋 (𝐹‘(𝑥 𝑦)) ≤ ((𝐹𝑥) + (𝐹𝑦))) → (𝐹‘( 0 (𝑏 𝑎))) ≤ ((𝐹0 ) + (𝐹‘(𝑏 𝑎))))
9882, 86, 87, 97syl21anc 833 . . . . . . . . . . . 12 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (𝐹‘( 0 (𝑏 𝑎))) ≤ ((𝐹0 ) + (𝐹‘(𝑏 𝑎))))
99 eqid 2818 . . . . . . . . . . . . . . . 16 (invg𝐺) = (invg𝐺)
1003, 4, 99, 28grpinvval2 18120 . . . . . . . . . . . . . . 15 ((𝐺 ∈ Grp ∧ (𝑏 𝑎) ∈ 𝑋) → ((invg𝐺)‘(𝑏 𝑎)) = ( 0 (𝑏 𝑎)))
1012, 86, 100syl2an2r 681 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → ((invg𝐺)‘(𝑏 𝑎)) = ( 0 (𝑏 𝑎)))
1023, 4, 99grpinvsub 18119 . . . . . . . . . . . . . . 15 ((𝐺 ∈ Grp ∧ 𝑏𝑋𝑎𝑋) → ((invg𝐺)‘(𝑏 𝑎)) = (𝑎 𝑏))
10380, 83, 84, 102syl3anc 1363 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → ((invg𝐺)‘(𝑏 𝑎)) = (𝑎 𝑏))
104101, 103eqtr3d 2855 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → ( 0 (𝑏 𝑎)) = (𝑎 𝑏))
105104fveq2d 6667 . . . . . . . . . . . 12 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (𝐹‘( 0 (𝑏 𝑎))) = (𝐹‘(𝑎 𝑏)))
1062, 81syl 17 . . . . . . . . . . . . . . . 16 (𝜑0𝑋)
107 pm5.501 368 . . . . . . . . . . . . . . . . . . 19 (𝑥 = 0 → ((𝐹𝑥) = 0 ↔ (𝑥 = 0 ↔ (𝐹𝑥) = 0)))
108 bicom 223 . . . . . . . . . . . . . . . . . . 19 ((𝑥 = 0 ↔ (𝐹𝑥) = 0) ↔ ((𝐹𝑥) = 0 ↔ 𝑥 = 0 ))
109107, 108syl6bb 288 . . . . . . . . . . . . . . . . . 18 (𝑥 = 0 → ((𝐹𝑥) = 0 ↔ ((𝐹𝑥) = 0 ↔ 𝑥 = 0 )))
11089eqeq1d 2820 . . . . . . . . . . . . . . . . . 18 (𝑥 = 0 → ((𝐹𝑥) = 0 ↔ (𝐹0 ) = 0))
111109, 110bitr3d 282 . . . . . . . . . . . . . . . . 17 (𝑥 = 0 → (((𝐹𝑥) = 0 ↔ 𝑥 = 0 ) ↔ (𝐹0 ) = 0))
112111rspccva 3619 . . . . . . . . . . . . . . . 16 ((∀𝑥𝑋 ((𝐹𝑥) = 0 ↔ 𝑥 = 0 ) ∧ 0𝑋) → (𝐹0 ) = 0)
11318, 106, 112syl2anc 584 . . . . . . . . . . . . . . 15 (𝜑 → (𝐹0 ) = 0)
114113adantr 481 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (𝐹0 ) = 0)
115114oveq1d 7160 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → ((𝐹0 ) + (𝐹‘(𝑏 𝑎))) = (0 + (𝐹‘(𝑏 𝑎))))
1161adantr 481 . . . . . . . . . . . . . . . 16 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → 𝐹:𝑋⟶ℝ)
117116, 86ffvelrnd 6844 . . . . . . . . . . . . . . 15 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (𝐹‘(𝑏 𝑎)) ∈ ℝ)
118117recnd 10657 . . . . . . . . . . . . . 14 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (𝐹‘(𝑏 𝑎)) ∈ ℂ)
119118addid2d 10829 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (0 + (𝐹‘(𝑏 𝑎))) = (𝐹‘(𝑏 𝑎)))
120115, 119eqtrd 2853 . . . . . . . . . . . 12 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → ((𝐹0 ) + (𝐹‘(𝑏 𝑎))) = (𝐹‘(𝑏 𝑎)))
12198, 105, 1203brtr3d 5088 . . . . . . . . . . 11 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (𝐹‘(𝑎 𝑏)) ≤ (𝐹‘(𝑏 𝑎)))
12279, 121chvarvv 1996 . . . . . . . . . 10 ((𝜑 ∧ (𝑎𝑋𝑐𝑋)) → (𝐹‘(𝑎 𝑐)) ≤ (𝐹‘(𝑐 𝑎)))
123122adantrlr 719 . . . . . . . . 9 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝐹‘(𝑎 𝑐)) ≤ (𝐹‘(𝑐 𝑎)))
124 eleq1w 2892 . . . . . . . . . . . . . 14 (𝑎 = 𝑏 → (𝑎𝑋𝑏𝑋))
125124anbi1d 629 . . . . . . . . . . . . 13 (𝑎 = 𝑏 → ((𝑎𝑋𝑐𝑋) ↔ (𝑏𝑋𝑐𝑋)))
126125anbi2d 628 . . . . . . . . . . . 12 (𝑎 = 𝑏 → ((𝜑 ∧ (𝑎𝑋𝑐𝑋)) ↔ (𝜑 ∧ (𝑏𝑋𝑐𝑋))))
127 fvoveq1 7168 . . . . . . . . . . . . 13 (𝑎 = 𝑏 → (𝐹‘(𝑎 𝑐)) = (𝐹‘(𝑏 𝑐)))
128 oveq2 7153 . . . . . . . . . . . . . 14 (𝑎 = 𝑏 → (𝑐 𝑎) = (𝑐 𝑏))
129128fveq2d 6667 . . . . . . . . . . . . 13 (𝑎 = 𝑏 → (𝐹‘(𝑐 𝑎)) = (𝐹‘(𝑐 𝑏)))
130127, 129breq12d 5070 . . . . . . . . . . . 12 (𝑎 = 𝑏 → ((𝐹‘(𝑎 𝑐)) ≤ (𝐹‘(𝑐 𝑎)) ↔ (𝐹‘(𝑏 𝑐)) ≤ (𝐹‘(𝑐 𝑏))))
131126, 130imbi12d 346 . . . . . . . . . . 11 (𝑎 = 𝑏 → (((𝜑 ∧ (𝑎𝑋𝑐𝑋)) → (𝐹‘(𝑎 𝑐)) ≤ (𝐹‘(𝑐 𝑎))) ↔ ((𝜑 ∧ (𝑏𝑋𝑐𝑋)) → (𝐹‘(𝑏 𝑐)) ≤ (𝐹‘(𝑐 𝑏)))))
132131, 122chvarvv 1996 . . . . . . . . . 10 ((𝜑 ∧ (𝑏𝑋𝑐𝑋)) → (𝐹‘(𝑏 𝑐)) ≤ (𝐹‘(𝑐 𝑏)))
133132adantrll 718 . . . . . . . . 9 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝐹‘(𝑏 𝑐)) ≤ (𝐹‘(𝑐 𝑏)))
13441, 45, 49, 52, 123, 133le2addd 11247 . . . . . . . 8 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → ((𝐹‘(𝑎 𝑐)) + (𝐹‘(𝑏 𝑐))) ≤ ((𝐹‘(𝑐 𝑎)) + (𝐹‘(𝑐 𝑏))))
13535, 46, 53, 71, 134letrd 10785 . . . . . . 7 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝐹‘(𝑎 𝑏)) ≤ ((𝐹‘(𝑐 𝑎)) + (𝐹‘(𝑐 𝑏))))
13615adantrr 713 . . . . . . 7 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝑎(𝐹 )𝑏) = (𝐹‘(𝑎 𝑏)))
137 opelxpi 5585 . . . . . . . . . . 11 ((𝑐𝑋𝑎𝑋) → ⟨𝑐, 𝑎⟩ ∈ (𝑋 × 𝑋))
13838, 37, 137syl2anc 584 . . . . . . . . . 10 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → ⟨𝑐, 𝑎⟩ ∈ (𝑋 × 𝑋))
139 fvco3 6753 . . . . . . . . . 10 (( :(𝑋 × 𝑋)⟶𝑋 ∧ ⟨𝑐, 𝑎⟩ ∈ (𝑋 × 𝑋)) → ((𝐹 )‘⟨𝑐, 𝑎⟩) = (𝐹‘( ‘⟨𝑐, 𝑎⟩)))
1406, 138, 139syl2an2r 681 . . . . . . . . 9 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → ((𝐹 )‘⟨𝑐, 𝑎⟩) = (𝐹‘( ‘⟨𝑐, 𝑎⟩)))
141 df-ov 7148 . . . . . . . . 9 (𝑐(𝐹 )𝑎) = ((𝐹 )‘⟨𝑐, 𝑎⟩)
142 df-ov 7148 . . . . . . . . . 10 (𝑐 𝑎) = ( ‘⟨𝑐, 𝑎⟩)
143142fveq2i 6666 . . . . . . . . 9 (𝐹‘(𝑐 𝑎)) = (𝐹‘( ‘⟨𝑐, 𝑎⟩))
144140, 141, 1433eqtr4g 2878 . . . . . . . 8 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝑐(𝐹 )𝑎) = (𝐹‘(𝑐 𝑎)))
145 opelxpi 5585 . . . . . . . . . . 11 ((𝑐𝑋𝑏𝑋) → ⟨𝑐, 𝑏⟩ ∈ (𝑋 × 𝑋))
14638, 42, 145syl2anc 584 . . . . . . . . . 10 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → ⟨𝑐, 𝑏⟩ ∈ (𝑋 × 𝑋))
147 fvco3 6753 . . . . . . . . . 10 (( :(𝑋 × 𝑋)⟶𝑋 ∧ ⟨𝑐, 𝑏⟩ ∈ (𝑋 × 𝑋)) → ((𝐹 )‘⟨𝑐, 𝑏⟩) = (𝐹‘( ‘⟨𝑐, 𝑏⟩)))
1486, 146, 147syl2an2r 681 . . . . . . . . 9 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → ((𝐹 )‘⟨𝑐, 𝑏⟩) = (𝐹‘( ‘⟨𝑐, 𝑏⟩)))
149 df-ov 7148 . . . . . . . . 9 (𝑐(𝐹 )𝑏) = ((𝐹 )‘⟨𝑐, 𝑏⟩)
150 df-ov 7148 . . . . . . . . . 10 (𝑐 𝑏) = ( ‘⟨𝑐, 𝑏⟩)
151150fveq2i 6666 . . . . . . . . 9 (𝐹‘(𝑐 𝑏)) = (𝐹‘( ‘⟨𝑐, 𝑏⟩))
152148, 149, 1513eqtr4g 2878 . . . . . . . 8 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝑐(𝐹 )𝑏) = (𝐹‘(𝑐 𝑏)))
153144, 152oveq12d 7163 . . . . . . 7 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → ((𝑐(𝐹 )𝑎) + (𝑐(𝐹 )𝑏)) = ((𝐹‘(𝑐 𝑎)) + (𝐹‘(𝑐 𝑏))))
154135, 136, 1533brtr4d 5089 . . . . . 6 ((𝜑 ∧ ((𝑎𝑋𝑏𝑋) ∧ 𝑐𝑋)) → (𝑎(𝐹 )𝑏) ≤ ((𝑐(𝐹 )𝑎) + (𝑐(𝐹 )𝑏)))
155154expr 457 . . . . 5 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (𝑐𝑋 → (𝑎(𝐹 )𝑏) ≤ ((𝑐(𝐹 )𝑎) + (𝑐(𝐹 )𝑏))))
156155ralrimiv 3178 . . . 4 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → ∀𝑐𝑋 (𝑎(𝐹 )𝑏) ≤ ((𝑐(𝐹 )𝑎) + (𝑐(𝐹 )𝑏)))
15732, 156jca 512 . . 3 ((𝜑 ∧ (𝑎𝑋𝑏𝑋)) → (((𝑎(𝐹 )𝑏) = 0 ↔ 𝑎 = 𝑏) ∧ ∀𝑐𝑋 (𝑎(𝐹 )𝑏) ≤ ((𝑐(𝐹 )𝑎) + (𝑐(𝐹 )𝑏))))
158157ralrimivva 3188 . 2 (𝜑 → ∀𝑎𝑋𝑏𝑋 (((𝑎(𝐹 )𝑏) = 0 ↔ 𝑎 = 𝑏) ∧ ∀𝑐𝑋 (𝑎(𝐹 )𝑏) ≤ ((𝑐(𝐹 )𝑎) + (𝑐(𝐹 )𝑏))))
1593fvexi 6677 . . 3 𝑋 ∈ V
160 ismet 22860 . . 3 (𝑋 ∈ V → ((𝐹 ) ∈ (Met‘𝑋) ↔ ((𝐹 ):(𝑋 × 𝑋)⟶ℝ ∧ ∀𝑎𝑋𝑏𝑋 (((𝑎(𝐹 )𝑏) = 0 ↔ 𝑎 = 𝑏) ∧ ∀𝑐𝑋 (𝑎(𝐹 )𝑏) ≤ ((𝑐(𝐹 )𝑎) + (𝑐(𝐹 )𝑏))))))
161159, 160ax-mp 5 . 2 ((𝐹 ) ∈ (Met‘𝑋) ↔ ((𝐹 ):(𝑋 × 𝑋)⟶ℝ ∧ ∀𝑎𝑋𝑏𝑋 (((𝑎(𝐹 )𝑏) = 0 ↔ 𝑎 = 𝑏) ∧ ∀𝑐𝑋 (𝑎(𝐹 )𝑏) ≤ ((𝑐(𝐹 )𝑎) + (𝑐(𝐹 )𝑏)))))
1628, 158, 161sylanbrc 583 1 (𝜑 → (𝐹 ) ∈ (Met‘𝑋))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 207  wa 396   = wceq 1528  wcel 2105  wral 3135  Vcvv 3492  cop 4563   class class class wbr 5057   × cxp 5546  ccom 5552  wf 6344  cfv 6348  (class class class)co 7145  cr 10524  0cc0 10525   + caddc 10528  cle 10664  Basecbs 16471  0gc0g 16701  Grpcgrp 18041  invgcminusg 18042  -gcsg 18043  Metcmet 20459
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1787  ax-4 1801  ax-5 1902  ax-6 1961  ax-7 2006  ax-8 2107  ax-9 2115  ax-10 2136  ax-11 2151  ax-12 2167  ax-ext 2790  ax-sep 5194  ax-nul 5201  ax-pow 5257  ax-pr 5320  ax-un 7450  ax-cnex 10581  ax-resscn 10582  ax-1cn 10583  ax-icn 10584  ax-addcl 10585  ax-addrcl 10586  ax-mulcl 10587  ax-mulrcl 10588  ax-mulcom 10589  ax-addass 10590  ax-mulass 10591  ax-distr 10592  ax-i2m1 10593  ax-1ne0 10594  ax-1rid 10595  ax-rnegex 10596  ax-rrecex 10597  ax-cnre 10598  ax-pre-lttri 10599  ax-pre-lttrn 10600  ax-pre-ltadd 10601
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 842  df-3or 1080  df-3an 1081  df-tru 1531  df-ex 1772  df-nf 1776  df-sb 2061  df-mo 2615  df-eu 2647  df-clab 2797  df-cleq 2811  df-clel 2890  df-nfc 2960  df-ne 3014  df-nel 3121  df-ral 3140  df-rex 3141  df-reu 3142  df-rmo 3143  df-rab 3144  df-v 3494  df-sbc 3770  df-csb 3881  df-dif 3936  df-un 3938  df-in 3940  df-ss 3949  df-nul 4289  df-if 4464  df-pw 4537  df-sn 4558  df-pr 4560  df-op 4564  df-uni 4831  df-iun 4912  df-br 5058  df-opab 5120  df-mpt 5138  df-id 5453  df-po 5467  df-so 5468  df-xp 5554  df-rel 5555  df-cnv 5556  df-co 5557  df-dm 5558  df-rn 5559  df-res 5560  df-ima 5561  df-iota 6307  df-fun 6350  df-fn 6351  df-f 6352  df-f1 6353  df-fo 6354  df-f1o 6355  df-fv 6356  df-riota 7103  df-ov 7148  df-oprab 7149  df-mpo 7150  df-1st 7678  df-2nd 7679  df-er 8278  df-map 8397  df-en 8498  df-dom 8499  df-sdom 8500  df-pnf 10665  df-mnf 10666  df-xr 10667  df-ltxr 10668  df-le 10669  df-0g 16703  df-mgm 17840  df-sgrp 17889  df-mnd 17900  df-grp 18044  df-minusg 18045  df-sbg 18046  df-met 20467
This theorem is referenced by:  abvmet  23112  tngngpd  23189
  Copyright terms: Public domain W3C validator