@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
4
4
Authors: Patrick Massot, Johannes Hölzl, Yaël Dillies
5
5
6
6
! This file was ported from Lean 3 source module analysis.normed.group.basic
7
- ! leanprover-community/mathlib commit 195fcd60ff2bfe392543bceb0ec2adcdb472db4c
7
+ ! leanprover-community/mathlib commit 41bef4ae1254365bc190aee63b947674d2977f01
8
8
! Please do not edit these lines, except to modify the commit id
9
9
! if you have ported upstream changes.
10
10
-/
@@ -547,11 +547,11 @@ theorem norm_div_le_of_le {r₁ r₂ : ℝ} (H₁ : ‖a₁‖ ≤ r₁) (H₂ :
547
547
#align norm_div_le_of_le norm_div_le_of_le
548
548
#align norm_sub_le_of_le norm_sub_le_of_le
549
549
550
- @[to_additive]
551
- theorem dist_le_norm_mul_norm (a b : E) : dist a b ≤ ‖a‖ + ‖b‖ := by
550
+ @[to_additive dist_le_norm_add_norm ]
551
+ theorem dist_le_norm_add_norm' (a b : E) : dist a b ≤ ‖a‖ + ‖b‖ := by
552
552
rw [dist_eq_norm_div]
553
553
apply norm_div_le
554
- #align dist_le_norm_mul_norm dist_le_norm_mul_norm
554
+ #align dist_le_norm_add_norm' dist_le_norm_add_norm'
555
555
#align dist_le_norm_add_norm dist_le_norm_add_norm
556
556
557
557
@[to_additive abs_norm_sub_norm_le]
@@ -1010,12 +1010,39 @@ theorem MonoidHomClass.antilipschitz_of_bound [MonoidHomClass 𝓕 E F] (f :
1010
1010
#align monoid_hom_class.antilipschitz_of_bound MonoidHomClass.antilipschitz_of_bound
1011
1011
#align add_monoid_hom_class.antilipschitz_of_bound AddMonoidHomClass.antilipschitz_of_bound
1012
1012
1013
- @[to_additive]
1014
- theorem MonoidHomClass.bound_of_antilipschitz [MonoidHomClass 𝓕 E F] (f : 𝓕) {K : ℝ≥0 }
1015
- (h : AntilipschitzWith K f) (x) : ‖x‖ ≤ K * ‖f x‖ := by
1016
- simpa only [dist_one_right, map_one] using h.le_mul_dist x 1
1017
- #align monoid_hom_class.bound_of_antilipschitz MonoidHomClass.bound_of_antilipschitz
1018
- #align add_monoid_hom_class.bound_of_antilipschitz AddMonoidHomClass.bound_of_antilipschitz
1013
+ @[to_additive LipschitzWith.norm_le_mul]
1014
+ theorem LipschitzWith.norm_le_mul' {f : E → F} {K : ℝ≥0 } (h : LipschitzWith K f) (hf : f 1 = 1 )
1015
+ (x) : ‖f x‖ ≤ K * ‖x‖ := by simpa only [dist_one_right, hf] using h.dist_le_mul x 1
1016
+ #align lipschitz_with.norm_le_mul' LipschitzWith.norm_le_mul'
1017
+ #align lipschitz_with.norm_le_mul LipschitzWith.norm_le_mul
1018
+
1019
+ @[to_additive LipschitzWith.nnorm_le_mul]
1020
+ theorem LipschitzWith.nnorm_le_mul' {f : E → F} {K : ℝ≥0 } (h : LipschitzWith K f) (hf : f 1 = 1 )
1021
+ (x) : ‖f x‖₊ ≤ K * ‖x‖₊ :=
1022
+ h.norm_le_mul' hf x
1023
+ #align lipschitz_with.nnorm_le_mul' LipschitzWith.nnorm_le_mul'
1024
+ #align lipschitz_with.nnorm_le_mul LipschitzWith.nnorm_le_mul
1025
+
1026
+ @[to_additive AntilipschitzWith.le_mul_norm]
1027
+ theorem AntilipschitzWith.le_mul_norm' {f : E → F} {K : ℝ≥0 } (h : AntilipschitzWith K f)
1028
+ (hf : f 1 = 1 ) (x) : ‖x‖ ≤ K * ‖f x‖ := by
1029
+ simpa only [dist_one_right, hf] using h.le_mul_dist x 1
1030
+ #align antilipschitz_with.le_mul_norm' AntilipschitzWith.le_mul_norm'
1031
+ #align antilipschitz_with.le_mul_norm AntilipschitzWith.le_mul_norm
1032
+
1033
+ @[to_additive AntilipschitzWith.le_mul_nnnorm]
1034
+ theorem AntilipschitzWith.le_mul_nnnorm' {f : E → F} {K : ℝ≥0 } (h : AntilipschitzWith K f)
1035
+ (hf : f 1 = 1 ) (x) : ‖x‖₊ ≤ K * ‖f x‖₊ :=
1036
+ h.le_mul_norm' hf x
1037
+ #align antilipschitz_with.le_mul_nnnorm' AntilipschitzWith.le_mul_nnnorm'
1038
+ #align antilipschitz_with.le_mul_nnnorm AntilipschitzWith.le_mul_nnnorm
1039
+
1040
+ @[to_additive]
1041
+ theorem OneHomClass.bound_of_antilipschitz [OneHomClass 𝓕 E F] (f : 𝓕) {K : ℝ≥0 }
1042
+ (h : AntilipschitzWith K f) (x) : ‖x‖ ≤ K * ‖f x‖ :=
1043
+ h.le_mul_nnnorm' (map_one f) x
1044
+ #align one_hom_class.bound_of_antilipschitz OneHomClass.bound_of_antilipschitz
1045
+ #align zero_hom_class.bound_of_antilipschitz ZeroHomClass.bound_of_antilipschitz
1019
1046
1020
1047
end NNNorm
1021
1048
@@ -1905,11 +1932,11 @@ theorem mul_div_lipschitzWith (hf : AntilipschitzWith Kf f) (hg : LipschitzWith
1905
1932
#align antilipschitz_with.mul_div_lipschitz_with AntilipschitzWith.mul_div_lipschitzWith
1906
1933
#align antilipschitz_with.add_sub_lipschitz_with AntilipschitzWith.add_sub_lipschitzWith
1907
1934
1908
- @[to_additive]
1935
+ @[to_additive le_mul_norm_sub ]
1909
1936
theorem le_mul_norm_div {f : E → F} (hf : AntilipschitzWith K f) (x y : E) :
1910
1937
‖x / y‖ ≤ K * ‖f x / f y‖ := by simp [← dist_eq_norm_div, hf.le_mul_dist x y]
1911
1938
#align antilipschitz_with.le_mul_norm_div AntilipschitzWith.le_mul_norm_div
1912
- #align antilipschitz_with.le_add_norm_sub AntilipschitzWith.le_add_norm_sub
1939
+ #align antilipschitz_with.le_mul_norm_sub AntilipschitzWith.le_mul_norm_sub
1913
1940
1914
1941
end AntilipschitzWith
1915
1942
0 commit comments