analysis.normed.group.seminorm
⟷
Mathlib.Analysis.Normed.Group.Seminorm
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
The change in analysis.seminorm
has already been forward-ported in https://github.com/leanprover-community/mathlib4/pull/3484 to fix an error. Presumably the other changes will prevent the corresponding errors when we get to porting these files.
This is needed in Lean 4 because .prop
is about Subtype.val
but .coe_nonneg
is about NNReal.toReal
.
The two are defeq (and there is a simp lemma NNReal.val_eq_coe
to convert between them), but not reducibly equal.
In Lean 3 both are just about coe
, so the change doesn't matter.
Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
@@ -338,7 +338,7 @@ instance [has_smul R' ℝ] [has_smul R' ℝ≥0] [is_scalar_tower R' ℝ≥0 ℝ
lemma smul_sup (r : R) (p q : add_group_seminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
have real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y),
from λ x y, by simpa only [←smul_eq_mul, ←nnreal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)]
- using mul_max_of_nonneg x y (r • 1 : ℝ≥0).prop,
+ using mul_max_of_nonneg x y (r • 1 : ℝ≥0).coe_nonneg,
ext $ λ x, real.smul_max _ _
end add_group_seminorm
@@ -460,7 +460,7 @@ lemma smul_apply (r : R) (p : group_seminorm E) (x : E) : (r • p) x = r • p
lemma smul_sup (r : R) (p q : group_seminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
have real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y),
from λ x y, by simpa only [←smul_eq_mul, ←nnreal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)]
- using mul_max_of_nonneg x y (r • 1 : ℝ≥0).prop,
+ using mul_max_of_nonneg x y (r • 1 : ℝ≥0).coe_nonneg,
ext $ λ x, real.smul_max _ _
end group_seminorm
@@ -507,7 +507,7 @@ lemma smul_apply (r : R) (p : nonarch_add_group_seminorm E) (x : E) : (r • p)
lemma smul_sup (r : R) (p q : nonarch_add_group_seminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
have real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y),
from λ x y, by simpa only [←smul_eq_mul, ←nnreal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)]
- using mul_max_of_nonneg x y (r • 1 : ℝ≥0).prop,
+ using mul_max_of_nonneg x y (r • 1 : ℝ≥0).coe_nonneg,
ext $ λ x, real.smul_max _ _
end nonarch_add_group_seminorm
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(first ported)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: María Inés de Frutos-Fernández, Yaël Dillies
-/
import Tactic.Positivity
-import Data.Real.Nnreal
+import Data.Real.NNReal
#align_import analysis.normed.group.seminorm from "leanprover-community/mathlib"@"09079525fd01b3dda35e96adaa08d2f943e1648c"
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -235,14 +235,14 @@ theorem toFun_eq_coe : p.toFun = p :=
#print GroupSeminorm.ext /-
@[ext, to_additive]
theorem ext : (∀ x, p x = q x) → p = q :=
- FunLike.ext p q
+ DFunLike.ext p q
#align group_seminorm.ext GroupSeminorm.ext
#align add_group_seminorm.ext AddGroupSeminorm.ext
-/
@[to_additive]
instance : PartialOrder (GroupSeminorm E) :=
- PartialOrder.lift _ FunLike.coe_injective
+ PartialOrder.lift _ DFunLike.coe_injective
#print GroupSeminorm.le_def /-
@[to_additive]
@@ -362,7 +362,7 @@ theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
@[to_additive]
instance : SemilatticeSup (GroupSeminorm E) :=
- FunLike.coe_injective.SemilatticeSup _ coe_sup
+ DFunLike.coe_injective.SemilatticeSup _ coe_sup
#print GroupSeminorm.comp /-
/-- Composition of a group seminorm with a monoid homomorphism as a group seminorm. -/
@@ -605,12 +605,12 @@ theorem toZeroHom_eq_coe : p.toFun = p :=
#print NonarchAddGroupSeminorm.ext /-
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
- FunLike.ext p q
+ DFunLike.ext p q
#align nonarch_add_group_seminorm.ext NonarchAddGroupSeminorm.ext
-/
noncomputable instance : PartialOrder (NonarchAddGroupSeminorm E) :=
- PartialOrder.lift _ FunLike.coe_injective
+ PartialOrder.lift _ DFunLike.coe_injective
#print NonarchAddGroupSeminorm.le_def /-
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
@@ -689,7 +689,7 @@ theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
-/
noncomputable instance : SemilatticeSup (NonarchAddGroupSeminorm E) :=
- FunLike.coe_injective.SemilatticeSup _ coe_sup
+ DFunLike.coe_injective.SemilatticeSup _ coe_sup
end AddGroup
@@ -873,7 +873,7 @@ directly. -/
@[to_additive
"Helper instance for when there's too many metavariables to apply\n`fun_like.has_coe_to_fun` directly. "]
instance : CoeFun (GroupNorm E) fun _ => E → ℝ :=
- FunLike.hasCoeToFun
+ DFunLike.hasCoeToFun
#print GroupNorm.toGroupSeminorm_eq_coe /-
@[simp, to_additive]
@@ -886,14 +886,14 @@ theorem toGroupSeminorm_eq_coe : p.toFun = p :=
#print GroupNorm.ext /-
@[ext, to_additive]
theorem ext : (∀ x, p x = q x) → p = q :=
- FunLike.ext p q
+ DFunLike.ext p q
#align group_norm.ext GroupNorm.ext
#align add_group_norm.ext AddGroupNorm.ext
-/
@[to_additive]
instance : PartialOrder (GroupNorm E) :=
- PartialOrder.lift _ FunLike.coe_injective
+ PartialOrder.lift _ DFunLike.coe_injective
#print GroupNorm.le_def /-
@[to_additive]
@@ -978,7 +978,7 @@ theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
@[to_additive]
instance : SemilatticeSup (GroupNorm E) :=
- FunLike.coe_injective.SemilatticeSup _ coe_sup
+ DFunLike.coe_injective.SemilatticeSup _ coe_sup
end Group
@@ -1046,7 +1046,7 @@ instance nonarchAddGroupNormClass : NonarchAddGroupNormClass (NonarchAddGroupNor
/-- Helper instance for when there's too many metavariables to apply `fun_like.has_coe_to_fun`. -/
noncomputable instance : CoeFun (NonarchAddGroupNorm E) fun _ => E → ℝ :=
- FunLike.hasCoeToFun
+ DFunLike.hasCoeToFun
#print NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coe /-
@[simp]
@@ -1058,12 +1058,12 @@ theorem toNonarchAddGroupSeminorm_eq_coe : p.toFun = p :=
#print NonarchAddGroupNorm.ext /-
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
- FunLike.ext p q
+ DFunLike.ext p q
#align nonarch_add_group_norm.ext NonarchAddGroupNorm.ext
-/
noncomputable instance : PartialOrder (NonarchAddGroupNorm E) :=
- PartialOrder.lift _ FunLike.coe_injective
+ PartialOrder.lift _ DFunLike.coe_injective
#print NonarchAddGroupNorm.le_def /-
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
@@ -1114,7 +1114,7 @@ theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
-/
noncomputable instance : SemilatticeSup (NonarchAddGroupNorm E) :=
- FunLike.coe_injective.SemilatticeSup _ coe_sup
+ DFunLike.coe_injective.SemilatticeSup _ coe_sup
instance [DecidableEq E] : One (NonarchAddGroupNorm E) :=
⟨{ (1 : NonarchAddGroupSeminorm E) with
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,8 +3,8 @@ Copyright (c) 2022 María Inés de Frutos-Fernández, Yaël Dillies. All rights
Released under Apache 2.0 license as described in the file LICENSE.
Authors: María Inés de Frutos-Fernández, Yaël Dillies
-/
-import Mathbin.Tactic.Positivity
-import Mathbin.Data.Real.Nnreal
+import Tactic.Positivity
+import Data.Real.Nnreal
#align_import analysis.normed.group.seminorm from "leanprover-community/mathlib"@"09079525fd01b3dda35e96adaa08d2f943e1648c"
mathlib commit https://github.com/leanprover-community/mathlib/commit/32a7e535287f9c73f2e4d2aef306a39190f0b504
@@ -72,7 +72,7 @@ and such that `f x⁻¹ = f x` for all `x`. -/
structure GroupSeminorm (G : Type _) [Group G] where
toFun : G → ℝ
map_one' : to_fun 1 = 0
- mul_le' : ∀ x y, to_fun (x * y) ≤ to_fun x + to_fun y
+ hMul_le' : ∀ x y, to_fun (x * y) ≤ to_fun x + to_fun y
inv' : ∀ x, to_fun x⁻¹ = to_fun x
#align group_seminorm GroupSeminorm
#align add_group_seminorm AddGroupSeminorm
@@ -212,7 +212,7 @@ instance groupSeminormClass : GroupSeminormClass (GroupSeminorm E) E ℝ
coe f := f.toFun
coe_injective' f g h := by cases f <;> cases g <;> congr
map_one_eq_zero f := f.map_one'
- map_mul_le_add f := f.mul_le'
+ map_hMul_le_add f := f.hMul_le'
map_inv_eq_map f := f.inv'
#align group_seminorm.group_seminorm_class GroupSeminorm.groupSeminormClass
#align add_group_seminorm.add_group_seminorm_class AddGroupSeminorm.addGroupSeminormClass
@@ -282,7 +282,7 @@ variable (p q) (f : F →* E)
instance : Zero (GroupSeminorm E) :=
⟨{ toFun := 0
map_one' := Pi.zero_apply _
- mul_le' := fun _ _ => (zero_add _).ge
+ hMul_le' := fun _ _ => (zero_add _).ge
inv' := fun x => rfl }⟩
#print GroupSeminorm.coe_zero /-
@@ -310,8 +310,8 @@ instance : Add (GroupSeminorm E) :=
⟨fun p q =>
{ toFun := fun x => p x + q x
map_one' := by rw [map_one_eq_zero p, map_one_eq_zero q, zero_add]
- mul_le' := fun _ _ =>
- (add_le_add (map_mul_le_add p _ _) <| map_mul_le_add q _ _).trans_eq <|
+ hMul_le' := fun _ _ =>
+ (add_le_add (map_hMul_le_add p _ _) <| map_hMul_le_add q _ _).trans_eq <|
add_add_add_comm _ _ _ _
inv' := fun x => by rw [map_inv_eq_map p, map_inv_eq_map q] }⟩
@@ -339,9 +339,9 @@ instance : Sup (GroupSeminorm E) :=
{ toFun := p ⊔ q
map_one' := by
rw [Pi.sup_apply, ← map_one_eq_zero p, sup_eq_left, map_one_eq_zero p, map_one_eq_zero q]
- mul_le' := fun x y =>
- sup_le ((map_mul_le_add p x y).trans <| add_le_add le_sup_left le_sup_left)
- ((map_mul_le_add q x y).trans <| add_le_add le_sup_right le_sup_right)
+ hMul_le' := fun x y =>
+ sup_le ((map_hMul_le_add p x y).trans <| add_le_add le_sup_left le_sup_left)
+ ((map_hMul_le_add q x y).trans <| add_le_add le_sup_right le_sup_right)
inv' := fun x => by rw [Pi.sup_apply, Pi.sup_apply, map_inv_eq_map p, map_inv_eq_map q] }⟩
#print GroupSeminorm.coe_sup /-
@@ -372,7 +372,7 @@ def comp (p : GroupSeminorm E) (f : F →* E) : GroupSeminorm F
where
toFun x := p (f x)
map_one' := by rw [f.map_one, map_one_eq_zero p]
- mul_le' _ _ := (congr_arg p <| f.map_mul _ _).trans_le <| map_mul_le_add p _ _
+ hMul_le' _ _ := (congr_arg p <| f.map_hMul _ _).trans_le <| map_hMul_le_add p _ _
inv' x := by rw [map_inv, map_inv_eq_map p]
#align group_seminorm.comp GroupSeminorm.comp
#align add_group_seminorm.comp AddGroupSeminorm.comp
@@ -452,7 +452,7 @@ variable [CommGroup E] [CommGroup F] (p q : GroupSeminorm E) (x y : E)
#print GroupSeminorm.comp_mul_le /-
@[to_additive]
theorem comp_mul_le (f g : F →* E) : p.comp (f * g) ≤ p.comp f + p.comp g := fun _ =>
- map_mul_le_add p _ _
+ map_hMul_le_add p _ _
#align group_seminorm.comp_mul_le GroupSeminorm.comp_mul_le
#align add_group_seminorm.comp_add_le AddGroupSeminorm.comp_add_le
-/
@@ -473,7 +473,7 @@ noncomputable instance : Inf (GroupSeminorm E) :=
map_one' :=
ciInf_eq_of_forall_ge_of_forall_gt_exists_lt (fun x => by positivity) fun r hr =>
⟨1, by rwa [div_one, map_one_eq_zero p, map_one_eq_zero q, add_zero]⟩
- mul_le' := fun x y =>
+ hMul_le' := fun x y =>
le_ciInf_add_ciInf fun u v =>
by
refine' ciInf_le_of_le mul_bdd_below_range_add (u * v) _
@@ -716,7 +716,7 @@ variable [Group E] [SMul R ℝ] [SMul R ℝ≥0] [IsScalarTower R ℝ≥0 ℝ]
instance [DecidableEq E] : One (GroupSeminorm E) :=
⟨{ toFun := fun x => if x = 1 then 0 else 1
map_one' := if_pos rfl
- mul_le' := fun x y => by
+ hMul_le' := fun x y => by
by_cases hx : x = 1
· rw [if_pos hx, hx, one_mul, zero_add]
· rw [if_neg hx]
@@ -739,7 +739,7 @@ instance : SMul R (GroupSeminorm E) :=
map_one' := by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, map_one_eq_zero p,
MulZeroClass.mul_zero]
- mul_le' := fun _ _ =>
+ hMul_le' := fun _ _ =>
by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul]
exact
@@ -861,7 +861,7 @@ instance groupNormClass : GroupNormClass (GroupNorm E) E ℝ
coe f := f.toFun
coe_injective' f g h := by cases f <;> cases g <;> congr
map_one_eq_zero f := f.map_one'
- map_mul_le_add f := f.mul_le'
+ map_hMul_le_add f := f.hMul_le'
map_inv_eq_map f := f.inv'
eq_one_of_map_eq_zero f := f.eq_one_of_map_eq_zero'
#align group_norm.group_norm_class GroupNorm.groupNormClass
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,15 +2,12 @@
Copyright (c) 2022 María Inés de Frutos-Fernández, Yaël Dillies. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: María Inés de Frutos-Fernández, Yaël Dillies
-
-! This file was ported from Lean 3 source module analysis.normed.group.seminorm
-! leanprover-community/mathlib commit 09079525fd01b3dda35e96adaa08d2f943e1648c
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.Tactic.Positivity
import Mathbin.Data.Real.Nnreal
+#align_import analysis.normed.group.seminorm from "leanprover-community/mathlib"@"09079525fd01b3dda35e96adaa08d2f943e1648c"
+
/-!
# Group seminorms
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -159,13 +159,13 @@ section NonarchAddGroupSeminormClass
variable [AddGroup E] [NonarchAddGroupSeminormClass F E] (f : F) (x y : E)
-include E
-
+#print map_sub_le_max /-
theorem map_sub_le_max : f (x - y) ≤ max (f x) (f y) :=
by
rw [sub_eq_add_neg, ← NonarchAddGroupSeminormClass.map_neg_eq_map' f y]
exact map_add_le_max _ _ _
#align map_sub_le_max map_sub_le_max
+-/
end NonarchAddGroupSeminormClass
@@ -247,29 +247,37 @@ theorem ext : (∀ x, p x = q x) → p = q :=
instance : PartialOrder (GroupSeminorm E) :=
PartialOrder.lift _ FunLike.coe_injective
+#print GroupSeminorm.le_def /-
@[to_additive]
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
#align group_seminorm.le_def GroupSeminorm.le_def
#align add_group_seminorm.le_def AddGroupSeminorm.le_def
+-/
+#print GroupSeminorm.lt_def /-
@[to_additive]
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
#align group_seminorm.lt_def GroupSeminorm.lt_def
#align add_group_seminorm.lt_def AddGroupSeminorm.lt_def
+-/
+#print GroupSeminorm.coe_le_coe /-
@[simp, to_additive, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
Iff.rfl
#align group_seminorm.coe_le_coe GroupSeminorm.coe_le_coe
#align add_group_seminorm.coe_le_coe AddGroupSeminorm.coe_le_coe
+-/
+#print GroupSeminorm.coe_lt_coe /-
@[simp, to_additive, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
Iff.rfl
#align group_seminorm.coe_lt_coe GroupSeminorm.coe_lt_coe
#align add_group_seminorm.coe_lt_coe AddGroupSeminorm.coe_lt_coe
+-/
variable (p q) (f : F →* E)
@@ -280,17 +288,21 @@ instance : Zero (GroupSeminorm E) :=
mul_le' := fun _ _ => (zero_add _).ge
inv' := fun x => rfl }⟩
+#print GroupSeminorm.coe_zero /-
@[simp, to_additive, norm_cast]
theorem coe_zero : ⇑(0 : GroupSeminorm E) = 0 :=
rfl
#align group_seminorm.coe_zero GroupSeminorm.coe_zero
#align add_group_seminorm.coe_zero AddGroupSeminorm.coe_zero
+-/
+#print GroupSeminorm.zero_apply /-
@[simp, to_additive]
theorem zero_apply (x : E) : (0 : GroupSeminorm E) x = 0 :=
rfl
#align group_seminorm.zero_apply GroupSeminorm.zero_apply
#align add_group_seminorm.zero_apply AddGroupSeminorm.zero_apply
+-/
@[to_additive]
instance : Inhabited (GroupSeminorm E) :=
@@ -306,17 +318,21 @@ instance : Add (GroupSeminorm E) :=
add_add_add_comm _ _ _ _
inv' := fun x => by rw [map_inv_eq_map p, map_inv_eq_map q] }⟩
+#print GroupSeminorm.coe_add /-
@[simp, to_additive]
theorem coe_add : ⇑(p + q) = p + q :=
rfl
#align group_seminorm.coe_add GroupSeminorm.coe_add
#align add_group_seminorm.coe_add AddGroupSeminorm.coe_add
+-/
+#print GroupSeminorm.add_apply /-
@[simp, to_additive]
theorem add_apply (x : E) : (p + q) x = p x + q x :=
rfl
#align group_seminorm.add_apply GroupSeminorm.add_apply
#align add_group_seminorm.add_apply AddGroupSeminorm.add_apply
+-/
-- TODO: define `has_Sup` too, from the skeleton at
-- https://github.com/leanprover-community/mathlib/pull/11329#issuecomment-1008915345
@@ -331,17 +347,21 @@ instance : Sup (GroupSeminorm E) :=
((map_mul_le_add q x y).trans <| add_le_add le_sup_right le_sup_right)
inv' := fun x => by rw [Pi.sup_apply, Pi.sup_apply, map_inv_eq_map p, map_inv_eq_map q] }⟩
+#print GroupSeminorm.coe_sup /-
@[simp, to_additive, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
rfl
#align group_seminorm.coe_sup GroupSeminorm.coe_sup
#align add_group_seminorm.coe_sup AddGroupSeminorm.coe_sup
+-/
+#print GroupSeminorm.sup_apply /-
@[simp, to_additive]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
rfl
#align group_seminorm.sup_apply GroupSeminorm.sup_apply
#align add_group_seminorm.sup_apply AddGroupSeminorm.sup_apply
+-/
@[to_additive]
instance : SemilatticeSup (GroupSeminorm E) :=
@@ -361,17 +381,21 @@ def comp (p : GroupSeminorm E) (f : F →* E) : GroupSeminorm F
#align add_group_seminorm.comp AddGroupSeminorm.comp
-/
+#print GroupSeminorm.coe_comp /-
@[simp, to_additive]
theorem coe_comp : ⇑(p.comp f) = p ∘ f :=
rfl
#align group_seminorm.coe_comp GroupSeminorm.coe_comp
#align add_group_seminorm.coe_comp AddGroupSeminorm.coe_comp
+-/
+#print GroupSeminorm.comp_apply /-
@[simp, to_additive]
theorem comp_apply (x : F) : (p.comp f) x = p (f x) :=
rfl
#align group_seminorm.comp_apply GroupSeminorm.comp_apply
#align add_group_seminorm.comp_apply AddGroupSeminorm.comp_apply
+-/
#print GroupSeminorm.comp_id /-
@[simp, to_additive]
@@ -381,36 +405,46 @@ theorem comp_id : p.comp (MonoidHom.id _) = p :=
#align add_group_seminorm.comp_id AddGroupSeminorm.comp_id
-/
+#print GroupSeminorm.comp_zero /-
@[simp, to_additive]
theorem comp_zero : p.comp (1 : F →* E) = 0 :=
ext fun _ => map_one_eq_zero p
#align group_seminorm.comp_zero GroupSeminorm.comp_zero
#align add_group_seminorm.comp_zero AddGroupSeminorm.comp_zero
+-/
+#print GroupSeminorm.zero_comp /-
@[simp, to_additive]
theorem zero_comp : (0 : GroupSeminorm E).comp f = 0 :=
ext fun _ => rfl
#align group_seminorm.zero_comp GroupSeminorm.zero_comp
#align add_group_seminorm.zero_comp AddGroupSeminorm.zero_comp
+-/
+#print GroupSeminorm.comp_assoc /-
@[to_additive]
theorem comp_assoc (g : F →* E) (f : G →* F) : p.comp (g.comp f) = (p.comp g).comp f :=
ext fun _ => rfl
#align group_seminorm.comp_assoc GroupSeminorm.comp_assoc
#align add_group_seminorm.comp_assoc AddGroupSeminorm.comp_assoc
+-/
+#print GroupSeminorm.add_comp /-
@[to_additive]
theorem add_comp (f : F →* E) : (p + q).comp f = p.comp f + q.comp f :=
ext fun _ => rfl
#align group_seminorm.add_comp GroupSeminorm.add_comp
#align add_group_seminorm.add_comp AddGroupSeminorm.add_comp
+-/
variable {p q}
+#print GroupSeminorm.comp_mono /-
@[to_additive]
theorem comp_mono (hp : p ≤ q) : p.comp f ≤ q.comp f := fun _ => hp _
#align group_seminorm.comp_mono GroupSeminorm.comp_mono
#align add_group_seminorm.comp_mono AddGroupSeminorm.comp_mono
+-/
end Group
@@ -418,18 +452,22 @@ section CommGroup
variable [CommGroup E] [CommGroup F] (p q : GroupSeminorm E) (x y : E)
+#print GroupSeminorm.comp_mul_le /-
@[to_additive]
theorem comp_mul_le (f g : F →* E) : p.comp (f * g) ≤ p.comp f + p.comp g := fun _ =>
map_mul_le_add p _ _
#align group_seminorm.comp_mul_le GroupSeminorm.comp_mul_le
#align add_group_seminorm.comp_add_le AddGroupSeminorm.comp_add_le
+-/
+#print GroupSeminorm.mul_bddBelow_range_add /-
@[to_additive]
theorem mul_bddBelow_range_add {p q : GroupSeminorm E} {x : E} :
BddBelow (range fun y => p y + q (x / y)) :=
⟨0, by rintro _ ⟨x, rfl⟩; dsimp; positivity⟩
#align group_seminorm.mul_bdd_below_range_add GroupSeminorm.mul_bddBelow_range_add
#align add_group_seminorm.add_bdd_below_range_add AddGroupSeminorm.add_bddBelow_range_add
+-/
@[to_additive]
noncomputable instance : Inf (GroupSeminorm E) :=
@@ -448,11 +486,13 @@ noncomputable instance : Inf (GroupSeminorm E) :=
(inv_surjective.iInf_comp _).symm.trans <| by
simp_rw [map_inv_eq_map p, ← inv_div', map_inv_eq_map q] }⟩
+#print GroupSeminorm.inf_apply /-
@[simp, to_additive]
theorem inf_apply : (p ⊓ q) x = ⨅ y, p y + q (x / y) :=
rfl
#align group_seminorm.inf_apply GroupSeminorm.inf_apply
#align add_group_seminorm.inf_apply AddGroupSeminorm.inf_apply
+-/
@[to_additive]
noncomputable instance : Lattice (GroupSeminorm E) :=
@@ -486,10 +526,12 @@ instance [DecidableEq E] : One (AddGroupSeminorm E) :=
refine' le_add_of_le_of_nonneg _ _ <;> split_ifs <;> norm_num
neg' := fun x => by simp_rw [neg_eq_zero] }⟩
+#print AddGroupSeminorm.apply_one /-
@[simp]
theorem apply_one [DecidableEq E] (x : E) : (1 : AddGroupSeminorm E) x = if x = 0 then 0 else 1 :=
rfl
#align add_group_seminorm.apply_one AddGroupSeminorm.apply_one
+-/
/-- Any action on `ℝ` which factors through `ℝ≥0` applies to an `add_group_seminorm`. -/
instance : SMul R (AddGroupSeminorm E) :=
@@ -506,10 +548,12 @@ instance : SMul R (AddGroupSeminorm E) :=
(mul_add _ _ _)
neg' := fun x => by rw [map_neg_eq_map] }⟩
+#print AddGroupSeminorm.coe_smul /-
@[simp, norm_cast]
theorem coe_smul (r : R) (p : AddGroupSeminorm E) : ⇑(r • p) = r • p :=
rfl
#align add_group_seminorm.coe_smul AddGroupSeminorm.coe_smul
+-/
#print AddGroupSeminorm.smul_apply /-
@[simp]
@@ -554,36 +598,48 @@ instance nonarchAddGroupSeminormClass : NonarchAddGroupSeminormClass (NonarchAdd
instance : CoeFun (NonarchAddGroupSeminorm E) fun _ => E → ℝ :=
⟨NonarchAddGroupSeminorm.toFun⟩
+#print NonarchAddGroupSeminorm.toZeroHom_eq_coe /-
@[simp]
theorem toZeroHom_eq_coe : p.toFun = p :=
rfl
#align nonarch_add_group_seminorm.to_fun_eq_coe NonarchAddGroupSeminorm.toZeroHom_eq_coe
+-/
+#print NonarchAddGroupSeminorm.ext /-
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
FunLike.ext p q
#align nonarch_add_group_seminorm.ext NonarchAddGroupSeminorm.ext
+-/
noncomputable instance : PartialOrder (NonarchAddGroupSeminorm E) :=
PartialOrder.lift _ FunLike.coe_injective
+#print NonarchAddGroupSeminorm.le_def /-
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
#align nonarch_add_group_seminorm.le_def NonarchAddGroupSeminorm.le_def
+-/
+#print NonarchAddGroupSeminorm.lt_def /-
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
#align nonarch_add_group_seminorm.lt_def NonarchAddGroupSeminorm.lt_def
+-/
+#print NonarchAddGroupSeminorm.coe_le_coe /-
@[simp, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
Iff.rfl
#align nonarch_add_group_seminorm.coe_le_coe NonarchAddGroupSeminorm.coe_le_coe
+-/
+#print NonarchAddGroupSeminorm.coe_lt_coe /-
@[simp, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
Iff.rfl
#align nonarch_add_group_seminorm.coe_lt_coe NonarchAddGroupSeminorm.coe_lt_coe
+-/
variable (p q) (f : F →+ E)
@@ -593,15 +649,19 @@ instance : Zero (NonarchAddGroupSeminorm E) :=
add_le_max' := fun r s => by simp only [Pi.zero_apply, max_eq_right]
neg' := fun x => rfl }⟩
+#print NonarchAddGroupSeminorm.coe_zero /-
@[simp, norm_cast]
theorem coe_zero : ⇑(0 : NonarchAddGroupSeminorm E) = 0 :=
rfl
#align nonarch_add_group_seminorm.coe_zero NonarchAddGroupSeminorm.coe_zero
+-/
+#print NonarchAddGroupSeminorm.zero_apply /-
@[simp]
theorem zero_apply (x : E) : (0 : NonarchAddGroupSeminorm E) x = 0 :=
rfl
#align nonarch_add_group_seminorm.zero_apply NonarchAddGroupSeminorm.zero_apply
+-/
instance : Inhabited (NonarchAddGroupSeminorm E) :=
⟨0⟩
@@ -617,15 +677,19 @@ instance : Sup (NonarchAddGroupSeminorm E) :=
((map_add_le_max q x y).trans <| max_le_max le_sup_right le_sup_right)
neg' := fun x => by rw [Pi.sup_apply, Pi.sup_apply, map_neg_eq_map p, map_neg_eq_map q] }⟩
+#print NonarchAddGroupSeminorm.coe_sup /-
@[simp, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
rfl
#align nonarch_add_group_seminorm.coe_sup NonarchAddGroupSeminorm.coe_sup
+-/
+#print NonarchAddGroupSeminorm.sup_apply /-
@[simp]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
rfl
#align nonarch_add_group_seminorm.sup_apply NonarchAddGroupSeminorm.sup_apply
+-/
noncomputable instance : SemilatticeSup (NonarchAddGroupSeminorm E) :=
FunLike.coe_injective.SemilatticeSup _ coe_sup
@@ -636,10 +700,12 @@ section AddCommGroup
variable [AddCommGroup E] [AddCommGroup F] (p q : NonarchAddGroupSeminorm E) (x y : E)
+#print NonarchAddGroupSeminorm.add_bddBelow_range_add /-
theorem add_bddBelow_range_add {p q : NonarchAddGroupSeminorm E} {x : E} :
BddBelow (range fun y => p y + q (x - y)) :=
⟨0, by rintro _ ⟨x, rfl⟩; dsimp; positivity⟩
#align nonarch_add_group_seminorm.add_bdd_below_range_add NonarchAddGroupSeminorm.add_bddBelow_range_add
+-/
end AddCommGroup
@@ -660,11 +726,13 @@ instance [DecidableEq E] : One (GroupSeminorm E) :=
refine' le_add_of_le_of_nonneg _ _ <;> split_ifs <;> norm_num
inv' := fun x => by simp_rw [inv_eq_one] }⟩
+#print GroupSeminorm.apply_one /-
@[simp, to_additive AddGroupSeminorm.apply_one]
theorem apply_one [DecidableEq E] (x : E) : (1 : GroupSeminorm E) x = if x = 1 then 0 else 1 :=
rfl
#align group_seminorm.apply_one GroupSeminorm.apply_one
#align add_group_seminorm.apply_one AddGroupSeminorm.apply_one
+-/
/-- Any action on `ℝ` which factors through `ℝ≥0` applies to an `add_group_seminorm`. -/
@[to_additive AddGroupSeminorm.hasSmul]
@@ -687,11 +755,13 @@ instance [SMul R' ℝ] [SMul R' ℝ≥0] [IsScalarTower R' ℝ≥0 ℝ] [SMul R
IsScalarTower R R' (GroupSeminorm E) :=
⟨fun r a p => ext fun x => smul_assoc r a <| p x⟩
+#print GroupSeminorm.coe_smul /-
@[simp, to_additive AddGroupSeminorm.coe_smul, norm_cast]
theorem coe_smul (r : R) (p : GroupSeminorm E) : ⇑(r • p) = r • p :=
rfl
#align group_seminorm.coe_smul GroupSeminorm.coe_smul
#align add_group_seminorm.coe_smul AddGroupSeminorm.coe_smul
+-/
#print GroupSeminorm.smul_apply /-
@[simp, to_additive AddGroupSeminorm.smul_apply]
@@ -727,11 +797,13 @@ instance [DecidableEq E] : One (NonarchAddGroupSeminorm E) :=
· rw [if_neg hx]; split_ifs <;> norm_num
neg' := fun x => by simp_rw [neg_eq_zero] }⟩
+#print NonarchAddGroupSeminorm.apply_one /-
@[simp]
theorem apply_one [DecidableEq E] (x : E) :
(1 : NonarchAddGroupSeminorm E) x = if x = 0 then 0 else 1 :=
rfl
#align nonarch_add_group_seminorm.apply_one NonarchAddGroupSeminorm.apply_one
+-/
/-- Any action on `ℝ` which factors through `ℝ≥0` applies to a `nonarch_add_group_seminorm`. -/
instance : SMul R (NonarchAddGroupSeminorm E) :=
@@ -751,15 +823,19 @@ instance [SMul R' ℝ] [SMul R' ℝ≥0] [IsScalarTower R' ℝ≥0 ℝ] [SMul R
IsScalarTower R R' (NonarchAddGroupSeminorm E) :=
⟨fun r a p => ext fun x => smul_assoc r a <| p x⟩
+#print NonarchAddGroupSeminorm.coe_smul /-
@[simp, norm_cast]
theorem coe_smul (r : R) (p : NonarchAddGroupSeminorm E) : ⇑(r • p) = r • p :=
rfl
#align nonarch_add_group_seminorm.coe_smul NonarchAddGroupSeminorm.coe_smul
+-/
+#print NonarchAddGroupSeminorm.smul_apply /-
@[simp]
theorem smul_apply (r : R) (p : NonarchAddGroupSeminorm E) (x : E) : (r • p) x = r • p x :=
rfl
#align nonarch_add_group_seminorm.smul_apply NonarchAddGroupSeminorm.smul_apply
+-/
#print NonarchAddGroupSeminorm.smul_sup /-
theorem smul_sup (r : R) (p q : NonarchAddGroupSeminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
@@ -802,45 +878,57 @@ directly. -/
instance : CoeFun (GroupNorm E) fun _ => E → ℝ :=
FunLike.hasCoeToFun
+#print GroupNorm.toGroupSeminorm_eq_coe /-
@[simp, to_additive]
theorem toGroupSeminorm_eq_coe : p.toFun = p :=
rfl
#align group_norm.to_fun_eq_coe GroupNorm.toGroupSeminorm_eq_coe
#align add_group_norm.to_fun_eq_coe AddGroupNorm.toAddGroupSeminorm_eq_coe
+-/
+#print GroupNorm.ext /-
@[ext, to_additive]
theorem ext : (∀ x, p x = q x) → p = q :=
FunLike.ext p q
#align group_norm.ext GroupNorm.ext
#align add_group_norm.ext AddGroupNorm.ext
+-/
@[to_additive]
instance : PartialOrder (GroupNorm E) :=
PartialOrder.lift _ FunLike.coe_injective
+#print GroupNorm.le_def /-
@[to_additive]
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
#align group_norm.le_def GroupNorm.le_def
#align add_group_norm.le_def AddGroupNorm.le_def
+-/
+#print GroupNorm.lt_def /-
@[to_additive]
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
#align group_norm.lt_def GroupNorm.lt_def
#align add_group_norm.lt_def AddGroupNorm.lt_def
+-/
+#print GroupNorm.coe_le_coe /-
@[simp, to_additive, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
Iff.rfl
#align group_norm.coe_le_coe GroupNorm.coe_le_coe
#align add_group_norm.coe_le_coe AddGroupNorm.coe_le_coe
+-/
+#print GroupNorm.coe_lt_coe /-
@[simp, to_additive, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
Iff.rfl
#align group_norm.coe_lt_coe GroupNorm.coe_lt_coe
#align add_group_norm.coe_lt_coe AddGroupNorm.coe_lt_coe
+-/
variable (p q) (f : F →* E)
@@ -851,17 +939,21 @@ instance : Add (GroupNorm E) :=
eq_one_of_map_eq_zero' := fun x hx =>
of_not_not fun h => hx.not_gt <| add_pos (map_pos_of_ne_one p h) (map_pos_of_ne_one q h) }⟩
+#print GroupNorm.coe_add /-
@[simp, to_additive]
theorem coe_add : ⇑(p + q) = p + q :=
rfl
#align group_norm.coe_add GroupNorm.coe_add
#align add_group_norm.coe_add AddGroupNorm.coe_add
+-/
+#print GroupNorm.add_apply /-
@[simp, to_additive]
theorem add_apply (x : E) : (p + q) x = p x + q x :=
rfl
#align group_norm.add_apply GroupNorm.add_apply
#align add_group_norm.add_apply AddGroupNorm.add_apply
+-/
-- TODO: define `has_Sup`
@[to_additive]
@@ -871,17 +963,21 @@ instance : Sup (GroupNorm E) :=
eq_one_of_map_eq_zero' := fun x hx =>
of_not_not fun h => hx.not_gt <| lt_sup_iff.2 <| Or.inl <| map_pos_of_ne_one p h }⟩
+#print GroupNorm.coe_sup /-
@[simp, to_additive, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
rfl
#align group_norm.coe_sup GroupNorm.coe_sup
#align add_group_norm.coe_sup AddGroupNorm.coe_sup
+-/
+#print GroupNorm.sup_apply /-
@[simp, to_additive]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
rfl
#align group_norm.sup_apply GroupNorm.sup_apply
#align add_group_norm.sup_apply AddGroupNorm.sup_apply
+-/
@[to_additive]
instance : SemilatticeSup (GroupNorm E) :=
@@ -899,10 +995,12 @@ instance : One (AddGroupNorm E) :=
⟨{ (1 : AddGroupSeminorm E) with
eq_zero_of_map_eq_zero' := fun x => zero_ne_one.ite_eq_left_iff.1 }⟩
+#print AddGroupNorm.apply_one /-
@[simp]
theorem apply_one (x : E) : (1 : AddGroupNorm E) x = if x = 0 then 0 else 1 :=
rfl
#align add_group_norm.apply_one AddGroupNorm.apply_one
+-/
instance : Inhabited (AddGroupNorm E) :=
⟨1⟩
@@ -917,11 +1015,13 @@ variable [Group E] [DecidableEq E]
instance : One (GroupNorm E) :=
⟨{ (1 : GroupSeminorm E) with eq_one_of_map_eq_zero' := fun x => zero_ne_one.ite_eq_left_iff.1 }⟩
+#print GroupNorm.apply_one /-
@[simp, to_additive AddGroupNorm.apply_one]
theorem apply_one (x : E) : (1 : GroupNorm E) x = if x = 1 then 0 else 1 :=
rfl
#align group_norm.apply_one GroupNorm.apply_one
#align add_group_norm.apply_one AddGroupNorm.apply_one
+-/
@[to_additive]
instance : Inhabited (GroupNorm E) :=
@@ -951,36 +1051,48 @@ instance nonarchAddGroupNormClass : NonarchAddGroupNormClass (NonarchAddGroupNor
noncomputable instance : CoeFun (NonarchAddGroupNorm E) fun _ => E → ℝ :=
FunLike.hasCoeToFun
+#print NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coe /-
@[simp]
theorem toNonarchAddGroupSeminorm_eq_coe : p.toFun = p :=
rfl
#align nonarch_add_group_norm.to_fun_eq_coe NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coe
+-/
+#print NonarchAddGroupNorm.ext /-
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
FunLike.ext p q
#align nonarch_add_group_norm.ext NonarchAddGroupNorm.ext
+-/
noncomputable instance : PartialOrder (NonarchAddGroupNorm E) :=
PartialOrder.lift _ FunLike.coe_injective
+#print NonarchAddGroupNorm.le_def /-
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
#align nonarch_add_group_norm.le_def NonarchAddGroupNorm.le_def
+-/
+#print NonarchAddGroupNorm.lt_def /-
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
#align nonarch_add_group_norm.lt_def NonarchAddGroupNorm.lt_def
+-/
+#print NonarchAddGroupNorm.coe_le_coe /-
@[simp, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
Iff.rfl
#align nonarch_add_group_norm.coe_le_coe NonarchAddGroupNorm.coe_le_coe
+-/
+#print NonarchAddGroupNorm.coe_lt_coe /-
@[simp, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
Iff.rfl
#align nonarch_add_group_norm.coe_lt_coe NonarchAddGroupNorm.coe_lt_coe
+-/
variable (p q) (f : F →+ E)
@@ -990,15 +1102,19 @@ instance : Sup (NonarchAddGroupNorm E) :=
eq_zero_of_map_eq_zero' := fun x hx =>
of_not_not fun h => hx.not_gt <| lt_sup_iff.2 <| Or.inl <| map_pos_of_ne_zero p h }⟩
+#print NonarchAddGroupNorm.coe_sup /-
@[simp, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
rfl
#align nonarch_add_group_norm.coe_sup NonarchAddGroupNorm.coe_sup
+-/
+#print NonarchAddGroupNorm.sup_apply /-
@[simp]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
rfl
#align nonarch_add_group_norm.sup_apply NonarchAddGroupNorm.sup_apply
+-/
noncomputable instance : SemilatticeSup (NonarchAddGroupNorm E) :=
FunLike.coe_injective.SemilatticeSup _ coe_sup
@@ -1007,11 +1123,13 @@ instance [DecidableEq E] : One (NonarchAddGroupNorm E) :=
⟨{ (1 : NonarchAddGroupSeminorm E) with
eq_zero_of_map_eq_zero' := fun x => zero_ne_one.ite_eq_left_iff.1 }⟩
+#print NonarchAddGroupNorm.apply_one /-
@[simp]
theorem apply_one [DecidableEq E] (x : E) :
(1 : NonarchAddGroupNorm E) x = if x = 0 then 0 else 1 :=
rfl
#align nonarch_add_group_norm.apply_one NonarchAddGroupNorm.apply_one
+-/
instance [DecidableEq E] : Inhabited (NonarchAddGroupNorm E) :=
⟨1⟩
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -124,8 +124,9 @@ structure NonarchAddGroupNorm (G : Type _) [AddGroup G] extends NonarchAddGroupS
#align nonarch_add_group_norm NonarchAddGroupNorm
-/
-attribute [nolint doc_blame]
- AddGroupSeminorm.toZeroHom AddGroupNorm.toAddGroupSeminorm GroupNorm.toGroupSeminorm NonarchAddGroupSeminorm.toZeroHom NonarchAddGroupNorm.toNonarchAddGroupSeminorm
+attribute [nolint doc_blame] AddGroupSeminorm.toZeroHom AddGroupNorm.toAddGroupSeminorm
+ GroupNorm.toGroupSeminorm NonarchAddGroupSeminorm.toZeroHom
+ NonarchAddGroupNorm.toNonarchAddGroupSeminorm
attribute [to_additive] GroupNorm.toGroupSeminorm
@@ -136,7 +137,7 @@ the additive group `α`.
You should extend this class when you extend `nonarch_add_group_seminorm`. -/
@[protect_proj]
class NonarchAddGroupSeminormClass (F : Type _) (α : outParam <| Type _) [AddGroup α] extends
- NonarchimedeanHomClass F α ℝ where
+ NonarchimedeanHomClass F α ℝ where
map_zero (f : F) : f 0 = 0
map_neg_eq_map' (f : F) (a : α) : f (-a) = f a
#align nonarch_add_group_seminorm_class NonarchAddGroupSeminormClass
@@ -149,7 +150,7 @@ additive group `α`.
You should extend this class when you extend `nonarch_add_group_norm`. -/
@[protect_proj]
class NonarchAddGroupNormClass (F : Type _) (α : outParam <| Type _) [AddGroup α] extends
- NonarchAddGroupSeminormClass F α where
+ NonarchAddGroupSeminormClass F α where
eq_zero_of_map_eq_zero (f : F) {a : α} : f a = 0 → a = 0
#align nonarch_add_group_norm_class NonarchAddGroupNormClass
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -54,7 +54,7 @@ norm, seminorm
open Set
-open NNReal
+open scoped NNReal
variable {ι R R' E F G : Type _}
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -160,12 +160,6 @@ variable [AddGroup E] [NonarchAddGroupSeminormClass F E] (f : F) (x y : E)
include E
-/- warning: map_sub_le_max -> map_sub_le_max is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : NonarchAddGroupSeminormClass.{u2, u1} F E _inst_1] (f : F) (x : E) (y : E), LE.le.{0} Real Real.hasLe (coeFn.{succ u2, succ u1} F (fun (_x : F) => E -> Real) (FunLike.hasCoeToFun.{succ u2, succ u1, 1} F E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u1, 0} F E Real (AddZeroClass.toHasAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u1} F E _inst_1 _inst_2))) f (HSub.hSub.{u1, u1, u1} E E E (instHSub.{u1} E (SubNegMonoid.toHasSub.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1))) x y)) (LinearOrder.max.{0} Real Real.linearOrder (coeFn.{succ u2, succ u1} F (fun (_x : F) => E -> Real) (FunLike.hasCoeToFun.{succ u2, succ u1, 1} F E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u1, 0} F E Real (AddZeroClass.toHasAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u1} F E _inst_1 _inst_2))) f x) (coeFn.{succ u2, succ u1} F (fun (_x : F) => E -> Real) (FunLike.hasCoeToFun.{succ u2, succ u1, 1} F E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u1, 0} F E Real (AddZeroClass.toHasAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u1} F E _inst_1 _inst_2))) f y))
-but is expected to have type
- forall {E : Type.{u2}} {F : Type.{u1}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : NonarchAddGroupSeminormClass.{u1, u2} F E _inst_1] (f : F) (x : E) (y : E), LE.le.{0} ((fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.291 : E) => Real) (HSub.hSub.{u2, u2, u2} E E E (instHSub.{u2} E (SubNegMonoid.toSub.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1))) x y)) Real.instLEReal (FunLike.coe.{succ u1, succ u2, 1} F E (fun (_x : E) => (fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.291 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u2, 0} F E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u2} F E _inst_1 _inst_2)) f (HSub.hSub.{u2, u2, u2} E E E (instHSub.{u2} E (SubNegMonoid.toSub.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1))) x y)) (Max.max.{0} ((fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.291 : E) => Real) x) (LinearOrderedRing.toMax.{0} ((fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.291 : E) => Real) x) Real.instLinearOrderedRingReal) (FunLike.coe.{succ u1, succ u2, 1} F E (fun (_x : E) => (fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.291 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u2, 0} F E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u2} F E _inst_1 _inst_2)) f x) (FunLike.coe.{succ u1, succ u2, 1} F E (fun (_x : E) => (fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.291 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u2, 0} F E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u2} F E _inst_1 _inst_2)) f y))
-Case conversion may be inaccurate. Consider using '#align map_sub_le_max map_sub_le_maxₓ'. -/
theorem map_sub_le_max : f (x - y) ≤ max (f x) (f y) :=
by
rw [sub_eq_add_neg, ← NonarchAddGroupSeminormClass.map_neg_eq_map' f y]
@@ -252,48 +246,24 @@ theorem ext : (∀ x, p x = q x) → p = q :=
instance : PartialOrder (GroupSeminorm E) :=
PartialOrder.lift _ FunLike.coe_injective
-/- warning: group_seminorm.le_def -> GroupSeminorm.le_def is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} E _inst_1))) p q) (LE.le.{u1} (E -> Real) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.le_def GroupSeminorm.le_defₓ'. -/
@[to_additive]
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
#align group_seminorm.le_def GroupSeminorm.le_def
#align add_group_seminorm.le_def AddGroupSeminorm.le_def
-/- warning: group_seminorm.lt_def -> GroupSeminorm.lt_def is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (E -> Real) (Preorder.toLT.{u1} (E -> Real) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.lt_def GroupSeminorm.lt_defₓ'. -/
@[to_additive]
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
#align group_seminorm.lt_def GroupSeminorm.lt_def
#align add_group_seminorm.lt_def AddGroupSeminorm.lt_def
-/- warning: group_seminorm.coe_le_coe -> GroupSeminorm.coe_le_coe is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (E -> Real) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q)) (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} E _inst_1))) p q)
-Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_le_coe GroupSeminorm.coe_le_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
Iff.rfl
#align group_seminorm.coe_le_coe GroupSeminorm.coe_le_coe
#align add_group_seminorm.coe_le_coe AddGroupSeminorm.coe_le_coe
-/- warning: group_seminorm.coe_lt_coe -> GroupSeminorm.coe_lt_coe is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (E -> Real) (Preorder.toLT.{u1} (E -> Real) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q)) (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} E _inst_1))) p q)
-Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_lt_coe GroupSeminorm.coe_lt_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
Iff.rfl
@@ -309,24 +279,12 @@ instance : Zero (GroupSeminorm E) :=
mul_le' := fun _ _ => (zero_add _).ge
inv' := fun x => rfl }⟩
-/- warning: group_seminorm.coe_zero -> GroupSeminorm.coe_zero is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E], Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (OfNat.mk.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (Zero.zero.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasZero.{u1} E _inst_1))))) (OfNat.ofNat.{u1} (E -> Real) 0 (OfNat.mk.{u1} (E -> Real) 0 (Zero.zero.{u1} (E -> Real) (Pi.instZero.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasZero)))))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E], Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (Zero.toOfNat0.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instZeroGroupSeminorm.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (E -> Real) 0 (Zero.toOfNat0.{u1} (E -> Real) (Pi.instZero.{u1, 0} E (fun (a : E) => Real) (fun (i : E) => Real.instZeroReal))))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_zero GroupSeminorm.coe_zeroₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_zero : ⇑(0 : GroupSeminorm E) = 0 :=
rfl
#align group_seminorm.coe_zero GroupSeminorm.coe_zero
#align add_group_seminorm.coe_zero AddGroupSeminorm.coe_zero
-/- warning: group_seminorm.zero_apply -> GroupSeminorm.zero_apply is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (OfNat.mk.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (Zero.zero.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasZero.{u1} E _inst_1)))) x) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero)))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (Zero.toOfNat0.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instZeroGroupSeminorm.{u1} E _inst_1))) x) (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.zero_apply GroupSeminorm.zero_applyₓ'. -/
@[simp, to_additive]
theorem zero_apply (x : E) : (0 : GroupSeminorm E) x = 0 :=
rfl
@@ -347,24 +305,12 @@ instance : Add (GroupSeminorm E) :=
add_add_add_comm _ _ _ _
inv' := fun x => by rw [map_inv_eq_map p, map_inv_eq_map q] }⟩
-/- warning: group_seminorm.coe_add -> GroupSeminorm.coe_add is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (instHAdd.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasAdd.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (E -> Real) (E -> Real) (E -> Real) (instHAdd.{u1} (E -> Real) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasAdd))) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (HAdd.hAdd.{u1, u1, u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (instHAdd.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instAddGroupSeminorm.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (E -> Real) (E -> Real) (E -> Real) (instHAdd.{u1} (E -> Real) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instAddReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_add GroupSeminorm.coe_addₓ'. -/
@[simp, to_additive]
theorem coe_add : ⇑(p + q) = p + q :=
rfl
#align group_seminorm.coe_add GroupSeminorm.coe_add
#align add_group_seminorm.coe_add AddGroupSeminorm.coe_add
-/- warning: group_seminorm.add_apply -> GroupSeminorm.add_apply is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (instHAdd.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasAdd.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q x))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1) (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (HAdd.hAdd.{u1, u1, u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (instHAdd.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instAddGroupSeminorm.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q x))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.add_apply GroupSeminorm.add_applyₓ'. -/
@[simp, to_additive]
theorem add_apply (x : E) : (p + q) x = p x + q x :=
rfl
@@ -384,24 +330,12 @@ instance : Sup (GroupSeminorm E) :=
((map_mul_le_add q x y).trans <| add_le_add le_sup_right le_sup_right)
inv' := fun x => by rw [Pi.sup_apply, Pi.sup_apply, map_inv_eq_map p, map_inv_eq_map q] }⟩
-/- warning: group_seminorm.coe_sup -> GroupSeminorm.coe_sup is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (Sup.sup.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instSupGroupSeminorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_sup GroupSeminorm.coe_supₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
rfl
#align group_seminorm.coe_sup GroupSeminorm.coe_sup
#align add_group_seminorm.coe_sup AddGroupSeminorm.coe_sup
-/- warning: group_seminorm.sup_apply -> GroupSeminorm.sup_apply is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q x))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1) (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (Sup.sup.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instSupGroupSeminorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q x))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.sup_apply GroupSeminorm.sup_applyₓ'. -/
@[simp, to_additive]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
rfl
@@ -426,24 +360,12 @@ def comp (p : GroupSeminorm E) (f : F →* E) : GroupSeminorm F
#align add_group_seminorm.comp AddGroupSeminorm.comp
-/
-/- warning: group_seminorm.coe_comp -> GroupSeminorm.coe_comp is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (F -> Real) (coeFn.{succ u2, succ u2} (GroupSeminorm.{u2} F _inst_2) (fun (_x : GroupSeminorm.{u2} F _inst_2) => F -> Real) (GroupSeminorm.hasCoeToFun.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f)) (Function.comp.{succ u2, succ u1, 1} F E Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (fun (_x : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) => F -> E) (MonoidHom.hasCoeToFun.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) f))
-but is expected to have type
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (F -> Real) (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} F _inst_2) F (fun (_x : F) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real _inst_2 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f)) (Function.comp.{succ u2, succ u1, 1} F E Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F (fun (_x : F) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : F) => E) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) (MonoidHom.monoidHomClass.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))) f))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_comp GroupSeminorm.coe_compₓ'. -/
@[simp, to_additive]
theorem coe_comp : ⇑(p.comp f) = p ∘ f :=
rfl
#align group_seminorm.coe_comp GroupSeminorm.coe_comp
#align add_group_seminorm.coe_comp AddGroupSeminorm.coe_comp
-/- warning: group_seminorm.comp_apply -> GroupSeminorm.comp_apply is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (x : F), Eq.{1} Real (coeFn.{succ u2, succ u2} (GroupSeminorm.{u2} F _inst_2) (fun (_x : GroupSeminorm.{u2} F _inst_2) => F -> Real) (GroupSeminorm.hasCoeToFun.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) x) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (fun (_x : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) => F -> E) (MonoidHom.hasCoeToFun.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) f x))
-but is expected to have type
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (x : F), Eq.{1} Real (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} F _inst_2) F (fun (_x : F) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real _inst_2 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F (fun (_x : F) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : F) => E) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) (MonoidHom.monoidHomClass.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))) f x))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_apply GroupSeminorm.comp_applyₓ'. -/
@[simp, to_additive]
theorem comp_apply (x : F) : (p.comp f) x = p (f x) :=
rfl
@@ -458,48 +380,24 @@ theorem comp_id : p.comp (MonoidHom.id _) = p :=
#align add_group_seminorm.comp_id AddGroupSeminorm.comp_id
-/
-/- warning: group_seminorm.comp_zero -> GroupSeminorm.comp_zero is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1), Eq.{succ u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p (OfNat.ofNat.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) 1 (OfNat.mk.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) 1 (One.one.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHom.hasOne.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{u2} (GroupSeminorm.{u2} F _inst_2) 0 (OfNat.mk.{u2} (GroupSeminorm.{u2} F _inst_2) 0 (Zero.zero.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.hasZero.{u2} F _inst_2))))
-but is expected to have type
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1), Eq.{succ u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p (OfNat.ofNat.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) 1 (One.toOfNat1.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (instOneMonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{u2} (GroupSeminorm.{u2} F _inst_2) 0 (Zero.toOfNat0.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.instZeroGroupSeminorm.{u2} F _inst_2)))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_zero GroupSeminorm.comp_zeroₓ'. -/
@[simp, to_additive]
theorem comp_zero : p.comp (1 : F →* E) = 0 :=
ext fun _ => map_one_eq_zero p
#align group_seminorm.comp_zero GroupSeminorm.comp_zero
#align add_group_seminorm.comp_zero AddGroupSeminorm.comp_zero
-/- warning: group_seminorm.zero_comp -> GroupSeminorm.zero_comp is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (OfNat.mk.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (Zero.zero.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasZero.{u1} E _inst_1)))) f) (OfNat.ofNat.{u2} (GroupSeminorm.{u2} F _inst_2) 0 (OfNat.mk.{u2} (GroupSeminorm.{u2} F _inst_2) 0 (Zero.zero.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.hasZero.{u2} F _inst_2))))
-but is expected to have type
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (Zero.toOfNat0.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instZeroGroupSeminorm.{u1} E _inst_1))) f) (OfNat.ofNat.{u2} (GroupSeminorm.{u2} F _inst_2) 0 (Zero.toOfNat0.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.instZeroGroupSeminorm.{u2} F _inst_2)))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.zero_comp GroupSeminorm.zero_compₓ'. -/
@[simp, to_additive]
theorem zero_comp : (0 : GroupSeminorm E).comp f = 0 :=
ext fun _ => rfl
#align group_seminorm.zero_comp GroupSeminorm.zero_comp
#align add_group_seminorm.zero_comp AddGroupSeminorm.zero_comp
-/- warning: group_seminorm.comp_assoc -> GroupSeminorm.comp_assoc is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} {F : Type.{u2}} {G : Type.{u3}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] [_inst_3 : Group.{u3} G] (p : GroupSeminorm.{u1} E _inst_1) (g : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (f : MonoidHom.{u3, u2} G F (Monoid.toMulOneClass.{u3} G (DivInvMonoid.toMonoid.{u3} G (Group.toDivInvMonoid.{u3} G _inst_3))) (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))), Eq.{succ u3} (GroupSeminorm.{u3} G _inst_3) (GroupSeminorm.comp.{u1, u3} E G _inst_1 _inst_3 p (MonoidHom.comp.{u3, u2, u1} G F E (Monoid.toMulOneClass.{u3} G (DivInvMonoid.toMonoid.{u3} G (Group.toDivInvMonoid.{u3} G _inst_3))) (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) g f)) (GroupSeminorm.comp.{u2, u3} F G _inst_2 _inst_3 (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p g) f)
-but is expected to have type
- forall {E : Type.{u2}} {F : Type.{u3}} {G : Type.{u1}} [_inst_1 : Group.{u2} E] [_inst_2 : Group.{u3} F] [_inst_3 : Group.{u1} G] (p : GroupSeminorm.{u2} E _inst_1) (g : MonoidHom.{u3, u2} F E (Monoid.toMulOneClass.{u3} F (DivInvMonoid.toMonoid.{u3} F (Group.toDivInvMonoid.{u3} F _inst_2))) (Monoid.toMulOneClass.{u2} E (DivInvMonoid.toMonoid.{u2} E (Group.toDivInvMonoid.{u2} E _inst_1)))) (f : MonoidHom.{u1, u3} G F (Monoid.toMulOneClass.{u1} G (DivInvMonoid.toMonoid.{u1} G (Group.toDivInvMonoid.{u1} G _inst_3))) (Monoid.toMulOneClass.{u3} F (DivInvMonoid.toMonoid.{u3} F (Group.toDivInvMonoid.{u3} F _inst_2)))), Eq.{succ u1} (GroupSeminorm.{u1} G _inst_3) (GroupSeminorm.comp.{u2, u1} E G _inst_1 _inst_3 p (MonoidHom.comp.{u1, u3, u2} G F E (Monoid.toMulOneClass.{u1} G (DivInvMonoid.toMonoid.{u1} G (Group.toDivInvMonoid.{u1} G _inst_3))) (Monoid.toMulOneClass.{u3} F (DivInvMonoid.toMonoid.{u3} F (Group.toDivInvMonoid.{u3} F _inst_2))) (Monoid.toMulOneClass.{u2} E (DivInvMonoid.toMonoid.{u2} E (Group.toDivInvMonoid.{u2} E _inst_1))) g f)) (GroupSeminorm.comp.{u3, u1} F G _inst_2 _inst_3 (GroupSeminorm.comp.{u2, u3} E F _inst_1 _inst_2 p g) f)
-Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_assoc GroupSeminorm.comp_assocₓ'. -/
@[to_additive]
theorem comp_assoc (g : F →* E) (f : G →* F) : p.comp (g.comp f) = (p.comp g).comp f :=
ext fun _ => rfl
#align group_seminorm.comp_assoc GroupSeminorm.comp_assoc
#align add_group_seminorm.comp_assoc AddGroupSeminorm.comp_assoc
-/- warning: group_seminorm.add_comp -> GroupSeminorm.add_comp is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 (HAdd.hAdd.{u1, u1, u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (instHAdd.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasAdd.{u1} E _inst_1)) p q) f) (HAdd.hAdd.{u2, u2, u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.{u2} F _inst_2) (instHAdd.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.hasAdd.{u2} F _inst_2)) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 q f))
-but is expected to have type
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 (HAdd.hAdd.{u1, u1, u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (instHAdd.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instAddGroupSeminorm.{u1} E _inst_1)) p q) f) (HAdd.hAdd.{u2, u2, u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.{u2} F _inst_2) (instHAdd.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.instAddGroupSeminorm.{u2} F _inst_2)) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 q f))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.add_comp GroupSeminorm.add_compₓ'. -/
@[to_additive]
theorem add_comp (f : F →* E) : (p + q).comp f = p.comp f + q.comp f :=
ext fun _ => rfl
@@ -508,12 +406,6 @@ theorem add_comp (f : F →* E) : (p + q).comp f = p.comp f + q.comp f :=
variable {p q}
-/- warning: group_seminorm.comp_mono -> GroupSeminorm.comp_mono is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1} (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q) -> (LE.le.{u2} (GroupSeminorm.{u2} F _inst_2) (Preorder.toHasLe.{u2} (GroupSeminorm.{u2} F _inst_2) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.partialOrder.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 q f))
-but is expected to have type
- forall {E : Type.{u2}} {F : Type.{u1}} [_inst_1 : Group.{u2} E] [_inst_2 : Group.{u1} F] {p : GroupSeminorm.{u2} E _inst_1} {q : GroupSeminorm.{u2} E _inst_1} (f : MonoidHom.{u1, u2} F E (Monoid.toMulOneClass.{u1} F (DivInvMonoid.toMonoid.{u1} F (Group.toDivInvMonoid.{u1} F _inst_2))) (Monoid.toMulOneClass.{u2} E (DivInvMonoid.toMonoid.{u2} E (Group.toDivInvMonoid.{u2} E _inst_1)))), (LE.le.{u2} (GroupSeminorm.{u2} E _inst_1) (Preorder.toLE.{u2} (GroupSeminorm.{u2} E _inst_1) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u2} E _inst_1))) p q) -> (LE.le.{u1} (GroupSeminorm.{u1} F _inst_2) (Preorder.toLE.{u1} (GroupSeminorm.{u1} F _inst_2) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} F _inst_2) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} F _inst_2))) (GroupSeminorm.comp.{u2, u1} E F _inst_1 _inst_2 p f) (GroupSeminorm.comp.{u2, u1} E F _inst_1 _inst_2 q f))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_mono GroupSeminorm.comp_monoₓ'. -/
@[to_additive]
theorem comp_mono (hp : p ≤ q) : p.comp f ≤ q.comp f := fun _ => hp _
#align group_seminorm.comp_mono GroupSeminorm.comp_mono
@@ -525,24 +417,12 @@ section CommGroup
variable [CommGroup E] [CommGroup F] (p q : GroupSeminorm E) (x y : E)
-/- warning: group_seminorm.comp_mul_le -> GroupSeminorm.comp_mul_le is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : CommGroup.{u1} E] [_inst_2 : CommGroup.{u2} F] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (g : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))), LE.le.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (Preorder.toHasLe.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.partialOrder.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (instHMul.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.hasMul.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (CommGroup.toCommMonoid.{u1} E _inst_1))) f g)) (HAdd.hAdd.{u2, u2, u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (instHAdd.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.hasAdd.{u2} F (CommGroup.toGroup.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p f) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p g))
-but is expected to have type
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : CommGroup.{u1} E] [_inst_2 : CommGroup.{u2} F] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (g : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))), LE.le.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (Preorder.toLE.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.instPartialOrderGroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (instHMul.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.mul.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (CommGroup.toCommMonoid.{u1} E _inst_1))) f g)) (HAdd.hAdd.{u2, u2, u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (instHAdd.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.instAddGroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p f) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p g))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_mul_le GroupSeminorm.comp_mul_leₓ'. -/
@[to_additive]
theorem comp_mul_le (f g : F →* E) : p.comp (f * g) ≤ p.comp f + p.comp g := fun _ =>
map_mul_le_add p _ _
#align group_seminorm.comp_mul_le GroupSeminorm.comp_mul_le
#align add_group_seminorm.comp_add_le AddGroupSeminorm.comp_add_le
-/- warning: group_seminorm.mul_bdd_below_range_add -> GroupSeminorm.mul_bddBelow_range_add is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : CommGroup.{u1} E] {p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)} {q : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)} {x : E}, BddBelow.{0} Real Real.preorder (Set.range.{0, succ u1} Real E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) p y) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) q (HDiv.hDiv.{u1, u1, u1} E E E (instHDiv.{u1} E (DivInvMonoid.toHasDiv.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) x y))))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : CommGroup.{u1} E] {p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)} {q : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)} {x : E}, BddBelow.{0} Real Real.instPreorderReal (Set.range.{0, succ u1} Real E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) p y) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) q (HDiv.hDiv.{u1, u1, u1} E E E (instHDiv.{u1} E (DivInvMonoid.toDiv.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) x y))))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.mul_bdd_below_range_add GroupSeminorm.mul_bddBelow_range_addₓ'. -/
@[to_additive]
theorem mul_bddBelow_range_add {p q : GroupSeminorm E} {x : E} :
BddBelow (range fun y => p y + q (x / y)) :=
@@ -567,12 +447,6 @@ noncomputable instance : Inf (GroupSeminorm E) :=
(inv_surjective.iInf_comp _).symm.trans <| by
simp_rw [map_inv_eq_map p, ← inv_div', map_inv_eq_map q] }⟩
-/- warning: group_seminorm.inf_apply -> GroupSeminorm.inf_apply is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : CommGroup.{u1} E] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (q : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (Inf.inf.{u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (GroupSeminorm.hasInf.{u1} E _inst_1) p q) x) (iInf.{0, succ u1} Real Real.hasInf E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) p y) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) q (HDiv.hDiv.{u1, u1, u1} E E E (instHDiv.{u1} E (DivInvMonoid.toHasDiv.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) x y))))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : CommGroup.{u1} E] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (q : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) (Inf.inf.{u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (GroupSeminorm.instInfGroupSeminormToGroup.{u1} E _inst_1) p q) x) (iInf.{0, succ u1} Real Real.instInfSetReal E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) p y) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) q (HDiv.hDiv.{u1, u1, u1} E E E (instHDiv.{u1} E (DivInvMonoid.toDiv.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) x y))))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.inf_apply GroupSeminorm.inf_applyₓ'. -/
@[simp, to_additive]
theorem inf_apply : (p ⊓ q) x = ⨅ y, p y + q (x / y) :=
rfl
@@ -611,12 +485,6 @@ instance [DecidableEq E] : One (AddGroupSeminorm E) :=
refine' le_add_of_le_of_nonneg _ _ <;> split_ifs <;> norm_num
neg' := fun x => by simp_rw [neg_eq_zero] }⟩
-/- warning: add_group_seminorm.apply_one -> AddGroupSeminorm.apply_one is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_5 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (AddGroupSeminorm.{u1} E _inst_1) (fun (_x : AddGroupSeminorm.{u1} E _inst_1) => E -> Real) (AddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (AddGroupSeminorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (AddGroupSeminorm.{u1} E _inst_1) 1 (One.one.{u1} (AddGroupSeminorm.{u1} E _inst_1) (AddGroupSeminorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_5 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_5 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_5 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (AddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (SubadditiveHomClass.toFunLike.{u1, u1, 0} (AddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u1, u1, 0} (AddGroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupSeminorm.addGroupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (AddGroupSeminorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (AddGroupSeminorm.{u1} E _inst_1) (AddGroupSeminorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_5 a b)))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_5 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) (OfNat.ofNat.{0} Real 1 (One.toOfNat1.{0} Real Real.instOneReal)))
-Case conversion may be inaccurate. Consider using '#align add_group_seminorm.apply_one AddGroupSeminorm.apply_oneₓ'. -/
@[simp]
theorem apply_one [DecidableEq E] (x : E) : (1 : AddGroupSeminorm E) x = if x = 0 then 0 else 1 :=
rfl
@@ -637,12 +505,6 @@ instance : SMul R (AddGroupSeminorm E) :=
(mul_add _ _ _)
neg' := fun x => by rw [map_neg_eq_map] }⟩
-/- warning: add_group_seminorm.coe_smul -> AddGroupSeminorm.coe_smul is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (SMulZeroClass.toHasSmul.{0, 0} NNReal Real (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (SMulWithZero.toSmulZeroClass.{0, 0} NNReal Real (MulZeroClass.toHasZero.{0} NNReal (MulZeroOneClass.toMulZeroClass.{0} NNReal (MonoidWithZero.toMulZeroOneClass.{0} NNReal (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring)))) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (MulActionWithZero.toSMulWithZero.{0, 0} NNReal Real (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (Module.toMulActionWithZero.{0, 0} NNReal Real NNReal.semiring (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (NNReal.module.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (Semiring.toModule.{0} Real Real.semiring)))))) _inst_2] (r : R) (p : AddGroupSeminorm.{u2} E _inst_1), Eq.{succ u2} (E -> Real) (coeFn.{succ u2, succ u2} (AddGroupSeminorm.{u2} E _inst_1) (fun (_x : AddGroupSeminorm.{u2} E _inst_1) => E -> Real) (AddGroupSeminorm.hasCoeToFun.{u2} E _inst_1) (SMul.smul.{u1, u2} R (AddGroupSeminorm.{u2} E _inst_1) (AddGroupSeminorm.hasSmul.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4) r p)) (SMul.smul.{u1, u2} R (E -> Real) (Function.hasSMul.{u2, u1, 0} E R Real _inst_2) r (coeFn.{succ u2, succ u2} (AddGroupSeminorm.{u2} E _inst_1) (fun (_x : AddGroupSeminorm.{u2} E _inst_1) => E -> Real) (AddGroupSeminorm.hasCoeToFun.{u2} E _inst_1) p))
-but is expected to have type
- forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (Algebra.toSMul.{0, 0} NNReal Real instNNRealCommSemiring Real.semiring (NNReal.instAlgebraNNRealInstNNRealCommSemiring.{0} Real Real.semiring (Algebra.id.{0} Real Real.instCommSemiringReal))) _inst_2] (r : R) (p : AddGroupSeminorm.{u2} E _inst_1), Eq.{succ u2} (E -> Real) (FunLike.coe.{succ u2, succ u2, 1} (AddGroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (SubadditiveHomClass.toFunLike.{u2, u2, 0} (AddGroupSeminorm.{u2} E _inst_1) E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u2, u2, 0} (AddGroupSeminorm.{u2} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupSeminorm.addGroupSeminormClass.{u2} E _inst_1))) (HSMul.hSMul.{u1, u2, u2} R (AddGroupSeminorm.{u2} E _inst_1) (AddGroupSeminorm.{u2} E _inst_1) (instHSMul.{u1, u2} R (AddGroupSeminorm.{u2} E _inst_1) (AddGroupSeminorm.toSMul.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4)) r p)) (HSMul.hSMul.{u1, u2, u2} R (E -> Real) (E -> Real) (instHSMul.{u1, u2} R (E -> Real) (Pi.instSMul.{u2, 0, u1} E R (fun (a : E) => Real) (fun (i : E) => _inst_2))) r (FunLike.coe.{succ u2, succ u2, 1} (AddGroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (SubadditiveHomClass.toFunLike.{u2, u2, 0} (AddGroupSeminorm.{u2} E _inst_1) E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u2, u2, 0} (AddGroupSeminorm.{u2} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupSeminorm.addGroupSeminormClass.{u2} E _inst_1))) p))
-Case conversion may be inaccurate. Consider using '#align add_group_seminorm.coe_smul AddGroupSeminorm.coe_smulₓ'. -/
@[simp, norm_cast]
theorem coe_smul (r : R) (p : AddGroupSeminorm E) : ⇑(r • p) = r • p :=
rfl
@@ -691,23 +553,11 @@ instance nonarchAddGroupSeminormClass : NonarchAddGroupSeminormClass (NonarchAdd
instance : CoeFun (NonarchAddGroupSeminorm E) fun _ => E → ℝ :=
⟨NonarchAddGroupSeminorm.toFun⟩
-/- warning: nonarch_add_group_seminorm.to_fun_eq_coe -> NonarchAddGroupSeminorm.toZeroHom_eq_coe is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (NonarchAddGroupSeminorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1}, Eq.{succ u1} (forall (ᾰ : E), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (ZeroHom.{u1, 0} E Real (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1)))) Real.instZeroReal) E (fun (a : E) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : E) => Real) a) (ZeroHomClass.toFunLike.{u1, u1, 0} (ZeroHom.{u1, 0} E Real (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1)))) Real.instZeroReal) E Real (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1)))) Real.instZeroReal (ZeroHom.zeroHomClass.{u1, 0} E Real (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1)))) Real.instZeroReal)) (NonarchAddGroupSeminorm.toZeroHom.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p)
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.to_fun_eq_coe NonarchAddGroupSeminorm.toZeroHom_eq_coeₓ'. -/
@[simp]
theorem toZeroHom_eq_coe : p.toFun = p :=
rfl
#align nonarch_add_group_seminorm.to_fun_eq_coe NonarchAddGroupSeminorm.toZeroHom_eq_coe
-/- warning: nonarch_add_group_seminorm.ext -> NonarchAddGroupSeminorm.ext is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) p q)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q x)) -> (Eq.{succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) p q)
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.ext NonarchAddGroupSeminorm.extₓ'. -/
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
FunLike.ext p q
@@ -716,43 +566,19 @@ theorem ext : (∀ x, p x = q x) → p = q :=
noncomputable instance : PartialOrder (NonarchAddGroupSeminorm E) :=
PartialOrder.lift _ FunLike.coe_injective
-/- warning: nonarch_add_group_seminorm.le_def -> NonarchAddGroupSeminorm.le_def is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instPartialOrderNonarchAddGroupSeminorm.{u1} E _inst_1))) p q) (LE.le.{u1} (E -> Real) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.le_def NonarchAddGroupSeminorm.le_defₓ'. -/
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
#align nonarch_add_group_seminorm.le_def NonarchAddGroupSeminorm.le_def
-/- warning: nonarch_add_group_seminorm.lt_def -> NonarchAddGroupSeminorm.lt_def is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instPartialOrderNonarchAddGroupSeminorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (E -> Real) (Preorder.toLT.{u1} (E -> Real) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.lt_def NonarchAddGroupSeminorm.lt_defₓ'. -/
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
#align nonarch_add_group_seminorm.lt_def NonarchAddGroupSeminorm.lt_def
-/- warning: nonarch_add_group_seminorm.coe_le_coe -> NonarchAddGroupSeminorm.coe_le_coe is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (E -> Real) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q)) (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instPartialOrderNonarchAddGroupSeminorm.{u1} E _inst_1))) p q)
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.coe_le_coe NonarchAddGroupSeminorm.coe_le_coeₓ'. -/
@[simp, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
Iff.rfl
#align nonarch_add_group_seminorm.coe_le_coe NonarchAddGroupSeminorm.coe_le_coe
-/- warning: nonarch_add_group_seminorm.coe_lt_coe -> NonarchAddGroupSeminorm.coe_lt_coe is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (E -> Real) (Preorder.toLT.{u1} (E -> Real) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q)) (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instPartialOrderNonarchAddGroupSeminorm.{u1} E _inst_1))) p q)
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.coe_lt_coe NonarchAddGroupSeminorm.coe_lt_coeₓ'. -/
@[simp, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
Iff.rfl
@@ -766,23 +592,11 @@ instance : Zero (NonarchAddGroupSeminorm E) :=
add_le_max' := fun r s => by simp only [Pi.zero_apply, max_eq_right]
neg' := fun x => rfl }⟩
-/- warning: nonarch_add_group_seminorm.coe_zero -> NonarchAddGroupSeminorm.coe_zero is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E], Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 0 (OfNat.mk.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 0 (Zero.zero.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.hasZero.{u1} E _inst_1))))) (OfNat.ofNat.{u1} (E -> Real) 0 (OfNat.mk.{u1} (E -> Real) 0 (Zero.zero.{u1} (E -> Real) (Pi.instZero.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasZero)))))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E], Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 0 (Zero.toOfNat0.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instZeroNonarchAddGroupSeminorm.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (E -> Real) 0 (Zero.toOfNat0.{u1} (E -> Real) (Pi.instZero.{u1, 0} E (fun (a : E) => Real) (fun (i : E) => Real.instZeroReal))))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.coe_zero NonarchAddGroupSeminorm.coe_zeroₓ'. -/
@[simp, norm_cast]
theorem coe_zero : ⇑(0 : NonarchAddGroupSeminorm E) = 0 :=
rfl
#align nonarch_add_group_seminorm.coe_zero NonarchAddGroupSeminorm.coe_zero
-/- warning: nonarch_add_group_seminorm.zero_apply -> NonarchAddGroupSeminorm.zero_apply is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 0 (OfNat.mk.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 0 (Zero.zero.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.hasZero.{u1} E _inst_1)))) x) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero)))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 0 (Zero.toOfNat0.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instZeroNonarchAddGroupSeminorm.{u1} E _inst_1))) x) (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.zero_apply NonarchAddGroupSeminorm.zero_applyₓ'. -/
@[simp]
theorem zero_apply (x : E) : (0 : NonarchAddGroupSeminorm E) x = 0 :=
rfl
@@ -802,23 +616,11 @@ instance : Sup (NonarchAddGroupSeminorm E) :=
((map_add_le_max q x y).trans <| max_le_max le_sup_right le_sup_right)
neg' := fun x => by rw [Pi.sup_apply, Pi.sup_apply, map_neg_eq_map p, map_neg_eq_map q] }⟩
-/- warning: nonarch_add_group_seminorm.coe_sup -> NonarchAddGroupSeminorm.coe_sup is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupSeminorm.{u1} E _inst_1) (q : NonarchAddGroupSeminorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupSeminorm.{u1} E _inst_1) (q : NonarchAddGroupSeminorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (Sup.sup.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instSupNonarchAddGroupSeminorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.coe_sup NonarchAddGroupSeminorm.coe_supₓ'. -/
@[simp, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
rfl
#align nonarch_add_group_seminorm.coe_sup NonarchAddGroupSeminorm.coe_sup
-/- warning: nonarch_add_group_seminorm.sup_apply -> NonarchAddGroupSeminorm.sup_apply is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupSeminorm.{u1} E _inst_1) (q : NonarchAddGroupSeminorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q x))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupSeminorm.{u1} E _inst_1) (q : NonarchAddGroupSeminorm.{u1} E _inst_1) (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (Sup.sup.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instSupNonarchAddGroupSeminorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q x))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.sup_apply NonarchAddGroupSeminorm.sup_applyₓ'. -/
@[simp]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
rfl
@@ -833,12 +635,6 @@ section AddCommGroup
variable [AddCommGroup E] [AddCommGroup F] (p q : NonarchAddGroupSeminorm E) (x y : E)
-/- warning: nonarch_add_group_seminorm.add_bdd_below_range_add -> NonarchAddGroupSeminorm.add_bddBelow_range_add is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddCommGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)} {q : NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)} {x : E}, BddBelow.{0} Real Real.preorder (Set.range.{0, succ u1} Real E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) (fun (_x : NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) p y) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) (fun (_x : NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) q (HSub.hSub.{u1, u1, u1} E E E (instHSub.{u1} E (SubNegMonoid.toHasSub.{u1} E (AddGroup.toSubNegMonoid.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)))) x y))))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddCommGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)} {q : NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)} {x : E}, BddBelow.{0} Real Real.instPreorderReal (Set.range.{0, succ u1} Real E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1))))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) E (AddCommGroup.toAddGroup.{u1} E _inst_1) (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)))) p y) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1))))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) E (AddCommGroup.toAddGroup.{u1} E _inst_1) (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)))) q (HSub.hSub.{u1, u1, u1} E E E (instHSub.{u1} E (SubNegMonoid.toSub.{u1} E (AddGroup.toSubNegMonoid.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)))) x y))))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.add_bdd_below_range_add NonarchAddGroupSeminorm.add_bddBelow_range_addₓ'. -/
theorem add_bddBelow_range_add {p q : NonarchAddGroupSeminorm E} {x : E} :
BddBelow (range fun y => p y + q (x - y)) :=
⟨0, by rintro _ ⟨x, rfl⟩; dsimp; positivity⟩
@@ -863,12 +659,6 @@ instance [DecidableEq E] : One (GroupSeminorm E) :=
refine' le_add_of_le_of_nonneg _ _ <;> split_ifs <;> norm_num
inv' := fun x => by simp_rw [inv_eq_one] }⟩
-/- warning: group_seminorm.apply_one -> GroupSeminorm.apply_one is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_5 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (GroupSeminorm.{u1} E _inst_1) 1 (One.one.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_5 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (_inst_5 x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_5 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_5 a b)))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (_inst_5 x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) (OfNat.ofNat.{0} Real 1 (One.toOfNat1.{0} Real Real.instOneReal)))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.apply_one GroupSeminorm.apply_oneₓ'. -/
@[simp, to_additive AddGroupSeminorm.apply_one]
theorem apply_one [DecidableEq E] (x : E) : (1 : GroupSeminorm E) x = if x = 1 then 0 else 1 :=
rfl
@@ -896,12 +686,6 @@ instance [SMul R' ℝ] [SMul R' ℝ≥0] [IsScalarTower R' ℝ≥0 ℝ] [SMul R
IsScalarTower R R' (GroupSeminorm E) :=
⟨fun r a p => ext fun x => smul_assoc r a <| p x⟩
-/- warning: group_seminorm.coe_smul -> GroupSeminorm.coe_smul is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : Group.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (SMulZeroClass.toHasSmul.{0, 0} NNReal Real (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (SMulWithZero.toSmulZeroClass.{0, 0} NNReal Real (MulZeroClass.toHasZero.{0} NNReal (MulZeroOneClass.toMulZeroClass.{0} NNReal (MonoidWithZero.toMulZeroOneClass.{0} NNReal (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring)))) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (MulActionWithZero.toSMulWithZero.{0, 0} NNReal Real (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (Module.toMulActionWithZero.{0, 0} NNReal Real NNReal.semiring (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (NNReal.module.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (Semiring.toModule.{0} Real Real.semiring)))))) _inst_2] (r : R) (p : GroupSeminorm.{u2} E _inst_1), Eq.{succ u2} (E -> Real) (coeFn.{succ u2, succ u2} (GroupSeminorm.{u2} E _inst_1) (fun (_x : GroupSeminorm.{u2} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u2} E _inst_1) (SMul.smul.{u1, u2} R (GroupSeminorm.{u2} E _inst_1) (GroupSeminorm.hasSmul.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4) r p)) (SMul.smul.{u1, u2} R (E -> Real) (Function.hasSMul.{u2, u1, 0} E R Real _inst_2) r (coeFn.{succ u2, succ u2} (GroupSeminorm.{u2} E _inst_1) (fun (_x : GroupSeminorm.{u2} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u2} E _inst_1) p))
-but is expected to have type
- forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : Group.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (Algebra.toSMul.{0, 0} NNReal Real instNNRealCommSemiring Real.semiring (NNReal.instAlgebraNNRealInstNNRealCommSemiring.{0} Real Real.semiring (Algebra.id.{0} Real Real.instCommSemiringReal))) _inst_2] (r : R) (p : GroupSeminorm.{u2} E _inst_1), Eq.{succ u2} (E -> Real) (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} E _inst_1) E Real (MulOneClass.toMul.{u2} E (Monoid.toMulOneClass.{u2} E (DivInvMonoid.toMonoid.{u2} E (Group.toDivInvMonoid.{u2} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} E _inst_1))) (HSMul.hSMul.{u1, u2, u2} R (GroupSeminorm.{u2} E _inst_1) (GroupSeminorm.{u2} E _inst_1) (instHSMul.{u1, u2} R (GroupSeminorm.{u2} E _inst_1) (GroupSeminorm.instSMulGroupSeminorm.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4)) r p)) (HSMul.hSMul.{u1, u2, u2} R (E -> Real) (E -> Real) (instHSMul.{u1, u2} R (E -> Real) (Pi.instSMul.{u2, 0, u1} E R (fun (a : E) => Real) (fun (i : E) => _inst_2))) r (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} E _inst_1) E Real (MulOneClass.toMul.{u2} E (Monoid.toMulOneClass.{u2} E (DivInvMonoid.toMonoid.{u2} E (Group.toDivInvMonoid.{u2} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} E _inst_1))) p))
-Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_smul GroupSeminorm.coe_smulₓ'. -/
@[simp, to_additive AddGroupSeminorm.coe_smul, norm_cast]
theorem coe_smul (r : R) (p : GroupSeminorm E) : ⇑(r • p) = r • p :=
rfl
@@ -942,12 +726,6 @@ instance [DecidableEq E] : One (NonarchAddGroupSeminorm E) :=
· rw [if_neg hx]; split_ifs <;> norm_num
neg' := fun x => by simp_rw [neg_eq_zero] }⟩
-/- warning: nonarch_add_group_seminorm.apply_one -> NonarchAddGroupSeminorm.apply_one is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_5 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 1 (One.one.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_5 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_5 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_5 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instOneNonarchAddGroupSeminorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_5 a b)))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_5 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) (OfNat.ofNat.{0} Real 1 (One.toOfNat1.{0} Real Real.instOneReal)))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.apply_one NonarchAddGroupSeminorm.apply_oneₓ'. -/
@[simp]
theorem apply_one [DecidableEq E] (x : E) :
(1 : NonarchAddGroupSeminorm E) x = if x = 0 then 0 else 1 :=
@@ -972,23 +750,11 @@ instance [SMul R' ℝ] [SMul R' ℝ≥0] [IsScalarTower R' ℝ≥0 ℝ] [SMul R
IsScalarTower R R' (NonarchAddGroupSeminorm E) :=
⟨fun r a p => ext fun x => smul_assoc r a <| p x⟩
-/- warning: nonarch_add_group_seminorm.coe_smul -> NonarchAddGroupSeminorm.coe_smul is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (SMulZeroClass.toHasSmul.{0, 0} NNReal Real (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (SMulWithZero.toSmulZeroClass.{0, 0} NNReal Real (MulZeroClass.toHasZero.{0} NNReal (MulZeroOneClass.toMulZeroClass.{0} NNReal (MonoidWithZero.toMulZeroOneClass.{0} NNReal (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring)))) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (MulActionWithZero.toSMulWithZero.{0, 0} NNReal Real (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (Module.toMulActionWithZero.{0, 0} NNReal Real NNReal.semiring (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (NNReal.module.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (Semiring.toModule.{0} Real Real.semiring)))))) _inst_2] (r : R) (p : NonarchAddGroupSeminorm.{u2} E _inst_1), Eq.{succ u2} (E -> Real) (coeFn.{succ u2, succ u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u2} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u2} E _inst_1) (SMul.smul.{u1, u2} R (NonarchAddGroupSeminorm.{u2} E _inst_1) (NonarchAddGroupSeminorm.hasSmul.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4) r p)) (SMul.smul.{u1, u2} R (E -> Real) (Function.hasSMul.{u2, u1, 0} E R Real _inst_2) r (coeFn.{succ u2, succ u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u2} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u2} E _inst_1) p))
-but is expected to have type
- forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (Algebra.toSMul.{0, 0} NNReal Real instNNRealCommSemiring Real.semiring (NNReal.instAlgebraNNRealInstNNRealCommSemiring.{0} Real Real.semiring (Algebra.id.{0} Real Real.instCommSemiringReal))) _inst_2] (r : R) (p : NonarchAddGroupSeminorm.{u2} E _inst_1), Eq.{succ u2} (E -> Real) (FunLike.coe.{succ u2, succ u2, 1} (NonarchAddGroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u2, 0} (NonarchAddGroupSeminorm.{u2} E _inst_1) E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u2} E _inst_1))) (HSMul.hSMul.{u1, u2, u2} R (NonarchAddGroupSeminorm.{u2} E _inst_1) (NonarchAddGroupSeminorm.{u2} E _inst_1) (instHSMul.{u1, u2} R (NonarchAddGroupSeminorm.{u2} E _inst_1) (NonarchAddGroupSeminorm.instSMulNonarchAddGroupSeminorm.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4)) r p)) (HSMul.hSMul.{u1, u2, u2} R (E -> Real) (E -> Real) (instHSMul.{u1, u2} R (E -> Real) (Pi.instSMul.{u2, 0, u1} E R (fun (a : E) => Real) (fun (i : E) => _inst_2))) r (FunLike.coe.{succ u2, succ u2, 1} (NonarchAddGroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u2, 0} (NonarchAddGroupSeminorm.{u2} E _inst_1) E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u2} E _inst_1))) p))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.coe_smul NonarchAddGroupSeminorm.coe_smulₓ'. -/
@[simp, norm_cast]
theorem coe_smul (r : R) (p : NonarchAddGroupSeminorm E) : ⇑(r • p) = r • p :=
rfl
#align nonarch_add_group_seminorm.coe_smul NonarchAddGroupSeminorm.coe_smul
-/- warning: nonarch_add_group_seminorm.smul_apply -> NonarchAddGroupSeminorm.smul_apply is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (SMulZeroClass.toHasSmul.{0, 0} NNReal Real (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (SMulWithZero.toSmulZeroClass.{0, 0} NNReal Real (MulZeroClass.toHasZero.{0} NNReal (MulZeroOneClass.toMulZeroClass.{0} NNReal (MonoidWithZero.toMulZeroOneClass.{0} NNReal (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring)))) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (MulActionWithZero.toSMulWithZero.{0, 0} NNReal Real (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (Module.toMulActionWithZero.{0, 0} NNReal Real NNReal.semiring (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (NNReal.module.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (Semiring.toModule.{0} Real Real.semiring)))))) _inst_2] (r : R) (p : NonarchAddGroupSeminorm.{u2} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u2, succ u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u2} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u2} E _inst_1) (SMul.smul.{u1, u2} R (NonarchAddGroupSeminorm.{u2} E _inst_1) (NonarchAddGroupSeminorm.hasSmul.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4) r p) x) (SMul.smul.{u1, 0} R Real _inst_2 r (coeFn.{succ u2, succ u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u2} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u2} E _inst_1) p x))
-but is expected to have type
- forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (Algebra.toSMul.{0, 0} NNReal Real instNNRealCommSemiring Real.semiring (NNReal.instAlgebraNNRealInstNNRealCommSemiring.{0} Real Real.semiring (Algebra.id.{0} Real Real.instCommSemiringReal))) _inst_2] (r : R) (p : NonarchAddGroupSeminorm.{u2} E _inst_1) (x : E), Eq.{1} Real (FunLike.coe.{succ u2, succ u2, 1} (NonarchAddGroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u2, 0} (NonarchAddGroupSeminorm.{u2} E _inst_1) E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u2} E _inst_1))) (HSMul.hSMul.{u1, u2, u2} R (NonarchAddGroupSeminorm.{u2} E _inst_1) (NonarchAddGroupSeminorm.{u2} E _inst_1) (instHSMul.{u1, u2} R (NonarchAddGroupSeminorm.{u2} E _inst_1) (NonarchAddGroupSeminorm.instSMulNonarchAddGroupSeminorm.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4)) r p) x) (HSMul.hSMul.{u1, 0, 0} R Real Real (instHSMul.{u1, 0} R Real _inst_2) r (FunLike.coe.{succ u2, succ u2, 1} (NonarchAddGroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u2, 0} (NonarchAddGroupSeminorm.{u2} E _inst_1) E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u2} E _inst_1))) p x))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.smul_apply NonarchAddGroupSeminorm.smul_applyₓ'. -/
@[simp]
theorem smul_apply (r : R) (p : NonarchAddGroupSeminorm E) (x : E) : (r • p) x = r • p x :=
rfl
@@ -1035,24 +801,12 @@ directly. -/
instance : CoeFun (GroupNorm E) fun _ => E → ℝ :=
FunLike.hasCoeToFun
-/- warning: group_norm.to_fun_eq_coe -> GroupNorm.toGroupSeminorm_eq_coe is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (GroupNorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.956 : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (GroupNorm.toGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p)
-Case conversion may be inaccurate. Consider using '#align group_norm.to_fun_eq_coe GroupNorm.toGroupSeminorm_eq_coeₓ'. -/
@[simp, to_additive]
theorem toGroupSeminorm_eq_coe : p.toFun = p :=
rfl
#align group_norm.to_fun_eq_coe GroupNorm.toGroupSeminorm_eq_coe
#align add_group_norm.to_fun_eq_coe AddGroupNorm.toAddGroupSeminorm_eq_coe
-/- warning: group_norm.ext -> GroupNorm.ext is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
-Case conversion may be inaccurate. Consider using '#align group_norm.ext GroupNorm.extₓ'. -/
@[ext, to_additive]
theorem ext : (∀ x, p x = q x) → p = q :=
FunLike.ext p q
@@ -1063,48 +817,24 @@ theorem ext : (∀ x, p x = q x) → p = q :=
instance : PartialOrder (GroupNorm E) :=
PartialOrder.lift _ FunLike.coe_injective
-/- warning: group_norm.le_def -> GroupNorm.le_def is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
-Case conversion may be inaccurate. Consider using '#align group_norm.le_def GroupNorm.le_defₓ'. -/
@[to_additive]
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
#align group_norm.le_def GroupNorm.le_def
#align add_group_norm.le_def AddGroupNorm.le_def
-/- warning: group_norm.lt_def -> GroupNorm.lt_def is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
-Case conversion may be inaccurate. Consider using '#align group_norm.lt_def GroupNorm.lt_defₓ'. -/
@[to_additive]
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
#align group_norm.lt_def GroupNorm.lt_def
#align add_group_norm.lt_def AddGroupNorm.lt_def
-/- warning: group_norm.coe_le_coe -> GroupNorm.coe_le_coe is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
-Case conversion may be inaccurate. Consider using '#align group_norm.coe_le_coe GroupNorm.coe_le_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
Iff.rfl
#align group_norm.coe_le_coe GroupNorm.coe_le_coe
#align add_group_norm.coe_le_coe AddGroupNorm.coe_le_coe
-/- warning: group_norm.coe_lt_coe -> GroupNorm.coe_lt_coe is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
-Case conversion may be inaccurate. Consider using '#align group_norm.coe_lt_coe GroupNorm.coe_lt_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
Iff.rfl
@@ -1120,24 +850,12 @@ instance : Add (GroupNorm E) :=
eq_one_of_map_eq_zero' := fun x hx =>
of_not_not fun h => hx.not_gt <| add_pos (map_pos_of_ne_one p h) (map_pos_of_ne_one q h) }⟩
-/- warning: group_norm.coe_add -> GroupNorm.coe_add is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasAdd.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (E -> Real) (E -> Real) (E -> Real) (instHAdd.{u1} (E -> Real) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasAdd))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (instHAdd.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (fun (i : E) => Real.instAddReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
-Case conversion may be inaccurate. Consider using '#align group_norm.coe_add GroupNorm.coe_addₓ'. -/
@[simp, to_additive]
theorem coe_add : ⇑(p + q) = p + q :=
rfl
#align group_norm.coe_add GroupNorm.coe_add
#align add_group_norm.coe_add AddGroupNorm.coe_add
-/- warning: group_norm.add_apply -> GroupNorm.add_apply is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasAdd.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (instHAdd.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
-Case conversion may be inaccurate. Consider using '#align group_norm.add_apply GroupNorm.add_applyₓ'. -/
@[simp, to_additive]
theorem add_apply (x : E) : (p + q) x = p x + q x :=
rfl
@@ -1152,24 +870,12 @@ instance : Sup (GroupNorm E) :=
eq_one_of_map_eq_zero' := fun x hx =>
of_not_not fun h => hx.not_gt <| lt_sup_iff.2 <| Or.inl <| map_pos_of_ne_one p h }⟩
-/- warning: group_norm.coe_sup -> GroupNorm.coe_sup is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
-Case conversion may be inaccurate. Consider using '#align group_norm.coe_sup GroupNorm.coe_supₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
rfl
#align group_norm.coe_sup GroupNorm.coe_sup
#align add_group_norm.coe_sup AddGroupNorm.coe_sup
-/- warning: group_norm.sup_apply -> GroupNorm.sup_apply is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
-Case conversion may be inaccurate. Consider using '#align group_norm.sup_apply GroupNorm.sup_applyₓ'. -/
@[simp, to_additive]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
rfl
@@ -1192,12 +898,6 @@ instance : One (AddGroupNorm E) :=
⟨{ (1 : AddGroupSeminorm E) with
eq_zero_of_map_eq_zero' := fun x => zero_ne_one.ite_eq_left_iff.1 }⟩
-/- warning: add_group_norm.apply_one -> AddGroupNorm.apply_one is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (AddGroupNorm.{u1} E _inst_1) (fun (_x : AddGroupNorm.{u1} E _inst_1) => E -> Real) (AddGroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (AddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (SubadditiveHomClass.toFunLike.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNormClass.toAddGroupSeminormClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNorm.addGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.instOneAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) Real.instOneReal)))
-Case conversion may be inaccurate. Consider using '#align add_group_norm.apply_one AddGroupNorm.apply_oneₓ'. -/
@[simp]
theorem apply_one (x : E) : (1 : AddGroupNorm E) x = if x = 0 then 0 else 1 :=
rfl
@@ -1216,12 +916,6 @@ variable [Group E] [DecidableEq E]
instance : One (GroupNorm E) :=
⟨{ (1 : GroupSeminorm E) with eq_one_of_map_eq_zero' := fun x => zero_ne_one.ite_eq_left_iff.1 }⟩
-/- warning: group_norm.apply_one -> GroupNorm.apply_one is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) Real.instOneReal)))
-Case conversion may be inaccurate. Consider using '#align group_norm.apply_one GroupNorm.apply_oneₓ'. -/
@[simp, to_additive AddGroupNorm.apply_one]
theorem apply_one (x : E) : (1 : GroupNorm E) x = if x = 1 then 0 else 1 :=
rfl
@@ -1256,23 +950,11 @@ instance nonarchAddGroupNormClass : NonarchAddGroupNormClass (NonarchAddGroupNor
noncomputable instance : CoeFun (NonarchAddGroupNorm E) fun _ => E → ℝ :=
FunLike.hasCoeToFun
-/- warning: nonarch_add_group_norm.to_fun_eq_coe -> NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coe is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (NonarchAddGroupNorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.4009 : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (NonarchAddGroupNorm.toNonarchAddGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p)
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.to_fun_eq_coe NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coeₓ'. -/
@[simp]
theorem toNonarchAddGroupSeminorm_eq_coe : p.toFun = p :=
rfl
#align nonarch_add_group_norm.to_fun_eq_coe NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coe
-/- warning: nonarch_add_group_norm.ext -> NonarchAddGroupNorm.ext is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.ext NonarchAddGroupNorm.extₓ'. -/
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
FunLike.ext p q
@@ -1281,43 +963,19 @@ theorem ext : (∀ x, p x = q x) → p = q :=
noncomputable instance : PartialOrder (NonarchAddGroupNorm E) :=
PartialOrder.lift _ FunLike.coe_injective
-/- warning: nonarch_add_group_norm.le_def -> NonarchAddGroupNorm.le_def is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.le_def NonarchAddGroupNorm.le_defₓ'. -/
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
#align nonarch_add_group_norm.le_def NonarchAddGroupNorm.le_def
-/- warning: nonarch_add_group_norm.lt_def -> NonarchAddGroupNorm.lt_def is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.lt_def NonarchAddGroupNorm.lt_defₓ'. -/
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
#align nonarch_add_group_norm.lt_def NonarchAddGroupNorm.lt_def
-/- warning: nonarch_add_group_norm.coe_le_coe -> NonarchAddGroupNorm.coe_le_coe is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_le_coe NonarchAddGroupNorm.coe_le_coeₓ'. -/
@[simp, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
Iff.rfl
#align nonarch_add_group_norm.coe_le_coe NonarchAddGroupNorm.coe_le_coe
-/- warning: nonarch_add_group_norm.coe_lt_coe -> NonarchAddGroupNorm.coe_lt_coe is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_lt_coe NonarchAddGroupNorm.coe_lt_coeₓ'. -/
@[simp, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
Iff.rfl
@@ -1331,23 +989,11 @@ instance : Sup (NonarchAddGroupNorm E) :=
eq_zero_of_map_eq_zero' := fun x hx =>
of_not_not fun h => hx.not_gt <| lt_sup_iff.2 <| Or.inl <| map_pos_of_ne_zero p h }⟩
-/- warning: nonarch_add_group_norm.coe_sup -> NonarchAddGroupNorm.coe_sup is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_sup NonarchAddGroupNorm.coe_supₓ'. -/
@[simp, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
rfl
#align nonarch_add_group_norm.coe_sup NonarchAddGroupNorm.coe_sup
-/- warning: nonarch_add_group_norm.sup_apply -> NonarchAddGroupNorm.sup_apply is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.sup_apply NonarchAddGroupNorm.sup_applyₓ'. -/
@[simp]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
rfl
@@ -1360,12 +1006,6 @@ instance [DecidableEq E] : One (NonarchAddGroupNorm E) :=
⟨{ (1 : NonarchAddGroupSeminorm E) with
eq_zero_of_map_eq_zero' := fun x => zero_ne_one.ite_eq_left_iff.1 }⟩
-/- warning: nonarch_add_group_norm.apply_one -> NonarchAddGroupNorm.apply_one is a dubious translation:
-lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
-but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instOneNonarchAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) Real.instOneReal)))
-Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.apply_one NonarchAddGroupNorm.apply_oneₓ'. -/
@[simp]
theorem apply_one [DecidableEq E] (x : E) :
(1 : NonarchAddGroupNorm E) x = if x = 0 then 0 else 1 :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -546,10 +546,7 @@ Case conversion may be inaccurate. Consider using '#align group_seminorm.mul_bdd
@[to_additive]
theorem mul_bddBelow_range_add {p q : GroupSeminorm E} {x : E} :
BddBelow (range fun y => p y + q (x / y)) :=
- ⟨0, by
- rintro _ ⟨x, rfl⟩
- dsimp
- positivity⟩
+ ⟨0, by rintro _ ⟨x, rfl⟩; dsimp; positivity⟩
#align group_seminorm.mul_bdd_below_range_add GroupSeminorm.mul_bddBelow_range_add
#align add_group_seminorm.add_bdd_below_range_add AddGroupSeminorm.add_bddBelow_range_add
@@ -844,10 +841,7 @@ but is expected to have type
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.add_bdd_below_range_add NonarchAddGroupSeminorm.add_bddBelow_range_addₓ'. -/
theorem add_bddBelow_range_add {p q : NonarchAddGroupSeminorm E} {x : E} :
BddBelow (range fun y => p y + q (x - y)) :=
- ⟨0, by
- rintro _ ⟨x, rfl⟩
- dsimp
- positivity⟩
+ ⟨0, by rintro _ ⟨x, rfl⟩; dsimp; positivity⟩
#align nonarch_add_group_seminorm.add_bdd_below_range_add NonarchAddGroupSeminorm.add_bddBelow_range_add
end AddCommGroup
@@ -944,10 +938,8 @@ instance [DecidableEq E] : One (NonarchAddGroupSeminorm E) :=
map_zero' := if_pos rfl
add_le_max' := fun x y => by
by_cases hx : x = 0
- · rw [if_pos hx, hx, zero_add]
- exact le_max_of_le_right (le_refl _)
- · rw [if_neg hx]
- split_ifs <;> norm_num
+ · rw [if_pos hx, hx, zero_add]; exact le_max_of_le_right (le_refl _)
+ · rw [if_neg hx]; split_ifs <;> norm_num
neg' := fun x => by simp_rw [neg_eq_zero] }⟩
/- warning: nonarch_add_group_seminorm.apply_one -> NonarchAddGroupSeminorm.apply_one is a dubious translation:
mathlib commit https://github.com/leanprover-community/mathlib/commit/ef95945cd48c932c9e034872bd25c3c220d9c946
@@ -1047,7 +1047,7 @@ instance : CoeFun (GroupNorm E) fun _ => E → ℝ :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (GroupNorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.956 : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (GroupNorm.toGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.956 : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (GroupNorm.toGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p)
Case conversion may be inaccurate. Consider using '#align group_norm.to_fun_eq_coe GroupNorm.toGroupSeminorm_eq_coeₓ'. -/
@[simp, to_additive]
theorem toGroupSeminorm_eq_coe : p.toFun = p :=
@@ -1059,7 +1059,7 @@ theorem toGroupSeminorm_eq_coe : p.toFun = p :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.ext GroupNorm.extₓ'. -/
@[ext, to_additive]
theorem ext : (∀ x, p x = q x) → p = q :=
@@ -1075,7 +1075,7 @@ instance : PartialOrder (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.le_def GroupNorm.le_defₓ'. -/
@[to_additive]
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
@@ -1087,7 +1087,7 @@ theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.lt_def GroupNorm.lt_defₓ'. -/
@[to_additive]
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
@@ -1099,7 +1099,7 @@ theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.coe_le_coe GroupNorm.coe_le_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
@@ -1111,7 +1111,7 @@ theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.coe_lt_coe GroupNorm.coe_lt_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
@@ -1132,7 +1132,7 @@ instance : Add (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasAdd.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (E -> Real) (E -> Real) (E -> Real) (instHAdd.{u1} (E -> Real) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasAdd))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (instHAdd.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instAddReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (instHAdd.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (fun (i : E) => Real.instAddReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.coe_add GroupNorm.coe_addₓ'. -/
@[simp, to_additive]
theorem coe_add : ⇑(p + q) = p + q :=
@@ -1144,7 +1144,7 @@ theorem coe_add : ⇑(p + q) = p + q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasAdd.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (instHAdd.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (instHAdd.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
Case conversion may be inaccurate. Consider using '#align group_norm.add_apply GroupNorm.add_applyₓ'. -/
@[simp, to_additive]
theorem add_apply (x : E) : (p + q) x = p x + q x :=
@@ -1164,7 +1164,7 @@ instance : Sup (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.coe_sup GroupNorm.coe_supₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
@@ -1176,7 +1176,7 @@ theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
Case conversion may be inaccurate. Consider using '#align group_norm.sup_apply GroupNorm.sup_applyₓ'. -/
@[simp, to_additive]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
@@ -1204,7 +1204,7 @@ instance : One (AddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (AddGroupNorm.{u1} E _inst_1) (fun (_x : AddGroupNorm.{u1} E _inst_1) => E -> Real) (AddGroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (AddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (SubadditiveHomClass.toFunLike.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNormClass.toAddGroupSeminormClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNorm.addGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.instOneAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) Real.instOneReal)))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (AddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (SubadditiveHomClass.toFunLike.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNormClass.toAddGroupSeminormClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNorm.addGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.instOneAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) Real.instOneReal)))
Case conversion may be inaccurate. Consider using '#align add_group_norm.apply_one AddGroupNorm.apply_oneₓ'. -/
@[simp]
theorem apply_one (x : E) : (1 : AddGroupNorm E) x = if x = 0 then 0 else 1 :=
@@ -1228,7 +1228,7 @@ instance : One (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) Real.instOneReal)))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6599 : E) => Real) x) Real.instOneReal)))
Case conversion may be inaccurate. Consider using '#align group_norm.apply_one GroupNorm.apply_oneₓ'. -/
@[simp, to_additive AddGroupNorm.apply_one]
theorem apply_one (x : E) : (1 : GroupNorm E) x = if x = 1 then 0 else 1 :=
@@ -1268,7 +1268,7 @@ noncomputable instance : CoeFun (NonarchAddGroupNorm E) fun _ => E → ℝ :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (NonarchAddGroupNorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.4020 : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (NonarchAddGroupNorm.toNonarchAddGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.4009 : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (NonarchAddGroupNorm.toNonarchAddGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.to_fun_eq_coe NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coeₓ'. -/
@[simp]
theorem toNonarchAddGroupSeminorm_eq_coe : p.toFun = p :=
@@ -1279,7 +1279,7 @@ theorem toNonarchAddGroupSeminorm_eq_coe : p.toFun = p :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.ext NonarchAddGroupNorm.extₓ'. -/
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
@@ -1293,7 +1293,7 @@ noncomputable instance : PartialOrder (NonarchAddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.le_def NonarchAddGroupNorm.le_defₓ'. -/
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
@@ -1303,7 +1303,7 @@ theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.lt_def NonarchAddGroupNorm.lt_defₓ'. -/
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
@@ -1313,7 +1313,7 @@ theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_le_coe NonarchAddGroupNorm.coe_le_coeₓ'. -/
@[simp, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
@@ -1324,7 +1324,7 @@ theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_lt_coe NonarchAddGroupNorm.coe_lt_coeₓ'. -/
@[simp, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
@@ -1343,7 +1343,7 @@ instance : Sup (NonarchAddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_sup NonarchAddGroupNorm.coe_supₓ'. -/
@[simp, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
@@ -1354,7 +1354,7 @@ theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.sup_apply NonarchAddGroupNorm.sup_applyₓ'. -/
@[simp]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
@@ -1372,7 +1372,7 @@ instance [DecidableEq E] : One (NonarchAddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instOneNonarchAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) Real.instOneReal)))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instOneNonarchAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7760 : E) => Real) x) Real.instOneReal)))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.apply_one NonarchAddGroupNorm.apply_oneₓ'. -/
@[simp]
theorem apply_one [DecidableEq E] (x : E) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/95a87616d63b3cb49d3fe678d416fbe9c4217bf4
@@ -430,7 +430,7 @@ def comp (p : GroupSeminorm E) (f : F →* E) : GroupSeminorm F
lean 3 declaration is
forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (F -> Real) (coeFn.{succ u2, succ u2} (GroupSeminorm.{u2} F _inst_2) (fun (_x : GroupSeminorm.{u2} F _inst_2) => F -> Real) (GroupSeminorm.hasCoeToFun.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f)) (Function.comp.{succ u2, succ u1, 1} F E Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (fun (_x : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) => F -> E) (MonoidHom.hasCoeToFun.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) f))
but is expected to have type
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (F -> Real) (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} F _inst_2) F (fun (_x : F) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real _inst_2 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f)) (Function.comp.{succ u2, succ u1, 1} F E Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F (fun (_x : F) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : F) => E) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) (MonoidHom.monoidHomClass.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))) f))
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (F -> Real) (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} F _inst_2) F (fun (_x : F) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real _inst_2 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f)) (Function.comp.{succ u2, succ u1, 1} F E Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F (fun (_x : F) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : F) => E) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) (MonoidHom.monoidHomClass.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))) f))
Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_comp GroupSeminorm.coe_compₓ'. -/
@[simp, to_additive]
theorem coe_comp : ⇑(p.comp f) = p ∘ f :=
@@ -442,7 +442,7 @@ theorem coe_comp : ⇑(p.comp f) = p ∘ f :=
lean 3 declaration is
forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (x : F), Eq.{1} Real (coeFn.{succ u2, succ u2} (GroupSeminorm.{u2} F _inst_2) (fun (_x : GroupSeminorm.{u2} F _inst_2) => F -> Real) (GroupSeminorm.hasCoeToFun.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) x) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (fun (_x : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) => F -> E) (MonoidHom.hasCoeToFun.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) f x))
but is expected to have type
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (x : F), Eq.{1} Real (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} F _inst_2) F (fun (_x : F) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real _inst_2 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F (fun (_x : F) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : F) => E) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) (MonoidHom.monoidHomClass.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))) f x))
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (x : F), Eq.{1} Real (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} F _inst_2) F (fun (_x : F) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real _inst_2 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F (fun (_x : F) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : F) => E) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) (MonoidHom.monoidHomClass.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))) f x))
Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_apply GroupSeminorm.comp_applyₓ'. -/
@[simp, to_additive]
theorem comp_apply (x : F) : (p.comp f) x = p (f x) :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/0b9eaaa7686280fad8cce467f5c3c57ee6ce77f8
@@ -254,7 +254,7 @@ instance : PartialOrder (GroupSeminorm E) :=
/- warning: group_seminorm.le_def -> GroupSeminorm.le_def is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} E _inst_1))) p q) (LE.le.{u1} (E -> Real) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q))
Case conversion may be inaccurate. Consider using '#align group_seminorm.le_def GroupSeminorm.le_defₓ'. -/
@@ -266,7 +266,7 @@ theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
/- warning: group_seminorm.lt_def -> GroupSeminorm.lt_def is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (E -> Real) (Preorder.toLT.{u1} (E -> Real) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q))
Case conversion may be inaccurate. Consider using '#align group_seminorm.lt_def GroupSeminorm.lt_defₓ'. -/
@@ -278,7 +278,7 @@ theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
/- warning: group_seminorm.coe_le_coe -> GroupSeminorm.coe_le_coe is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (E -> Real) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q)) (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_le_coe GroupSeminorm.coe_le_coeₓ'. -/
@@ -290,7 +290,7 @@ theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
/- warning: group_seminorm.coe_lt_coe -> GroupSeminorm.coe_lt_coe is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (E -> Real) (Preorder.toLT.{u1} (E -> Real) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q)) (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_lt_coe GroupSeminorm.coe_lt_coeₓ'. -/
@@ -510,7 +510,7 @@ variable {p q}
/- warning: group_seminorm.comp_mono -> GroupSeminorm.comp_mono is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1} (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q) -> (LE.le.{u2} (GroupSeminorm.{u2} F _inst_2) (Preorder.toLE.{u2} (GroupSeminorm.{u2} F _inst_2) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.partialOrder.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 q f))
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1} (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q) -> (LE.le.{u2} (GroupSeminorm.{u2} F _inst_2) (Preorder.toHasLe.{u2} (GroupSeminorm.{u2} F _inst_2) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.partialOrder.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 q f))
but is expected to have type
forall {E : Type.{u2}} {F : Type.{u1}} [_inst_1 : Group.{u2} E] [_inst_2 : Group.{u1} F] {p : GroupSeminorm.{u2} E _inst_1} {q : GroupSeminorm.{u2} E _inst_1} (f : MonoidHom.{u1, u2} F E (Monoid.toMulOneClass.{u1} F (DivInvMonoid.toMonoid.{u1} F (Group.toDivInvMonoid.{u1} F _inst_2))) (Monoid.toMulOneClass.{u2} E (DivInvMonoid.toMonoid.{u2} E (Group.toDivInvMonoid.{u2} E _inst_1)))), (LE.le.{u2} (GroupSeminorm.{u2} E _inst_1) (Preorder.toLE.{u2} (GroupSeminorm.{u2} E _inst_1) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u2} E _inst_1))) p q) -> (LE.le.{u1} (GroupSeminorm.{u1} F _inst_2) (Preorder.toLE.{u1} (GroupSeminorm.{u1} F _inst_2) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} F _inst_2) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} F _inst_2))) (GroupSeminorm.comp.{u2, u1} E F _inst_1 _inst_2 p f) (GroupSeminorm.comp.{u2, u1} E F _inst_1 _inst_2 q f))
Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_mono GroupSeminorm.comp_monoₓ'. -/
@@ -527,7 +527,7 @@ variable [CommGroup E] [CommGroup F] (p q : GroupSeminorm E) (x y : E)
/- warning: group_seminorm.comp_mul_le -> GroupSeminorm.comp_mul_le is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : CommGroup.{u1} E] [_inst_2 : CommGroup.{u2} F] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (g : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))), LE.le.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (Preorder.toLE.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.partialOrder.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (instHMul.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.hasMul.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (CommGroup.toCommMonoid.{u1} E _inst_1))) f g)) (HAdd.hAdd.{u2, u2, u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (instHAdd.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.hasAdd.{u2} F (CommGroup.toGroup.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p f) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p g))
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : CommGroup.{u1} E] [_inst_2 : CommGroup.{u2} F] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (g : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))), LE.le.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (Preorder.toHasLe.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.partialOrder.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (instHMul.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.hasMul.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (CommGroup.toCommMonoid.{u1} E _inst_1))) f g)) (HAdd.hAdd.{u2, u2, u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (instHAdd.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.hasAdd.{u2} F (CommGroup.toGroup.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p f) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p g))
but is expected to have type
forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : CommGroup.{u1} E] [_inst_2 : CommGroup.{u2} F] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (g : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))), LE.le.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (Preorder.toLE.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.instPartialOrderGroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (instHMul.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.mul.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (CommGroup.toCommMonoid.{u1} E _inst_1))) f g)) (HAdd.hAdd.{u2, u2, u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (instHAdd.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.instAddGroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p f) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p g))
Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_mul_le GroupSeminorm.comp_mul_leₓ'. -/
@@ -721,7 +721,7 @@ noncomputable instance : PartialOrder (NonarchAddGroupSeminorm E) :=
/- warning: nonarch_add_group_seminorm.le_def -> NonarchAddGroupSeminorm.le_def is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instPartialOrderNonarchAddGroupSeminorm.{u1} E _inst_1))) p q) (LE.le.{u1} (E -> Real) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.le_def NonarchAddGroupSeminorm.le_defₓ'. -/
@@ -731,7 +731,7 @@ theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
/- warning: nonarch_add_group_seminorm.lt_def -> NonarchAddGroupSeminorm.lt_def is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instPartialOrderNonarchAddGroupSeminorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (E -> Real) (Preorder.toLT.{u1} (E -> Real) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.lt_def NonarchAddGroupSeminorm.lt_defₓ'. -/
@@ -741,7 +741,7 @@ theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
/- warning: nonarch_add_group_seminorm.coe_le_coe -> NonarchAddGroupSeminorm.coe_le_coe is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (E -> Real) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q)) (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instPartialOrderNonarchAddGroupSeminorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.coe_le_coe NonarchAddGroupSeminorm.coe_le_coeₓ'. -/
@@ -752,7 +752,7 @@ theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
/- warning: nonarch_add_group_seminorm.coe_lt_coe -> NonarchAddGroupSeminorm.coe_lt_coe is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (E -> Real) (Preorder.toLT.{u1} (E -> Real) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q)) (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instPartialOrderNonarchAddGroupSeminorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.coe_lt_coe NonarchAddGroupSeminorm.coe_lt_coeₓ'. -/
@@ -1073,7 +1073,7 @@ instance : PartialOrder (GroupNorm E) :=
/- warning: group_norm.le_def -> GroupNorm.le_def is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.le_def GroupNorm.le_defₓ'. -/
@@ -1085,7 +1085,7 @@ theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
/- warning: group_norm.lt_def -> GroupNorm.lt_def is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.lt_def GroupNorm.lt_defₓ'. -/
@@ -1097,7 +1097,7 @@ theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
/- warning: group_norm.coe_le_coe -> GroupNorm.coe_le_coe is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.coe_le_coe GroupNorm.coe_le_coeₓ'. -/
@@ -1109,7 +1109,7 @@ theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
/- warning: group_norm.coe_lt_coe -> GroupNorm.coe_lt_coe is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.coe_lt_coe GroupNorm.coe_lt_coeₓ'. -/
@@ -1291,7 +1291,7 @@ noncomputable instance : PartialOrder (NonarchAddGroupNorm E) :=
/- warning: nonarch_add_group_norm.le_def -> NonarchAddGroupNorm.le_def is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.le_def NonarchAddGroupNorm.le_defₓ'. -/
@@ -1301,7 +1301,7 @@ theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
/- warning: nonarch_add_group_norm.lt_def -> NonarchAddGroupNorm.lt_def is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.lt_def NonarchAddGroupNorm.lt_defₓ'. -/
@@ -1311,7 +1311,7 @@ theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
/- warning: nonarch_add_group_norm.coe_le_coe -> NonarchAddGroupNorm.coe_le_coe is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toHasLe.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_le_coe NonarchAddGroupNorm.coe_le_coeₓ'. -/
@@ -1322,7 +1322,7 @@ theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
/- warning: nonarch_add_group_norm.coe_lt_coe -> NonarchAddGroupNorm.coe_lt_coe is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toHasLt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toHasLt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_lt_coe NonarchAddGroupNorm.coe_lt_coeₓ'. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/e3fb84046afd187b710170887195d50bada934ee
@@ -558,23 +558,23 @@ noncomputable instance : Inf (GroupSeminorm E) :=
⟨fun p q =>
{ toFun := fun x => ⨅ y, p y + q (x / y)
map_one' :=
- cinfᵢ_eq_of_forall_ge_of_forall_gt_exists_lt (fun x => by positivity) fun r hr =>
+ ciInf_eq_of_forall_ge_of_forall_gt_exists_lt (fun x => by positivity) fun r hr =>
⟨1, by rwa [div_one, map_one_eq_zero p, map_one_eq_zero q, add_zero]⟩
mul_le' := fun x y =>
- le_cinfᵢ_add_cinfᵢ fun u v =>
+ le_ciInf_add_ciInf fun u v =>
by
- refine' cinfᵢ_le_of_le mul_bdd_below_range_add (u * v) _
+ refine' ciInf_le_of_le mul_bdd_below_range_add (u * v) _
rw [mul_div_mul_comm, add_add_add_comm]
exact add_le_add (map_mul_le_add p _ _) (map_mul_le_add q _ _)
inv' := fun x =>
- (inv_surjective.infᵢ_comp _).symm.trans <| by
+ (inv_surjective.iInf_comp _).symm.trans <| by
simp_rw [map_inv_eq_map p, ← inv_div', map_inv_eq_map q] }⟩
/- warning: group_seminorm.inf_apply -> GroupSeminorm.inf_apply is a dubious translation:
lean 3 declaration is
- forall {E : Type.{u1}} [_inst_1 : CommGroup.{u1} E] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (q : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (Inf.inf.{u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (GroupSeminorm.hasInf.{u1} E _inst_1) p q) x) (infᵢ.{0, succ u1} Real Real.hasInf E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) p y) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) q (HDiv.hDiv.{u1, u1, u1} E E E (instHDiv.{u1} E (DivInvMonoid.toHasDiv.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) x y))))
+ forall {E : Type.{u1}} [_inst_1 : CommGroup.{u1} E] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (q : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (Inf.inf.{u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (GroupSeminorm.hasInf.{u1} E _inst_1) p q) x) (iInf.{0, succ u1} Real Real.hasInf E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) p y) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) q (HDiv.hDiv.{u1, u1, u1} E E E (instHDiv.{u1} E (DivInvMonoid.toHasDiv.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) x y))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : CommGroup.{u1} E] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (q : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) (Inf.inf.{u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (GroupSeminorm.instInfGroupSeminormToGroup.{u1} E _inst_1) p q) x) (infᵢ.{0, succ u1} Real Real.instInfSetReal E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) p y) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) q (HDiv.hDiv.{u1, u1, u1} E E E (instHDiv.{u1} E (DivInvMonoid.toDiv.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) x y))))
+ forall {E : Type.{u1}} [_inst_1 : CommGroup.{u1} E] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (q : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) (Inf.inf.{u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (GroupSeminorm.instInfGroupSeminormToGroup.{u1} E _inst_1) p q) x) (iInf.{0, succ u1} Real Real.instInfSetReal E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) p y) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) q (HDiv.hDiv.{u1, u1, u1} E E E (instHDiv.{u1} E (DivInvMonoid.toDiv.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) x y))))
Case conversion may be inaccurate. Consider using '#align group_seminorm.inf_apply GroupSeminorm.inf_applyₓ'. -/
@[simp, to_additive]
theorem inf_apply : (p ⊓ q) x = ⨅ y, p y + q (x / y) :=
@@ -587,12 +587,12 @@ noncomputable instance : Lattice (GroupSeminorm E) :=
{ GroupSeminorm.semilatticeSup with
inf := (· ⊓ ·)
inf_le_left := fun p q x =>
- cinfᵢ_le_of_le mul_bddBelow_range_add x <| by rw [div_self', map_one_eq_zero q, add_zero]
+ ciInf_le_of_le mul_bddBelow_range_add x <| by rw [div_self', map_one_eq_zero q, add_zero]
inf_le_right := fun p q x =>
- cinfᵢ_le_of_le mul_bddBelow_range_add (1 : E) <| by
+ ciInf_le_of_le mul_bddBelow_range_add (1 : E) <| by
simp only [div_one, map_one_eq_zero p, zero_add]
le_inf := fun a b c hb hc x =>
- le_cinfᵢ fun u => (le_map_add_map_div a _ _).trans <| add_le_add (hb _) (hc _) }
+ le_ciInf fun u => (le_map_add_map_div a _ _).trans <| add_le_add (hb _) (hc _) }
end CommGroup
mathlib commit https://github.com/leanprover-community/mathlib/commit/36b8aa61ea7c05727161f96a0532897bd72aedab
@@ -1047,7 +1047,7 @@ instance : CoeFun (GroupNorm E) fun _ => E → ℝ :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (GroupNorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.956 : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (GroupNorm.toGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.956 : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (GroupNorm.toGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p)
Case conversion may be inaccurate. Consider using '#align group_norm.to_fun_eq_coe GroupNorm.toGroupSeminorm_eq_coeₓ'. -/
@[simp, to_additive]
theorem toGroupSeminorm_eq_coe : p.toFun = p :=
@@ -1059,7 +1059,7 @@ theorem toGroupSeminorm_eq_coe : p.toFun = p :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.ext GroupNorm.extₓ'. -/
@[ext, to_additive]
theorem ext : (∀ x, p x = q x) → p = q :=
@@ -1075,7 +1075,7 @@ instance : PartialOrder (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.le_def GroupNorm.le_defₓ'. -/
@[to_additive]
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
@@ -1087,7 +1087,7 @@ theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.lt_def GroupNorm.lt_defₓ'. -/
@[to_additive]
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
@@ -1099,7 +1099,7 @@ theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.coe_le_coe GroupNorm.coe_le_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
@@ -1111,7 +1111,7 @@ theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.coe_lt_coe GroupNorm.coe_lt_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
@@ -1132,7 +1132,7 @@ instance : Add (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasAdd.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (E -> Real) (E -> Real) (E -> Real) (instHAdd.{u1} (E -> Real) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasAdd))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (instHAdd.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (fun (i : E) => Real.instAddReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (instHAdd.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instAddReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.coe_add GroupNorm.coe_addₓ'. -/
@[simp, to_additive]
theorem coe_add : ⇑(p + q) = p + q :=
@@ -1144,7 +1144,7 @@ theorem coe_add : ⇑(p + q) = p + q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasAdd.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (instHAdd.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (instHAdd.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
Case conversion may be inaccurate. Consider using '#align group_norm.add_apply GroupNorm.add_applyₓ'. -/
@[simp, to_additive]
theorem add_apply (x : E) : (p + q) x = p x + q x :=
@@ -1164,7 +1164,7 @@ instance : Sup (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.coe_sup GroupNorm.coe_supₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
@@ -1176,7 +1176,7 @@ theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
Case conversion may be inaccurate. Consider using '#align group_norm.sup_apply GroupNorm.sup_applyₓ'. -/
@[simp, to_additive]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
@@ -1204,7 +1204,7 @@ instance : One (AddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (AddGroupNorm.{u1} E _inst_1) (fun (_x : AddGroupNorm.{u1} E _inst_1) => E -> Real) (AddGroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (AddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (SubadditiveHomClass.toFunLike.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNormClass.toAddGroupSeminormClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNorm.addGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.instOneAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) Real.instOneReal)))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (AddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (SubadditiveHomClass.toFunLike.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNormClass.toAddGroupSeminormClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNorm.addGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.instOneAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) Real.instOneReal)))
Case conversion may be inaccurate. Consider using '#align add_group_norm.apply_one AddGroupNorm.apply_oneₓ'. -/
@[simp]
theorem apply_one (x : E) : (1 : AddGroupNorm E) x = if x = 0 then 0 else 1 :=
@@ -1228,7 +1228,7 @@ instance : One (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) Real.instOneReal)))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6621 : E) => Real) x) Real.instOneReal)))
Case conversion may be inaccurate. Consider using '#align group_norm.apply_one GroupNorm.apply_oneₓ'. -/
@[simp, to_additive AddGroupNorm.apply_one]
theorem apply_one (x : E) : (1 : GroupNorm E) x = if x = 1 then 0 else 1 :=
@@ -1268,7 +1268,7 @@ noncomputable instance : CoeFun (NonarchAddGroupNorm E) fun _ => E → ℝ :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (NonarchAddGroupNorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.4034 : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (NonarchAddGroupNorm.toNonarchAddGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.4020 : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (NonarchAddGroupNorm.toNonarchAddGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.to_fun_eq_coe NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coeₓ'. -/
@[simp]
theorem toNonarchAddGroupSeminorm_eq_coe : p.toFun = p :=
@@ -1279,7 +1279,7 @@ theorem toNonarchAddGroupSeminorm_eq_coe : p.toFun = p :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.ext NonarchAddGroupNorm.extₓ'. -/
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
@@ -1293,7 +1293,7 @@ noncomputable instance : PartialOrder (NonarchAddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.le_def NonarchAddGroupNorm.le_defₓ'. -/
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
@@ -1303,7 +1303,7 @@ theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.lt_def NonarchAddGroupNorm.lt_defₓ'. -/
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
@@ -1313,7 +1313,7 @@ theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_le_coe NonarchAddGroupNorm.coe_le_coeₓ'. -/
@[simp, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
@@ -1324,7 +1324,7 @@ theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_lt_coe NonarchAddGroupNorm.coe_lt_coeₓ'. -/
@[simp, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
@@ -1343,7 +1343,7 @@ instance : Sup (NonarchAddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_sup NonarchAddGroupNorm.coe_supₓ'. -/
@[simp, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
@@ -1354,7 +1354,7 @@ theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.sup_apply NonarchAddGroupNorm.sup_applyₓ'. -/
@[simp]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
@@ -1372,7 +1372,7 @@ instance [DecidableEq E] : One (NonarchAddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instOneNonarchAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) Real.instOneReal)))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instOneNonarchAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7782 : E) => Real) x) Real.instOneReal)))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.apply_one NonarchAddGroupNorm.apply_oneₓ'. -/
@[simp]
theorem apply_one [DecidableEq E] (x : E) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/fa78268d4d77cb2b2fbc89f0527e2e7807763780
@@ -1047,7 +1047,7 @@ instance : CoeFun (GroupNorm E) fun _ => E → ℝ :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (GroupNorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.956 : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (GroupNorm.toGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.956 : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (GroupNorm.toGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p)
Case conversion may be inaccurate. Consider using '#align group_norm.to_fun_eq_coe GroupNorm.toGroupSeminorm_eq_coeₓ'. -/
@[simp, to_additive]
theorem toGroupSeminorm_eq_coe : p.toFun = p :=
@@ -1059,7 +1059,7 @@ theorem toGroupSeminorm_eq_coe : p.toFun = p :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.ext GroupNorm.extₓ'. -/
@[ext, to_additive]
theorem ext : (∀ x, p x = q x) → p = q :=
@@ -1075,7 +1075,7 @@ instance : PartialOrder (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.le_def GroupNorm.le_defₓ'. -/
@[to_additive]
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
@@ -1087,7 +1087,7 @@ theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.lt_def GroupNorm.lt_defₓ'. -/
@[to_additive]
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
@@ -1099,7 +1099,7 @@ theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.coe_le_coe GroupNorm.coe_le_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
@@ -1111,7 +1111,7 @@ theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.coe_lt_coe GroupNorm.coe_lt_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
@@ -1132,7 +1132,7 @@ instance : Add (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasAdd.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (E -> Real) (E -> Real) (E -> Real) (instHAdd.{u1} (E -> Real) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasAdd))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (instHAdd.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (fun (i : E) => Real.instAddReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (instHAdd.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (fun (i : E) => Real.instAddReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.coe_add GroupNorm.coe_addₓ'. -/
@[simp, to_additive]
theorem coe_add : ⇑(p + q) = p + q :=
@@ -1144,7 +1144,7 @@ theorem coe_add : ⇑(p + q) = p + q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasAdd.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (instHAdd.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (instHAdd.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
Case conversion may be inaccurate. Consider using '#align group_norm.add_apply GroupNorm.add_applyₓ'. -/
@[simp, to_additive]
theorem add_apply (x : E) : (p + q) x = p x + q x :=
@@ -1164,7 +1164,7 @@ instance : Sup (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.coe_sup GroupNorm.coe_supₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
@@ -1176,7 +1176,7 @@ theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
Case conversion may be inaccurate. Consider using '#align group_norm.sup_apply GroupNorm.sup_applyₓ'. -/
@[simp, to_additive]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
@@ -1204,7 +1204,7 @@ instance : One (AddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (AddGroupNorm.{u1} E _inst_1) (fun (_x : AddGroupNorm.{u1} E _inst_1) => E -> Real) (AddGroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (AddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (SubadditiveHomClass.toFunLike.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNormClass.toAddGroupSeminormClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNorm.addGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.instOneAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) Real.instOneReal)))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (AddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (SubadditiveHomClass.toFunLike.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNormClass.toAddGroupSeminormClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNorm.addGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.instOneAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) Real.instOneReal)))
Case conversion may be inaccurate. Consider using '#align add_group_norm.apply_one AddGroupNorm.apply_oneₓ'. -/
@[simp]
theorem apply_one (x : E) : (1 : AddGroupNorm E) x = if x = 0 then 0 else 1 :=
@@ -1228,7 +1228,7 @@ instance : One (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) Real.instOneReal)))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6650 : E) => Real) x) Real.instOneReal)))
Case conversion may be inaccurate. Consider using '#align group_norm.apply_one GroupNorm.apply_oneₓ'. -/
@[simp, to_additive AddGroupNorm.apply_one]
theorem apply_one (x : E) : (1 : GroupNorm E) x = if x = 1 then 0 else 1 :=
@@ -1268,7 +1268,7 @@ noncomputable instance : CoeFun (NonarchAddGroupNorm E) fun _ => E → ℝ :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (NonarchAddGroupNorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.4075 : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (NonarchAddGroupNorm.toNonarchAddGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.4034 : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (NonarchAddGroupNorm.toNonarchAddGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.to_fun_eq_coe NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coeₓ'. -/
@[simp]
theorem toNonarchAddGroupSeminorm_eq_coe : p.toFun = p :=
@@ -1279,7 +1279,7 @@ theorem toNonarchAddGroupSeminorm_eq_coe : p.toFun = p :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.ext NonarchAddGroupNorm.extₓ'. -/
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
@@ -1293,7 +1293,7 @@ noncomputable instance : PartialOrder (NonarchAddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.le_def NonarchAddGroupNorm.le_defₓ'. -/
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
@@ -1303,7 +1303,7 @@ theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.lt_def NonarchAddGroupNorm.lt_defₓ'. -/
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
@@ -1313,7 +1313,7 @@ theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_le_coe NonarchAddGroupNorm.coe_le_coeₓ'. -/
@[simp, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
@@ -1324,7 +1324,7 @@ theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_lt_coe NonarchAddGroupNorm.coe_lt_coeₓ'. -/
@[simp, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
@@ -1343,7 +1343,7 @@ instance : Sup (NonarchAddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_sup NonarchAddGroupNorm.coe_supₓ'. -/
@[simp, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
@@ -1354,7 +1354,7 @@ theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.sup_apply NonarchAddGroupNorm.sup_applyₓ'. -/
@[simp]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
@@ -1372,7 +1372,7 @@ instance [DecidableEq E] : One (NonarchAddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instOneNonarchAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) Real.instOneReal)))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instOneNonarchAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7811 : E) => Real) x) Real.instOneReal)))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.apply_one NonarchAddGroupNorm.apply_oneₓ'. -/
@[simp]
theorem apply_one [DecidableEq E] (x : E) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/09079525fd01b3dda35e96adaa08d2f943e1648c
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: María Inés de Frutos-Fernández, Yaël Dillies
! This file was ported from Lean 3 source module analysis.normed.group.seminorm
-! leanprover-community/mathlib commit 69c6a5a12d8a2b159f20933e60115a4f2de62b58
+! leanprover-community/mathlib commit 09079525fd01b3dda35e96adaa08d2f943e1648c
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -666,7 +666,7 @@ instance [SMul R' ℝ] [SMul R' ℝ≥0] [IsScalarTower R' ℝ≥0 ℝ] [SMul R
theorem smul_sup (r : R) (p q : AddGroupSeminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
have real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y) := fun x y => by
simpa only [← smul_eq_mul, ← NNReal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)] using
- mul_max_of_nonneg x y (r • 1 : ℝ≥0).Prop
+ mul_max_of_nonneg x y (r • 1 : ℝ≥0).coe_nonneg
ext fun x => real.smul_max _ _
#align add_group_seminorm.smul_sup AddGroupSeminorm.smul_sup
-/
@@ -927,7 +927,7 @@ theorem smul_apply (r : R) (p : GroupSeminorm E) (x : E) : (r • p) x = r • p
theorem smul_sup (r : R) (p q : GroupSeminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
have real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y) := fun x y => by
simpa only [← smul_eq_mul, ← NNReal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)] using
- mul_max_of_nonneg x y (r • 1 : ℝ≥0).Prop
+ mul_max_of_nonneg x y (r • 1 : ℝ≥0).coe_nonneg
ext fun x => real.smul_max _ _
#align group_seminorm.smul_sup GroupSeminorm.smul_sup
#align add_group_seminorm.smul_sup AddGroupSeminorm.smul_sup
@@ -1006,7 +1006,7 @@ theorem smul_apply (r : R) (p : NonarchAddGroupSeminorm E) (x : E) : (r • p) x
theorem smul_sup (r : R) (p q : NonarchAddGroupSeminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
have real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y) := fun x y => by
simpa only [← smul_eq_mul, ← NNReal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)] using
- mul_max_of_nonneg x y (r • 1 : ℝ≥0).Prop
+ mul_max_of_nonneg x y (r • 1 : ℝ≥0).coe_nonneg
ext fun x => real.smul_max _ _
#align nonarch_add_group_seminorm.smul_sup NonarchAddGroupSeminorm.smul_sup
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/2196ab363eb097c008d4497125e0dde23fb36db2
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: María Inés de Frutos-Fernández, Yaël Dillies
! This file was ported from Lean 3 source module analysis.normed.group.seminorm
-! leanprover-community/mathlib commit 23c61a3ca8d0bc8e9309e0128fb40936d7a2c806
+! leanprover-community/mathlib commit 69c6a5a12d8a2b159f20933e60115a4f2de62b58
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -14,6 +14,9 @@ import Mathbin.Data.Real.Nnreal
/-!
# Group seminorms
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
This file defines norms and seminorms in a group. A group seminorm is a function to the reals which
is positive-semidefinite and subadditive. A norm further only maps zero to zero.
mathlib commit https://github.com/leanprover-community/mathlib/commit/3180fab693e2cee3bff62675571264cb8778b212
@@ -161,7 +161,7 @@ include E
lean 3 declaration is
forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : NonarchAddGroupSeminormClass.{u2, u1} F E _inst_1] (f : F) (x : E) (y : E), LE.le.{0} Real Real.hasLe (coeFn.{succ u2, succ u1} F (fun (_x : F) => E -> Real) (FunLike.hasCoeToFun.{succ u2, succ u1, 1} F E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u1, 0} F E Real (AddZeroClass.toHasAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u1} F E _inst_1 _inst_2))) f (HSub.hSub.{u1, u1, u1} E E E (instHSub.{u1} E (SubNegMonoid.toHasSub.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1))) x y)) (LinearOrder.max.{0} Real Real.linearOrder (coeFn.{succ u2, succ u1} F (fun (_x : F) => E -> Real) (FunLike.hasCoeToFun.{succ u2, succ u1, 1} F E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u1, 0} F E Real (AddZeroClass.toHasAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u1} F E _inst_1 _inst_2))) f x) (coeFn.{succ u2, succ u1} F (fun (_x : F) => E -> Real) (FunLike.hasCoeToFun.{succ u2, succ u1, 1} F E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u1, 0} F E Real (AddZeroClass.toHasAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u1} F E _inst_1 _inst_2))) f y))
but is expected to have type
- forall {E : Type.{u2}} {F : Type.{u1}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : NonarchAddGroupSeminormClass.{u1, u2} F E _inst_1] (f : F) (x : E) (y : E), LE.le.{0} ((fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.281 : E) => Real) (HSub.hSub.{u2, u2, u2} E E E (instHSub.{u2} E (SubNegMonoid.toSub.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1))) x y)) Real.instLEReal (FunLike.coe.{succ u1, succ u2, 1} F E (fun (_x : E) => (fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.281 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u2, 0} F E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u2} F E _inst_1 _inst_2)) f (HSub.hSub.{u2, u2, u2} E E E (instHSub.{u2} E (SubNegMonoid.toSub.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1))) x y)) (Max.max.{0} ((fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.281 : E) => Real) x) (LinearOrderedRing.toMax.{0} ((fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.281 : E) => Real) x) Real.instLinearOrderedRingReal) (FunLike.coe.{succ u1, succ u2, 1} F E (fun (_x : E) => (fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.281 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u2, 0} F E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u2} F E _inst_1 _inst_2)) f x) (FunLike.coe.{succ u1, succ u2, 1} F E (fun (_x : E) => (fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.281 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u2, 0} F E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u2} F E _inst_1 _inst_2)) f y))
+ forall {E : Type.{u2}} {F : Type.{u1}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : NonarchAddGroupSeminormClass.{u1, u2} F E _inst_1] (f : F) (x : E) (y : E), LE.le.{0} ((fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.291 : E) => Real) (HSub.hSub.{u2, u2, u2} E E E (instHSub.{u2} E (SubNegMonoid.toSub.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1))) x y)) Real.instLEReal (FunLike.coe.{succ u1, succ u2, 1} F E (fun (_x : E) => (fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.291 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u2, 0} F E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u2} F E _inst_1 _inst_2)) f (HSub.hSub.{u2, u2, u2} E E E (instHSub.{u2} E (SubNegMonoid.toSub.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1))) x y)) (Max.max.{0} ((fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.291 : E) => Real) x) (LinearOrderedRing.toMax.{0} ((fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.291 : E) => Real) x) Real.instLinearOrderedRingReal) (FunLike.coe.{succ u1, succ u2, 1} F E (fun (_x : E) => (fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.291 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u2, 0} F E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u2} F E _inst_1 _inst_2)) f x) (FunLike.coe.{succ u1, succ u2, 1} F E (fun (_x : E) => (fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.291 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u2, 0} F E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u2} F E _inst_1 _inst_2)) f y))
Case conversion may be inaccurate. Consider using '#align map_sub_le_max map_sub_le_maxₓ'. -/
theorem map_sub_le_max : f (x - y) ≤ max (f x) (f y) :=
by
@@ -427,7 +427,7 @@ def comp (p : GroupSeminorm E) (f : F →* E) : GroupSeminorm F
lean 3 declaration is
forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (F -> Real) (coeFn.{succ u2, succ u2} (GroupSeminorm.{u2} F _inst_2) (fun (_x : GroupSeminorm.{u2} F _inst_2) => F -> Real) (GroupSeminorm.hasCoeToFun.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f)) (Function.comp.{succ u2, succ u1, 1} F E Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (fun (_x : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) => F -> E) (MonoidHom.hasCoeToFun.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) f))
but is expected to have type
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (F -> Real) (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} F _inst_2) F (fun (_x : F) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real _inst_2 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f)) (Function.comp.{succ u2, succ u1, 1} F E Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F (fun (_x : F) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : F) => E) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) (MonoidHom.monoidHomClass.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))) f))
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (F -> Real) (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} F _inst_2) F (fun (_x : F) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real _inst_2 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f)) (Function.comp.{succ u2, succ u1, 1} F E Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F (fun (_x : F) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : F) => E) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) (MonoidHom.monoidHomClass.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))) f))
Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_comp GroupSeminorm.coe_compₓ'. -/
@[simp, to_additive]
theorem coe_comp : ⇑(p.comp f) = p ∘ f :=
@@ -439,7 +439,7 @@ theorem coe_comp : ⇑(p.comp f) = p ∘ f :=
lean 3 declaration is
forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (x : F), Eq.{1} Real (coeFn.{succ u2, succ u2} (GroupSeminorm.{u2} F _inst_2) (fun (_x : GroupSeminorm.{u2} F _inst_2) => F -> Real) (GroupSeminorm.hasCoeToFun.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) x) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (fun (_x : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) => F -> E) (MonoidHom.hasCoeToFun.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) f x))
but is expected to have type
- forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (x : F), Eq.{1} Real (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} F _inst_2) F (fun (_x : F) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real _inst_2 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F (fun (_x : F) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : F) => E) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) (MonoidHom.monoidHomClass.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))) f x))
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (x : F), Eq.{1} Real (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} F _inst_2) F (fun (_x : F) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real _inst_2 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F (fun (_x : F) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : F) => E) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) (MonoidHom.monoidHomClass.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))) f x))
Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_apply GroupSeminorm.comp_applyₓ'. -/
@[simp, to_additive]
theorem comp_apply (x : F) : (p.comp f) x = p (f x) :=
@@ -1044,7 +1044,7 @@ instance : CoeFun (GroupNorm E) fun _ => E → ℝ :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (GroupNorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.947 : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (GroupNorm.toGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.956 : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (GroupNorm.toGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p)
Case conversion may be inaccurate. Consider using '#align group_norm.to_fun_eq_coe GroupNorm.toGroupSeminorm_eq_coeₓ'. -/
@[simp, to_additive]
theorem toGroupSeminorm_eq_coe : p.toFun = p :=
@@ -1056,7 +1056,7 @@ theorem toGroupSeminorm_eq_coe : p.toFun = p :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.ext GroupNorm.extₓ'. -/
@[ext, to_additive]
theorem ext : (∀ x, p x = q x) → p = q :=
@@ -1072,7 +1072,7 @@ instance : PartialOrder (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.le_def GroupNorm.le_defₓ'. -/
@[to_additive]
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
@@ -1084,7 +1084,7 @@ theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.lt_def GroupNorm.lt_defₓ'. -/
@[to_additive]
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
@@ -1096,7 +1096,7 @@ theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.coe_le_coe GroupNorm.coe_le_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
@@ -1108,7 +1108,7 @@ theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align group_norm.coe_lt_coe GroupNorm.coe_lt_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
@@ -1129,7 +1129,7 @@ instance : Add (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasAdd.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (E -> Real) (E -> Real) (E -> Real) (instHAdd.{u1} (E -> Real) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasAdd))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (instHAdd.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (fun (i : E) => Real.instAddReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (instHAdd.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (fun (i : E) => Real.instAddReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.coe_add GroupNorm.coe_addₓ'. -/
@[simp, to_additive]
theorem coe_add : ⇑(p + q) = p + q :=
@@ -1141,7 +1141,7 @@ theorem coe_add : ⇑(p + q) = p + q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasAdd.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (instHAdd.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (instHAdd.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
Case conversion may be inaccurate. Consider using '#align group_norm.add_apply GroupNorm.add_applyₓ'. -/
@[simp, to_additive]
theorem add_apply (x : E) : (p + q) x = p x + q x :=
@@ -1161,7 +1161,7 @@ instance : Sup (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align group_norm.coe_sup GroupNorm.coe_supₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
@@ -1173,7 +1173,7 @@ theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
Case conversion may be inaccurate. Consider using '#align group_norm.sup_apply GroupNorm.sup_applyₓ'. -/
@[simp, to_additive]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
@@ -1201,7 +1201,7 @@ instance : One (AddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (AddGroupNorm.{u1} E _inst_1) (fun (_x : AddGroupNorm.{u1} E _inst_1) => E -> Real) (AddGroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (AddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (SubadditiveHomClass.toFunLike.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNormClass.toAddGroupSeminormClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNorm.addGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.instOneAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) Real.instOneReal)))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (AddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (SubadditiveHomClass.toFunLike.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNormClass.toAddGroupSeminormClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNorm.addGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.instOneAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) Real.instOneReal)))
Case conversion may be inaccurate. Consider using '#align add_group_norm.apply_one AddGroupNorm.apply_oneₓ'. -/
@[simp]
theorem apply_one (x : E) : (1 : AddGroupNorm E) x = if x = 0 then 0 else 1 :=
@@ -1225,7 +1225,7 @@ instance : One (GroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) Real.instOneReal)))
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6773 : E) => Real) x) Real.instOneReal)))
Case conversion may be inaccurate. Consider using '#align group_norm.apply_one GroupNorm.apply_oneₓ'. -/
@[simp, to_additive AddGroupNorm.apply_one]
theorem apply_one (x : E) : (1 : GroupNorm E) x = if x = 1 then 0 else 1 :=
@@ -1265,7 +1265,7 @@ noncomputable instance : CoeFun (NonarchAddGroupNorm E) fun _ => E → ℝ :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (NonarchAddGroupNorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.4013 : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (NonarchAddGroupNorm.toNonarchAddGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.4075 : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (NonarchAddGroupNorm.toNonarchAddGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.to_fun_eq_coe NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coeₓ'. -/
@[simp]
theorem toNonarchAddGroupSeminorm_eq_coe : p.toFun = p :=
@@ -1276,7 +1276,7 @@ theorem toNonarchAddGroupSeminorm_eq_coe : p.toFun = p :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.ext NonarchAddGroupNorm.extₓ'. -/
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
@@ -1290,7 +1290,7 @@ noncomputable instance : PartialOrder (NonarchAddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.le_def NonarchAddGroupNorm.le_defₓ'. -/
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
@@ -1300,7 +1300,7 @@ theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.lt_def NonarchAddGroupNorm.lt_defₓ'. -/
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
@@ -1310,7 +1310,7 @@ theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_le_coe NonarchAddGroupNorm.coe_le_coeₓ'. -/
@[simp, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
@@ -1321,7 +1321,7 @@ theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_lt_coe NonarchAddGroupNorm.coe_lt_coeₓ'. -/
@[simp, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
@@ -1340,7 +1340,7 @@ instance : Sup (NonarchAddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_sup NonarchAddGroupNorm.coe_supₓ'. -/
@[simp, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
@@ -1351,7 +1351,7 @@ theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.sup_apply NonarchAddGroupNorm.sup_applyₓ'. -/
@[simp]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
@@ -1369,7 +1369,7 @@ instance [DecidableEq E] : One (NonarchAddGroupNorm E) :=
lean 3 declaration is
forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
but is expected to have type
- forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instOneNonarchAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) Real.instOneReal)))
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instOneNonarchAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7934 : E) => Real) x) Real.instOneReal)))
Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.apply_one NonarchAddGroupNorm.apply_oneₓ'. -/
@[simp]
theorem apply_one [DecidableEq E] (x : E) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/3180fab693e2cee3bff62675571264cb8778b212
@@ -627,7 +627,8 @@ instance : SMul R (AddGroupSeminorm E) :=
⟨fun r p =>
{ toFun := fun x => r • p x
map_zero' := by
- simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, map_zero, mul_zero]
+ simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, map_zero,
+ MulZeroClass.mul_zero]
add_le' := fun _ _ =>
by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul]
@@ -884,7 +885,7 @@ instance : SMul R (GroupSeminorm E) :=
{ toFun := fun x => r • p x
map_one' := by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, map_one_eq_zero p,
- mul_zero]
+ MulZeroClass.mul_zero]
mul_le' := fun _ _ =>
by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul]
@@ -964,7 +965,7 @@ instance : SMul R (NonarchAddGroupSeminorm E) :=
{ toFun := fun x => r • p x
map_zero' := by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, map_zero p,
- mul_zero]
+ MulZeroClass.mul_zero]
add_le_max' := fun x y =>
by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, ←
mathlib commit https://github.com/leanprover-community/mathlib/commit/21e3562c5e12d846c7def5eff8cdbc520d7d4936
@@ -55,6 +55,7 @@ open NNReal
variable {ι R R' E F G : Type _}
+#print AddGroupSeminorm /-
/-- A seminorm on an additive group `G` is a function `f : G → ℝ` that preserves zero, is
subadditive and such that `f (-x) = f x` for all `x`. -/
@[protect_proj]
@@ -62,7 +63,9 @@ structure AddGroupSeminorm (G : Type _) [AddGroup G] extends ZeroHom G ℝ where
add_le' : ∀ r s, to_fun (r + s) ≤ to_fun r + to_fun s
neg' : ∀ r, to_fun (-r) = to_fun r
#align add_group_seminorm AddGroupSeminorm
+-/
+#print GroupSeminorm /-
/-- A seminorm on a group `G` is a function `f : G → ℝ` that sends one to zero, is submultiplicative
and such that `f x⁻¹ = f x` for all `x`. -/
@[to_additive, protect_proj]
@@ -73,7 +76,9 @@ structure GroupSeminorm (G : Type _) [Group G] where
inv' : ∀ x, to_fun x⁻¹ = to_fun x
#align group_seminorm GroupSeminorm
#align add_group_seminorm AddGroupSeminorm
+-/
+#print NonarchAddGroupSeminorm /-
/-- A nonarchimedean seminorm on an additive group `G` is a function `f : G → ℝ` that preserves
zero, is nonarchimedean and such that `f (-x) = f x` for all `x`. -/
@[protect_proj]
@@ -81,19 +86,23 @@ structure NonarchAddGroupSeminorm (G : Type _) [AddGroup G] extends ZeroHom G
add_le_max' : ∀ r s, to_fun (r + s) ≤ max (to_fun r) (to_fun s)
neg' : ∀ r, to_fun (-r) = to_fun r
#align nonarch_add_group_seminorm NonarchAddGroupSeminorm
+-/
/-! NOTE: We do not define `nonarch_add_group_seminorm` as an extension of `add_group_seminorm`
to avoid having a superfluous `add_le'` field in the resulting structure. The same applies to
`nonarch_add_group_norm` below. -/
+#print AddGroupNorm /-
/-- A norm on an additive group `G` is a function `f : G → ℝ` that preserves zero, is subadditive
and such that `f (-x) = f x` and `f x = 0 → x = 0` for all `x`. -/
@[protect_proj]
structure AddGroupNorm (G : Type _) [AddGroup G] extends AddGroupSeminorm G where
eq_zero_of_map_eq_zero' : ∀ x, to_fun x = 0 → x = 0
#align add_group_norm AddGroupNorm
+-/
+#print GroupNorm /-
/-- A seminorm on a group `G` is a function `f : G → ℝ` that sends one to zero, is submultiplicative
and such that `f x⁻¹ = f x` and `f x = 0 → x = 1` for all `x`. -/
@[protect_proj, to_additive]
@@ -101,19 +110,23 @@ structure GroupNorm (G : Type _) [Group G] extends GroupSeminorm G where
eq_one_of_map_eq_zero' : ∀ x, to_fun x = 0 → x = 1
#align group_norm GroupNorm
#align add_group_norm AddGroupNorm
+-/
+#print NonarchAddGroupNorm /-
/-- A nonarchimedean norm on an additive group `G` is a function `f : G → ℝ` that preserves zero, is
nonarchimedean and such that `f (-x) = f x` and `f x = 0 → x = 0` for all `x`. -/
@[protect_proj]
structure NonarchAddGroupNorm (G : Type _) [AddGroup G] extends NonarchAddGroupSeminorm G where
eq_zero_of_map_eq_zero' : ∀ x, to_fun x = 0 → x = 0
#align nonarch_add_group_norm NonarchAddGroupNorm
+-/
attribute [nolint doc_blame]
AddGroupSeminorm.toZeroHom AddGroupNorm.toAddGroupSeminorm GroupNorm.toGroupSeminorm NonarchAddGroupSeminorm.toZeroHom NonarchAddGroupNorm.toNonarchAddGroupSeminorm
attribute [to_additive] GroupNorm.toGroupSeminorm
+#print NonarchAddGroupSeminormClass /-
/-- `nonarch_add_group_seminorm_class F α` states that `F` is a type of nonarchimedean seminorms on
the additive group `α`.
@@ -124,7 +137,9 @@ class NonarchAddGroupSeminormClass (F : Type _) (α : outParam <| Type _) [AddGr
map_zero (f : F) : f 0 = 0
map_neg_eq_map' (f : F) (a : α) : f (-a) = f a
#align nonarch_add_group_seminorm_class NonarchAddGroupSeminormClass
+-/
+#print NonarchAddGroupNormClass /-
/-- `nonarch_add_group_norm_class F α` states that `F` is a type of nonarchimedean norms on the
additive group `α`.
@@ -134,6 +149,7 @@ class NonarchAddGroupNormClass (F : Type _) (α : outParam <| Type _) [AddGroup
NonarchAddGroupSeminormClass F α where
eq_zero_of_map_eq_zero (f : F) {a : α} : f a = 0 → a = 0
#align nonarch_add_group_norm_class NonarchAddGroupNormClass
+-/
section NonarchAddGroupSeminormClass
@@ -141,6 +157,12 @@ variable [AddGroup E] [NonarchAddGroupSeminormClass F E] (f : F) (x y : E)
include E
+/- warning: map_sub_le_max -> map_sub_le_max is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : NonarchAddGroupSeminormClass.{u2, u1} F E _inst_1] (f : F) (x : E) (y : E), LE.le.{0} Real Real.hasLe (coeFn.{succ u2, succ u1} F (fun (_x : F) => E -> Real) (FunLike.hasCoeToFun.{succ u2, succ u1, 1} F E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u1, 0} F E Real (AddZeroClass.toHasAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u1} F E _inst_1 _inst_2))) f (HSub.hSub.{u1, u1, u1} E E E (instHSub.{u1} E (SubNegMonoid.toHasSub.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1))) x y)) (LinearOrder.max.{0} Real Real.linearOrder (coeFn.{succ u2, succ u1} F (fun (_x : F) => E -> Real) (FunLike.hasCoeToFun.{succ u2, succ u1, 1} F E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u1, 0} F E Real (AddZeroClass.toHasAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u1} F E _inst_1 _inst_2))) f x) (coeFn.{succ u2, succ u1} F (fun (_x : F) => E -> Real) (FunLike.hasCoeToFun.{succ u2, succ u1, 1} F E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u1, 0} F E Real (AddZeroClass.toHasAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u1} F E _inst_1 _inst_2))) f y))
+but is expected to have type
+ forall {E : Type.{u2}} {F : Type.{u1}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : NonarchAddGroupSeminormClass.{u1, u2} F E _inst_1] (f : F) (x : E) (y : E), LE.le.{0} ((fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.281 : E) => Real) (HSub.hSub.{u2, u2, u2} E E E (instHSub.{u2} E (SubNegMonoid.toSub.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1))) x y)) Real.instLEReal (FunLike.coe.{succ u1, succ u2, 1} F E (fun (_x : E) => (fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.281 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u2, 0} F E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u2} F E _inst_1 _inst_2)) f (HSub.hSub.{u2, u2, u2} E E E (instHSub.{u2} E (SubNegMonoid.toSub.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1))) x y)) (Max.max.{0} ((fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.281 : E) => Real) x) (LinearOrderedRing.toMax.{0} ((fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.281 : E) => Real) x) Real.instLinearOrderedRingReal) (FunLike.coe.{succ u1, succ u2, 1} F E (fun (_x : E) => (fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.281 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u2, 0} F E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u2} F E _inst_1 _inst_2)) f x) (FunLike.coe.{succ u1, succ u2, 1} F E (fun (_x : E) => (fun (x._@.Mathlib.Algebra.Order.Hom.Basic._hyg.281 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u2, 0} F E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u2} F E _inst_1 _inst_2)) f y))
+Case conversion may be inaccurate. Consider using '#align map_sub_le_max map_sub_le_maxₓ'. -/
theorem map_sub_le_max : f (x - y) ≤ max (f x) (f y) :=
by
rw [sub_eq_add_neg, ← NonarchAddGroupSeminormClass.map_neg_eq_map' f y]
@@ -149,6 +171,7 @@ theorem map_sub_le_max : f (x - y) ≤ max (f x) (f y) :=
end NonarchAddGroupSeminormClass
+#print NonarchAddGroupSeminormClass.toAddGroupSeminormClass /-
-- See note [lower instance priority]
instance (priority := 100) NonarchAddGroupSeminormClass.toAddGroupSeminormClass [AddGroup E]
[NonarchAddGroupSeminormClass F E] : AddGroupSeminormClass F E ℝ :=
@@ -164,7 +187,9 @@ instance (priority := 100) NonarchAddGroupSeminormClass.toAddGroupSeminormClass
(max_le (le_add_of_nonneg_right (h_nonneg _)) (le_add_of_nonneg_left (h_nonneg _)))
map_neg_eq_map := NonarchAddGroupSeminormClass.map_neg_eq_map' }
#align nonarch_add_group_seminorm_class.to_add_group_seminorm_class NonarchAddGroupSeminormClass.toAddGroupSeminormClass
+-/
+#print NonarchAddGroupNormClass.toAddGroupNormClass /-
-- See note [lower instance priority]
instance (priority := 100) NonarchAddGroupNormClass.toAddGroupNormClass [AddGroup E]
[NonarchAddGroupNormClass F E] : AddGroupNormClass F E ℝ :=
@@ -174,6 +199,7 @@ instance (priority := 100) NonarchAddGroupNormClass.toAddGroupNormClass [AddGrou
map_add_le_add := map_add_le_add
map_neg_eq_map := NonarchAddGroupSeminormClass.map_neg_eq_map' }
#align nonarch_add_group_norm_class.to_add_group_norm_class NonarchAddGroupNormClass.toAddGroupNormClass
+-/
/-! ### Seminorms -/
@@ -184,6 +210,7 @@ section Group
variable [Group E] [Group F] [Group G] {p q : GroupSeminorm E}
+#print GroupSeminorm.groupSeminormClass /-
@[to_additive]
instance groupSeminormClass : GroupSeminormClass (GroupSeminorm E) E ℝ
where
@@ -194,6 +221,7 @@ instance groupSeminormClass : GroupSeminormClass (GroupSeminorm E) E ℝ
map_inv_eq_map f := f.inv'
#align group_seminorm.group_seminorm_class GroupSeminorm.groupSeminormClass
#align add_group_seminorm.add_group_seminorm_class AddGroupSeminorm.addGroupSeminormClass
+-/
/-- Helper instance for when there's too many metavariables to apply `fun_like.has_coe_to_fun`. -/
@[to_additive
@@ -201,40 +229,68 @@ instance groupSeminormClass : GroupSeminormClass (GroupSeminorm E) E ℝ
instance : CoeFun (GroupSeminorm E) fun _ => E → ℝ :=
⟨GroupSeminorm.toFun⟩
+#print GroupSeminorm.toFun_eq_coe /-
@[simp, to_additive]
theorem toFun_eq_coe : p.toFun = p :=
rfl
#align group_seminorm.to_fun_eq_coe GroupSeminorm.toFun_eq_coe
#align add_group_seminorm.to_fun_eq_coe AddGroupSeminorm.toFun_eq_coe
+-/
+#print GroupSeminorm.ext /-
@[ext, to_additive]
theorem ext : (∀ x, p x = q x) → p = q :=
FunLike.ext p q
#align group_seminorm.ext GroupSeminorm.ext
#align add_group_seminorm.ext AddGroupSeminorm.ext
+-/
@[to_additive]
instance : PartialOrder (GroupSeminorm E) :=
PartialOrder.lift _ FunLike.coe_injective
+/- warning: group_seminorm.le_def -> GroupSeminorm.le_def is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} E _inst_1))) p q) (LE.le.{u1} (E -> Real) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.le_def GroupSeminorm.le_defₓ'. -/
@[to_additive]
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
#align group_seminorm.le_def GroupSeminorm.le_def
#align add_group_seminorm.le_def AddGroupSeminorm.le_def
+/- warning: group_seminorm.lt_def -> GroupSeminorm.lt_def is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (E -> Real) (Preorder.toLT.{u1} (E -> Real) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.lt_def GroupSeminorm.lt_defₓ'. -/
@[to_additive]
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
#align group_seminorm.lt_def GroupSeminorm.lt_def
#align add_group_seminorm.lt_def AddGroupSeminorm.lt_def
+/- warning: group_seminorm.coe_le_coe -> GroupSeminorm.coe_le_coe is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (E -> Real) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q)) (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} E _inst_1))) p q)
+Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_le_coe GroupSeminorm.coe_le_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
Iff.rfl
#align group_seminorm.coe_le_coe GroupSeminorm.coe_le_coe
#align add_group_seminorm.coe_le_coe AddGroupSeminorm.coe_le_coe
+/- warning: group_seminorm.coe_lt_coe -> GroupSeminorm.coe_lt_coe is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (E -> Real) (Preorder.toLT.{u1} (E -> Real) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q)) (LT.lt.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} E _inst_1))) p q)
+Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_lt_coe GroupSeminorm.coe_lt_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
Iff.rfl
@@ -250,12 +306,24 @@ instance : Zero (GroupSeminorm E) :=
mul_le' := fun _ _ => (zero_add _).ge
inv' := fun x => rfl }⟩
+/- warning: group_seminorm.coe_zero -> GroupSeminorm.coe_zero is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E], Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (OfNat.mk.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (Zero.zero.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasZero.{u1} E _inst_1))))) (OfNat.ofNat.{u1} (E -> Real) 0 (OfNat.mk.{u1} (E -> Real) 0 (Zero.zero.{u1} (E -> Real) (Pi.instZero.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasZero)))))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E], Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (Zero.toOfNat0.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instZeroGroupSeminorm.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (E -> Real) 0 (Zero.toOfNat0.{u1} (E -> Real) (Pi.instZero.{u1, 0} E (fun (a : E) => Real) (fun (i : E) => Real.instZeroReal))))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_zero GroupSeminorm.coe_zeroₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_zero : ⇑(0 : GroupSeminorm E) = 0 :=
rfl
#align group_seminorm.coe_zero GroupSeminorm.coe_zero
#align add_group_seminorm.coe_zero AddGroupSeminorm.coe_zero
+/- warning: group_seminorm.zero_apply -> GroupSeminorm.zero_apply is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (OfNat.mk.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (Zero.zero.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasZero.{u1} E _inst_1)))) x) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero)))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (Zero.toOfNat0.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instZeroGroupSeminorm.{u1} E _inst_1))) x) (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.zero_apply GroupSeminorm.zero_applyₓ'. -/
@[simp, to_additive]
theorem zero_apply (x : E) : (0 : GroupSeminorm E) x = 0 :=
rfl
@@ -276,12 +344,24 @@ instance : Add (GroupSeminorm E) :=
add_add_add_comm _ _ _ _
inv' := fun x => by rw [map_inv_eq_map p, map_inv_eq_map q] }⟩
+/- warning: group_seminorm.coe_add -> GroupSeminorm.coe_add is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (instHAdd.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasAdd.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (E -> Real) (E -> Real) (E -> Real) (instHAdd.{u1} (E -> Real) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasAdd))) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (HAdd.hAdd.{u1, u1, u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (instHAdd.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instAddGroupSeminorm.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (E -> Real) (E -> Real) (E -> Real) (instHAdd.{u1} (E -> Real) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instAddReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_add GroupSeminorm.coe_addₓ'. -/
@[simp, to_additive]
theorem coe_add : ⇑(p + q) = p + q :=
rfl
#align group_seminorm.coe_add GroupSeminorm.coe_add
#align add_group_seminorm.coe_add AddGroupSeminorm.coe_add
+/- warning: group_seminorm.add_apply -> GroupSeminorm.add_apply is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (instHAdd.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasAdd.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q x))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1) (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (HAdd.hAdd.{u1, u1, u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (instHAdd.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instAddGroupSeminorm.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q x))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.add_apply GroupSeminorm.add_applyₓ'. -/
@[simp, to_additive]
theorem add_apply (x : E) : (p + q) x = p x + q x :=
rfl
@@ -301,12 +381,24 @@ instance : Sup (GroupSeminorm E) :=
((map_mul_le_add q x y).trans <| add_le_add le_sup_right le_sup_right)
inv' := fun x => by rw [Pi.sup_apply, Pi.sup_apply, map_inv_eq_map p, map_inv_eq_map q] }⟩
+/- warning: group_seminorm.coe_sup -> GroupSeminorm.coe_sup is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (Sup.sup.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instSupGroupSeminorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_sup GroupSeminorm.coe_supₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
rfl
#align group_seminorm.coe_sup GroupSeminorm.coe_sup
#align add_group_seminorm.coe_sup AddGroupSeminorm.coe_sup
+/- warning: group_seminorm.sup_apply -> GroupSeminorm.sup_apply is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) q x))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1) (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (Sup.sup.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instSupGroupSeminorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) q x))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.sup_apply GroupSeminorm.sup_applyₓ'. -/
@[simp, to_additive]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
rfl
@@ -317,6 +409,7 @@ theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
instance : SemilatticeSup (GroupSeminorm E) :=
FunLike.coe_injective.SemilatticeSup _ coe_sup
+#print GroupSeminorm.comp /-
/-- Composition of a group seminorm with a monoid homomorphism as a group seminorm. -/
@[to_additive
"Composition of an additive group seminorm with an additive monoid homomorphism as an\nadditive group seminorm."]
@@ -328,43 +421,82 @@ def comp (p : GroupSeminorm E) (f : F →* E) : GroupSeminorm F
inv' x := by rw [map_inv, map_inv_eq_map p]
#align group_seminorm.comp GroupSeminorm.comp
#align add_group_seminorm.comp AddGroupSeminorm.comp
+-/
+/- warning: group_seminorm.coe_comp -> GroupSeminorm.coe_comp is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (F -> Real) (coeFn.{succ u2, succ u2} (GroupSeminorm.{u2} F _inst_2) (fun (_x : GroupSeminorm.{u2} F _inst_2) => F -> Real) (GroupSeminorm.hasCoeToFun.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f)) (Function.comp.{succ u2, succ u1, 1} F E Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (fun (_x : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) => F -> E) (MonoidHom.hasCoeToFun.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) f))
+but is expected to have type
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (F -> Real) (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} F _inst_2) F (fun (_x : F) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real _inst_2 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f)) (Function.comp.{succ u2, succ u1, 1} F E Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F (fun (_x : F) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : F) => E) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) (MonoidHom.monoidHomClass.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))) f))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_comp GroupSeminorm.coe_compₓ'. -/
@[simp, to_additive]
theorem coe_comp : ⇑(p.comp f) = p ∘ f :=
rfl
#align group_seminorm.coe_comp GroupSeminorm.coe_comp
#align add_group_seminorm.coe_comp AddGroupSeminorm.coe_comp
+/- warning: group_seminorm.comp_apply -> GroupSeminorm.comp_apply is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (x : F), Eq.{1} Real (coeFn.{succ u2, succ u2} (GroupSeminorm.{u2} F _inst_2) (fun (_x : GroupSeminorm.{u2} F _inst_2) => F -> Real) (GroupSeminorm.hasCoeToFun.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) x) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) p (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (fun (_x : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) => F -> E) (MonoidHom.hasCoeToFun.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) f x))
+but is expected to have type
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (x : F), Eq.{1} Real (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} F _inst_2) F (fun (_x : F) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} F _inst_2) F Real _inst_2 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) p (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F (fun (_x : F) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : F) => E) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (MulOneClass.toMul.{u2} F (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))) (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) (MonoidHom.monoidHomClass.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))) f x))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_apply GroupSeminorm.comp_applyₓ'. -/
@[simp, to_additive]
theorem comp_apply (x : F) : (p.comp f) x = p (f x) :=
rfl
#align group_seminorm.comp_apply GroupSeminorm.comp_apply
#align add_group_seminorm.comp_apply AddGroupSeminorm.comp_apply
+#print GroupSeminorm.comp_id /-
@[simp, to_additive]
theorem comp_id : p.comp (MonoidHom.id _) = p :=
ext fun _ => rfl
#align group_seminorm.comp_id GroupSeminorm.comp_id
#align add_group_seminorm.comp_id AddGroupSeminorm.comp_id
+-/
+/- warning: group_seminorm.comp_zero -> GroupSeminorm.comp_zero is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1), Eq.{succ u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p (OfNat.ofNat.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) 1 (OfNat.mk.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) 1 (One.one.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (MonoidHom.hasOne.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{u2} (GroupSeminorm.{u2} F _inst_2) 0 (OfNat.mk.{u2} (GroupSeminorm.{u2} F _inst_2) 0 (Zero.zero.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.hasZero.{u2} F _inst_2))))
+but is expected to have type
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1), Eq.{succ u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p (OfNat.ofNat.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) 1 (One.toOfNat1.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (instOneMonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{u2} (GroupSeminorm.{u2} F _inst_2) 0 (Zero.toOfNat0.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.instZeroGroupSeminorm.{u2} F _inst_2)))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_zero GroupSeminorm.comp_zeroₓ'. -/
@[simp, to_additive]
theorem comp_zero : p.comp (1 : F →* E) = 0 :=
ext fun _ => map_one_eq_zero p
#align group_seminorm.comp_zero GroupSeminorm.comp_zero
#align add_group_seminorm.comp_zero AddGroupSeminorm.comp_zero
+/- warning: group_seminorm.zero_comp -> GroupSeminorm.zero_comp is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (OfNat.mk.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (Zero.zero.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasZero.{u1} E _inst_1)))) f) (OfNat.ofNat.{u2} (GroupSeminorm.{u2} F _inst_2) 0 (OfNat.mk.{u2} (GroupSeminorm.{u2} F _inst_2) 0 (Zero.zero.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.hasZero.{u2} F _inst_2))))
+but is expected to have type
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 0 (Zero.toOfNat0.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instZeroGroupSeminorm.{u1} E _inst_1))) f) (OfNat.ofNat.{u2} (GroupSeminorm.{u2} F _inst_2) 0 (Zero.toOfNat0.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.instZeroGroupSeminorm.{u2} F _inst_2)))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.zero_comp GroupSeminorm.zero_compₓ'. -/
@[simp, to_additive]
theorem zero_comp : (0 : GroupSeminorm E).comp f = 0 :=
ext fun _ => rfl
#align group_seminorm.zero_comp GroupSeminorm.zero_comp
#align add_group_seminorm.zero_comp AddGroupSeminorm.zero_comp
+/- warning: group_seminorm.comp_assoc -> GroupSeminorm.comp_assoc is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} {F : Type.{u2}} {G : Type.{u3}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] [_inst_3 : Group.{u3} G] (p : GroupSeminorm.{u1} E _inst_1) (g : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (f : MonoidHom.{u3, u2} G F (Monoid.toMulOneClass.{u3} G (DivInvMonoid.toMonoid.{u3} G (Group.toDivInvMonoid.{u3} G _inst_3))) (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2)))), Eq.{succ u3} (GroupSeminorm.{u3} G _inst_3) (GroupSeminorm.comp.{u1, u3} E G _inst_1 _inst_3 p (MonoidHom.comp.{u3, u2, u1} G F E (Monoid.toMulOneClass.{u3} G (DivInvMonoid.toMonoid.{u3} G (Group.toDivInvMonoid.{u3} G _inst_3))) (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1))) g f)) (GroupSeminorm.comp.{u2, u3} F G _inst_2 _inst_3 (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p g) f)
+but is expected to have type
+ forall {E : Type.{u2}} {F : Type.{u3}} {G : Type.{u1}} [_inst_1 : Group.{u2} E] [_inst_2 : Group.{u3} F] [_inst_3 : Group.{u1} G] (p : GroupSeminorm.{u2} E _inst_1) (g : MonoidHom.{u3, u2} F E (Monoid.toMulOneClass.{u3} F (DivInvMonoid.toMonoid.{u3} F (Group.toDivInvMonoid.{u3} F _inst_2))) (Monoid.toMulOneClass.{u2} E (DivInvMonoid.toMonoid.{u2} E (Group.toDivInvMonoid.{u2} E _inst_1)))) (f : MonoidHom.{u1, u3} G F (Monoid.toMulOneClass.{u1} G (DivInvMonoid.toMonoid.{u1} G (Group.toDivInvMonoid.{u1} G _inst_3))) (Monoid.toMulOneClass.{u3} F (DivInvMonoid.toMonoid.{u3} F (Group.toDivInvMonoid.{u3} F _inst_2)))), Eq.{succ u1} (GroupSeminorm.{u1} G _inst_3) (GroupSeminorm.comp.{u2, u1} E G _inst_1 _inst_3 p (MonoidHom.comp.{u1, u3, u2} G F E (Monoid.toMulOneClass.{u1} G (DivInvMonoid.toMonoid.{u1} G (Group.toDivInvMonoid.{u1} G _inst_3))) (Monoid.toMulOneClass.{u3} F (DivInvMonoid.toMonoid.{u3} F (Group.toDivInvMonoid.{u3} F _inst_2))) (Monoid.toMulOneClass.{u2} E (DivInvMonoid.toMonoid.{u2} E (Group.toDivInvMonoid.{u2} E _inst_1))) g f)) (GroupSeminorm.comp.{u3, u1} F G _inst_2 _inst_3 (GroupSeminorm.comp.{u2, u3} E F _inst_1 _inst_2 p g) f)
+Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_assoc GroupSeminorm.comp_assocₓ'. -/
@[to_additive]
theorem comp_assoc (g : F →* E) (f : G →* F) : p.comp (g.comp f) = (p.comp g).comp f :=
ext fun _ => rfl
#align group_seminorm.comp_assoc GroupSeminorm.comp_assoc
#align add_group_seminorm.comp_assoc AddGroupSeminorm.comp_assoc
+/- warning: group_seminorm.add_comp -> GroupSeminorm.add_comp is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 (HAdd.hAdd.{u1, u1, u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (instHAdd.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasAdd.{u1} E _inst_1)) p q) f) (HAdd.hAdd.{u2, u2, u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.{u2} F _inst_2) (instHAdd.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.hasAdd.{u2} F _inst_2)) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 q f))
+but is expected to have type
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] (p : GroupSeminorm.{u1} E _inst_1) (q : GroupSeminorm.{u1} E _inst_1) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), Eq.{succ u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 (HAdd.hAdd.{u1, u1, u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.{u1} E _inst_1) (instHAdd.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.instAddGroupSeminorm.{u1} E _inst_1)) p q) f) (HAdd.hAdd.{u2, u2, u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.{u2} F _inst_2) (instHAdd.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.instAddGroupSeminorm.{u2} F _inst_2)) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 q f))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.add_comp GroupSeminorm.add_compₓ'. -/
@[to_additive]
theorem add_comp (f : F →* E) : (p + q).comp f = p.comp f + q.comp f :=
ext fun _ => rfl
@@ -373,6 +505,12 @@ theorem add_comp (f : F →* E) : (p + q).comp f = p.comp f + q.comp f :=
variable {p q}
+/- warning: group_seminorm.comp_mono -> GroupSeminorm.comp_mono is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : Group.{u1} E] [_inst_2 : Group.{u2} F] {p : GroupSeminorm.{u1} E _inst_1} {q : GroupSeminorm.{u1} E _inst_1} (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F _inst_2))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))), (LE.le.{u1} (GroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.partialOrder.{u1} E _inst_1))) p q) -> (LE.le.{u2} (GroupSeminorm.{u2} F _inst_2) (Preorder.toLE.{u2} (GroupSeminorm.{u2} F _inst_2) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} F _inst_2) (GroupSeminorm.partialOrder.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 p f) (GroupSeminorm.comp.{u1, u2} E F _inst_1 _inst_2 q f))
+but is expected to have type
+ forall {E : Type.{u2}} {F : Type.{u1}} [_inst_1 : Group.{u2} E] [_inst_2 : Group.{u1} F] {p : GroupSeminorm.{u2} E _inst_1} {q : GroupSeminorm.{u2} E _inst_1} (f : MonoidHom.{u1, u2} F E (Monoid.toMulOneClass.{u1} F (DivInvMonoid.toMonoid.{u1} F (Group.toDivInvMonoid.{u1} F _inst_2))) (Monoid.toMulOneClass.{u2} E (DivInvMonoid.toMonoid.{u2} E (Group.toDivInvMonoid.{u2} E _inst_1)))), (LE.le.{u2} (GroupSeminorm.{u2} E _inst_1) (Preorder.toLE.{u2} (GroupSeminorm.{u2} E _inst_1) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} E _inst_1) (GroupSeminorm.instPartialOrderGroupSeminorm.{u2} E _inst_1))) p q) -> (LE.le.{u1} (GroupSeminorm.{u1} F _inst_2) (Preorder.toLE.{u1} (GroupSeminorm.{u1} F _inst_2) (PartialOrder.toPreorder.{u1} (GroupSeminorm.{u1} F _inst_2) (GroupSeminorm.instPartialOrderGroupSeminorm.{u1} F _inst_2))) (GroupSeminorm.comp.{u2, u1} E F _inst_1 _inst_2 p f) (GroupSeminorm.comp.{u2, u1} E F _inst_1 _inst_2 q f))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_mono GroupSeminorm.comp_monoₓ'. -/
@[to_additive]
theorem comp_mono (hp : p ≤ q) : p.comp f ≤ q.comp f := fun _ => hp _
#align group_seminorm.comp_mono GroupSeminorm.comp_mono
@@ -384,12 +522,24 @@ section CommGroup
variable [CommGroup E] [CommGroup F] (p q : GroupSeminorm E) (x y : E)
+/- warning: group_seminorm.comp_mul_le -> GroupSeminorm.comp_mul_le is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : CommGroup.{u1} E] [_inst_2 : CommGroup.{u2} F] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (g : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))), LE.le.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (Preorder.toLE.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.partialOrder.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (instHMul.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.hasMul.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (CommGroup.toCommMonoid.{u1} E _inst_1))) f g)) (HAdd.hAdd.{u2, u2, u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (instHAdd.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.hasAdd.{u2} F (CommGroup.toGroup.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p f) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p g))
+but is expected to have type
+ forall {E : Type.{u1}} {F : Type.{u2}} [_inst_1 : CommGroup.{u1} E] [_inst_2 : CommGroup.{u2} F] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (f : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (g : MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))), LE.le.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (Preorder.toLE.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (PartialOrder.toPreorder.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.instPartialOrderGroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (instHMul.{max u1 u2} (MonoidHom.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (MonoidHom.mul.{u2, u1} F E (Monoid.toMulOneClass.{u2} F (DivInvMonoid.toMonoid.{u2} F (Group.toDivInvMonoid.{u2} F (CommGroup.toGroup.{u2} F _inst_2)))) (CommGroup.toCommMonoid.{u1} E _inst_1))) f g)) (HAdd.hAdd.{u2, u2, u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (instHAdd.{u2} (GroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2)) (GroupSeminorm.instAddGroupSeminorm.{u2} F (CommGroup.toGroup.{u2} F _inst_2))) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p f) (GroupSeminorm.comp.{u1, u2} E F (CommGroup.toGroup.{u1} E _inst_1) (CommGroup.toGroup.{u2} F _inst_2) p g))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.comp_mul_le GroupSeminorm.comp_mul_leₓ'. -/
@[to_additive]
theorem comp_mul_le (f g : F →* E) : p.comp (f * g) ≤ p.comp f + p.comp g := fun _ =>
map_mul_le_add p _ _
#align group_seminorm.comp_mul_le GroupSeminorm.comp_mul_le
#align add_group_seminorm.comp_add_le AddGroupSeminorm.comp_add_le
+/- warning: group_seminorm.mul_bdd_below_range_add -> GroupSeminorm.mul_bddBelow_range_add is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : CommGroup.{u1} E] {p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)} {q : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)} {x : E}, BddBelow.{0} Real Real.preorder (Set.range.{0, succ u1} Real E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) p y) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) q (HDiv.hDiv.{u1, u1, u1} E E E (instHDiv.{u1} E (DivInvMonoid.toHasDiv.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) x y))))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : CommGroup.{u1} E] {p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)} {q : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)} {x : E}, BddBelow.{0} Real Real.instPreorderReal (Set.range.{0, succ u1} Real E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) p y) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) q (HDiv.hDiv.{u1, u1, u1} E E E (instHDiv.{u1} E (DivInvMonoid.toDiv.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) x y))))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.mul_bdd_below_range_add GroupSeminorm.mul_bddBelow_range_addₓ'. -/
@[to_additive]
theorem mul_bddBelow_range_add {p q : GroupSeminorm E} {x : E} :
BddBelow (range fun y => p y + q (x / y)) :=
@@ -417,6 +567,12 @@ noncomputable instance : Inf (GroupSeminorm E) :=
(inv_surjective.infᵢ_comp _).symm.trans <| by
simp_rw [map_inv_eq_map p, ← inv_div', map_inv_eq_map q] }⟩
+/- warning: group_seminorm.inf_apply -> GroupSeminorm.inf_apply is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : CommGroup.{u1} E] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (q : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (Inf.inf.{u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (GroupSeminorm.hasInf.{u1} E _inst_1) p q) x) (infᵢ.{0, succ u1} Real Real.hasInf E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) p y) (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (fun (_x : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) q (HDiv.hDiv.{u1, u1, u1} E E E (instHDiv.{u1} E (DivInvMonoid.toHasDiv.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) x y))))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : CommGroup.{u1} E] (p : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (q : GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) (Inf.inf.{u1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) (GroupSeminorm.instInfGroupSeminormToGroup.{u1} E _inst_1) p q) x) (infᵢ.{0, succ u1} Real Real.instInfSetReal E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) p y) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1))))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E (CommGroup.toGroup.{u1} E _inst_1)) E Real (CommGroup.toGroup.{u1} E _inst_1) Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) q (HDiv.hDiv.{u1, u1, u1} E E E (instHDiv.{u1} E (DivInvMonoid.toDiv.{u1} E (Group.toDivInvMonoid.{u1} E (CommGroup.toGroup.{u1} E _inst_1)))) x y))))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.inf_apply GroupSeminorm.inf_applyₓ'. -/
@[simp, to_additive]
theorem inf_apply : (p ⊓ q) x = ⨅ y, p y + q (x / y) :=
rfl
@@ -455,6 +611,12 @@ instance [DecidableEq E] : One (AddGroupSeminorm E) :=
refine' le_add_of_le_of_nonneg _ _ <;> split_ifs <;> norm_num
neg' := fun x => by simp_rw [neg_eq_zero] }⟩
+/- warning: add_group_seminorm.apply_one -> AddGroupSeminorm.apply_one is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_5 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (AddGroupSeminorm.{u1} E _inst_1) (fun (_x : AddGroupSeminorm.{u1} E _inst_1) => E -> Real) (AddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (AddGroupSeminorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (AddGroupSeminorm.{u1} E _inst_1) 1 (One.one.{u1} (AddGroupSeminorm.{u1} E _inst_1) (AddGroupSeminorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_5 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_5 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_5 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (AddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (SubadditiveHomClass.toFunLike.{u1, u1, 0} (AddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u1, u1, 0} (AddGroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupSeminorm.addGroupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (AddGroupSeminorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (AddGroupSeminorm.{u1} E _inst_1) (AddGroupSeminorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_5 a b)))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_5 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) (OfNat.ofNat.{0} Real 1 (One.toOfNat1.{0} Real Real.instOneReal)))
+Case conversion may be inaccurate. Consider using '#align add_group_seminorm.apply_one AddGroupSeminorm.apply_oneₓ'. -/
@[simp]
theorem apply_one [DecidableEq E] (x : E) : (1 : AddGroupSeminorm E) x = if x = 0 then 0 else 1 :=
rfl
@@ -474,26 +636,36 @@ instance : SMul R (AddGroupSeminorm E) :=
(mul_add _ _ _)
neg' := fun x => by rw [map_neg_eq_map] }⟩
+/- warning: add_group_seminorm.coe_smul -> AddGroupSeminorm.coe_smul is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (SMulZeroClass.toHasSmul.{0, 0} NNReal Real (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (SMulWithZero.toSmulZeroClass.{0, 0} NNReal Real (MulZeroClass.toHasZero.{0} NNReal (MulZeroOneClass.toMulZeroClass.{0} NNReal (MonoidWithZero.toMulZeroOneClass.{0} NNReal (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring)))) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (MulActionWithZero.toSMulWithZero.{0, 0} NNReal Real (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (Module.toMulActionWithZero.{0, 0} NNReal Real NNReal.semiring (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (NNReal.module.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (Semiring.toModule.{0} Real Real.semiring)))))) _inst_2] (r : R) (p : AddGroupSeminorm.{u2} E _inst_1), Eq.{succ u2} (E -> Real) (coeFn.{succ u2, succ u2} (AddGroupSeminorm.{u2} E _inst_1) (fun (_x : AddGroupSeminorm.{u2} E _inst_1) => E -> Real) (AddGroupSeminorm.hasCoeToFun.{u2} E _inst_1) (SMul.smul.{u1, u2} R (AddGroupSeminorm.{u2} E _inst_1) (AddGroupSeminorm.hasSmul.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4) r p)) (SMul.smul.{u1, u2} R (E -> Real) (Function.hasSMul.{u2, u1, 0} E R Real _inst_2) r (coeFn.{succ u2, succ u2} (AddGroupSeminorm.{u2} E _inst_1) (fun (_x : AddGroupSeminorm.{u2} E _inst_1) => E -> Real) (AddGroupSeminorm.hasCoeToFun.{u2} E _inst_1) p))
+but is expected to have type
+ forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (Algebra.toSMul.{0, 0} NNReal Real instNNRealCommSemiring Real.semiring (NNReal.instAlgebraNNRealInstNNRealCommSemiring.{0} Real Real.semiring (Algebra.id.{0} Real Real.instCommSemiringReal))) _inst_2] (r : R) (p : AddGroupSeminorm.{u2} E _inst_1), Eq.{succ u2} (E -> Real) (FunLike.coe.{succ u2, succ u2, 1} (AddGroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (SubadditiveHomClass.toFunLike.{u2, u2, 0} (AddGroupSeminorm.{u2} E _inst_1) E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u2, u2, 0} (AddGroupSeminorm.{u2} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupSeminorm.addGroupSeminormClass.{u2} E _inst_1))) (HSMul.hSMul.{u1, u2, u2} R (AddGroupSeminorm.{u2} E _inst_1) (AddGroupSeminorm.{u2} E _inst_1) (instHSMul.{u1, u2} R (AddGroupSeminorm.{u2} E _inst_1) (AddGroupSeminorm.toSMul.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4)) r p)) (HSMul.hSMul.{u1, u2, u2} R (E -> Real) (E -> Real) (instHSMul.{u1, u2} R (E -> Real) (Pi.instSMul.{u2, 0, u1} E R (fun (a : E) => Real) (fun (i : E) => _inst_2))) r (FunLike.coe.{succ u2, succ u2, 1} (AddGroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (SubadditiveHomClass.toFunLike.{u2, u2, 0} (AddGroupSeminorm.{u2} E _inst_1) E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u2, u2, 0} (AddGroupSeminorm.{u2} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupSeminorm.addGroupSeminormClass.{u2} E _inst_1))) p))
+Case conversion may be inaccurate. Consider using '#align add_group_seminorm.coe_smul AddGroupSeminorm.coe_smulₓ'. -/
@[simp, norm_cast]
theorem coe_smul (r : R) (p : AddGroupSeminorm E) : ⇑(r • p) = r • p :=
rfl
#align add_group_seminorm.coe_smul AddGroupSeminorm.coe_smul
+#print AddGroupSeminorm.smul_apply /-
@[simp]
theorem smul_apply (r : R) (p : AddGroupSeminorm E) (x : E) : (r • p) x = r • p x :=
rfl
#align add_group_seminorm.smul_apply AddGroupSeminorm.smul_apply
+-/
instance [SMul R' ℝ] [SMul R' ℝ≥0] [IsScalarTower R' ℝ≥0 ℝ] [SMul R R'] [IsScalarTower R R' ℝ] :
IsScalarTower R R' (AddGroupSeminorm E) :=
⟨fun r a p => ext fun x => smul_assoc r a (p x)⟩
+#print AddGroupSeminorm.smul_sup /-
theorem smul_sup (r : R) (p q : AddGroupSeminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
have real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y) := fun x y => by
simpa only [← smul_eq_mul, ← NNReal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)] using
mul_max_of_nonneg x y (r • 1 : ℝ≥0).Prop
ext fun x => real.smul_max _ _
#align add_group_seminorm.smul_sup AddGroupSeminorm.smul_sup
+-/
end AddGroupSeminorm
@@ -503,6 +675,7 @@ section AddGroup
variable [AddGroup E] [AddGroup F] [AddGroup G] {p q : NonarchAddGroupSeminorm E}
+#print NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass /-
instance nonarchAddGroupSeminormClass : NonarchAddGroupSeminormClass (NonarchAddGroupSeminorm E) E
where
coe f := f.toFun
@@ -511,16 +684,29 @@ instance nonarchAddGroupSeminormClass : NonarchAddGroupSeminormClass (NonarchAdd
map_zero f := f.map_zero'
map_neg_eq_map' f := f.neg'
#align nonarch_add_group_seminorm.nonarch_add_group_seminorm_class NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass
+-/
/-- Helper instance for when there's too many metavariables to apply `fun_like.has_coe_to_fun`. -/
instance : CoeFun (NonarchAddGroupSeminorm E) fun _ => E → ℝ :=
⟨NonarchAddGroupSeminorm.toFun⟩
+/- warning: nonarch_add_group_seminorm.to_fun_eq_coe -> NonarchAddGroupSeminorm.toZeroHom_eq_coe is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (NonarchAddGroupSeminorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1}, Eq.{succ u1} (forall (ᾰ : E), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (ZeroHom.{u1, 0} E Real (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1)))) Real.instZeroReal) E (fun (a : E) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.124 : E) => Real) a) (ZeroHomClass.toFunLike.{u1, u1, 0} (ZeroHom.{u1, 0} E Real (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1)))) Real.instZeroReal) E Real (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1)))) Real.instZeroReal (ZeroHom.zeroHomClass.{u1, 0} E Real (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1)))) Real.instZeroReal)) (NonarchAddGroupSeminorm.toZeroHom.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p)
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.to_fun_eq_coe NonarchAddGroupSeminorm.toZeroHom_eq_coeₓ'. -/
@[simp]
-theorem toFun_eq_coe : p.toFun = p :=
+theorem toZeroHom_eq_coe : p.toFun = p :=
rfl
-#align nonarch_add_group_seminorm.to_fun_eq_coe NonarchAddGroupSeminorm.toFun_eq_coe
-
+#align nonarch_add_group_seminorm.to_fun_eq_coe NonarchAddGroupSeminorm.toZeroHom_eq_coe
+
+/- warning: nonarch_add_group_seminorm.ext -> NonarchAddGroupSeminorm.ext is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) p q)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q x)) -> (Eq.{succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) p q)
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.ext NonarchAddGroupSeminorm.extₓ'. -/
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
FunLike.ext p q
@@ -529,19 +715,43 @@ theorem ext : (∀ x, p x = q x) → p = q :=
noncomputable instance : PartialOrder (NonarchAddGroupSeminorm E) :=
PartialOrder.lift _ FunLike.coe_injective
+/- warning: nonarch_add_group_seminorm.le_def -> NonarchAddGroupSeminorm.le_def is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instPartialOrderNonarchAddGroupSeminorm.{u1} E _inst_1))) p q) (LE.le.{u1} (E -> Real) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.le_def NonarchAddGroupSeminorm.le_defₓ'. -/
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
#align nonarch_add_group_seminorm.le_def NonarchAddGroupSeminorm.le_def
+/- warning: nonarch_add_group_seminorm.lt_def -> NonarchAddGroupSeminorm.lt_def is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instPartialOrderNonarchAddGroupSeminorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (E -> Real) (Preorder.toLT.{u1} (E -> Real) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.lt_def NonarchAddGroupSeminorm.lt_defₓ'. -/
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
#align nonarch_add_group_seminorm.lt_def NonarchAddGroupSeminorm.lt_def
+/- warning: nonarch_add_group_seminorm.coe_le_coe -> NonarchAddGroupSeminorm.coe_le_coe is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LE.le.{u1} (E -> Real) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q)) (LE.le.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instPartialOrderNonarchAddGroupSeminorm.{u1} E _inst_1))) p q)
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.coe_le_coe NonarchAddGroupSeminorm.coe_le_coeₓ'. -/
@[simp, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
Iff.rfl
#align nonarch_add_group_seminorm.coe_le_coe NonarchAddGroupSeminorm.coe_le_coe
+/- warning: nonarch_add_group_seminorm.coe_lt_coe -> NonarchAddGroupSeminorm.coe_lt_coe is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.partialOrder.{u1} E _inst_1))) p q)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E _inst_1} {q : NonarchAddGroupSeminorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (E -> Real) (Preorder.toLT.{u1} (E -> Real) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q)) (LT.lt.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instPartialOrderNonarchAddGroupSeminorm.{u1} E _inst_1))) p q)
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.coe_lt_coe NonarchAddGroupSeminorm.coe_lt_coeₓ'. -/
@[simp, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
Iff.rfl
@@ -555,11 +765,23 @@ instance : Zero (NonarchAddGroupSeminorm E) :=
add_le_max' := fun r s => by simp only [Pi.zero_apply, max_eq_right]
neg' := fun x => rfl }⟩
+/- warning: nonarch_add_group_seminorm.coe_zero -> NonarchAddGroupSeminorm.coe_zero is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E], Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 0 (OfNat.mk.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 0 (Zero.zero.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.hasZero.{u1} E _inst_1))))) (OfNat.ofNat.{u1} (E -> Real) 0 (OfNat.mk.{u1} (E -> Real) 0 (Zero.zero.{u1} (E -> Real) (Pi.instZero.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasZero)))))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E], Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 0 (Zero.toOfNat0.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instZeroNonarchAddGroupSeminorm.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (E -> Real) 0 (Zero.toOfNat0.{u1} (E -> Real) (Pi.instZero.{u1, 0} E (fun (a : E) => Real) (fun (i : E) => Real.instZeroReal))))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.coe_zero NonarchAddGroupSeminorm.coe_zeroₓ'. -/
@[simp, norm_cast]
theorem coe_zero : ⇑(0 : NonarchAddGroupSeminorm E) = 0 :=
rfl
#align nonarch_add_group_seminorm.coe_zero NonarchAddGroupSeminorm.coe_zero
+/- warning: nonarch_add_group_seminorm.zero_apply -> NonarchAddGroupSeminorm.zero_apply is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 0 (OfNat.mk.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 0 (Zero.zero.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.hasZero.{u1} E _inst_1)))) x) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero)))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 0 (Zero.toOfNat0.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instZeroNonarchAddGroupSeminorm.{u1} E _inst_1))) x) (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.zero_apply NonarchAddGroupSeminorm.zero_applyₓ'. -/
@[simp]
theorem zero_apply (x : E) : (0 : NonarchAddGroupSeminorm E) x = 0 :=
rfl
@@ -579,11 +801,23 @@ instance : Sup (NonarchAddGroupSeminorm E) :=
((map_add_le_max q x y).trans <| max_le_max le_sup_right le_sup_right)
neg' := fun x => by rw [Pi.sup_apply, Pi.sup_apply, map_neg_eq_map p, map_neg_eq_map q] }⟩
+/- warning: nonarch_add_group_seminorm.coe_sup -> NonarchAddGroupSeminorm.coe_sup is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupSeminorm.{u1} E _inst_1) (q : NonarchAddGroupSeminorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupSeminorm.{u1} E _inst_1) (q : NonarchAddGroupSeminorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (Sup.sup.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instSupNonarchAddGroupSeminorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.coe_sup NonarchAddGroupSeminorm.coe_supₓ'. -/
@[simp, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
rfl
#align nonarch_add_group_seminorm.coe_sup NonarchAddGroupSeminorm.coe_sup
+/- warning: nonarch_add_group_seminorm.sup_apply -> NonarchAddGroupSeminorm.sup_apply is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupSeminorm.{u1} E _inst_1) (q : NonarchAddGroupSeminorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) q x))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupSeminorm.{u1} E _inst_1) (q : NonarchAddGroupSeminorm.{u1} E _inst_1) (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (Sup.sup.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instSupNonarchAddGroupSeminorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) q x))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.sup_apply NonarchAddGroupSeminorm.sup_applyₓ'. -/
@[simp]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
rfl
@@ -598,6 +832,12 @@ section AddCommGroup
variable [AddCommGroup E] [AddCommGroup F] (p q : NonarchAddGroupSeminorm E) (x y : E)
+/- warning: nonarch_add_group_seminorm.add_bdd_below_range_add -> NonarchAddGroupSeminorm.add_bddBelow_range_add is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddCommGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)} {q : NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)} {x : E}, BddBelow.{0} Real Real.preorder (Set.range.{0, succ u1} Real E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) (fun (_x : NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) p y) (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) (fun (_x : NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) q (HSub.hSub.{u1, u1, u1} E E E (instHSub.{u1} E (SubNegMonoid.toHasSub.{u1} E (AddGroup.toSubNegMonoid.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)))) x y))))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddCommGroup.{u1} E] {p : NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)} {q : NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)} {x : E}, BddBelow.{0} Real Real.instPreorderReal (Set.range.{0, succ u1} Real E (fun (y : E) => HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1))))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) E (AddCommGroup.toAddGroup.{u1} E _inst_1) (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)))) p y) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1))))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)) E (AddCommGroup.toAddGroup.{u1} E _inst_1) (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)))) q (HSub.hSub.{u1, u1, u1} E E E (instHSub.{u1} E (SubNegMonoid.toSub.{u1} E (AddGroup.toSubNegMonoid.{u1} E (AddCommGroup.toAddGroup.{u1} E _inst_1)))) x y))))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.add_bdd_below_range_add NonarchAddGroupSeminorm.add_bddBelow_range_addₓ'. -/
theorem add_bddBelow_range_add {p q : NonarchAddGroupSeminorm E} {x : E} :
BddBelow (range fun y => p y + q (x - y)) :=
⟨0, by
@@ -625,6 +865,12 @@ instance [DecidableEq E] : One (GroupSeminorm E) :=
refine' le_add_of_le_of_nonneg _ _ <;> split_ifs <;> norm_num
inv' := fun x => by simp_rw [inv_eq_one] }⟩
+/- warning: group_seminorm.apply_one -> GroupSeminorm.apply_one is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_5 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupSeminorm.{u1} E _inst_1) (fun (_x : GroupSeminorm.{u1} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (GroupSeminorm.{u1} E _inst_1) 1 (One.one.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_5 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (_inst_5 x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_5 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (GroupSeminorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (GroupSeminorm.{u1} E _inst_1) (GroupSeminorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_5 a b)))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (_inst_5 x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) (OfNat.ofNat.{0} Real 1 (One.toOfNat1.{0} Real Real.instOneReal)))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.apply_one GroupSeminorm.apply_oneₓ'. -/
@[simp, to_additive AddGroupSeminorm.apply_one]
theorem apply_one [DecidableEq E] (x : E) : (1 : GroupSeminorm E) x = if x = 1 then 0 else 1 :=
rfl
@@ -652,18 +898,27 @@ instance [SMul R' ℝ] [SMul R' ℝ≥0] [IsScalarTower R' ℝ≥0 ℝ] [SMul R
IsScalarTower R R' (GroupSeminorm E) :=
⟨fun r a p => ext fun x => smul_assoc r a <| p x⟩
+/- warning: group_seminorm.coe_smul -> GroupSeminorm.coe_smul is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : Group.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (SMulZeroClass.toHasSmul.{0, 0} NNReal Real (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (SMulWithZero.toSmulZeroClass.{0, 0} NNReal Real (MulZeroClass.toHasZero.{0} NNReal (MulZeroOneClass.toMulZeroClass.{0} NNReal (MonoidWithZero.toMulZeroOneClass.{0} NNReal (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring)))) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (MulActionWithZero.toSMulWithZero.{0, 0} NNReal Real (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (Module.toMulActionWithZero.{0, 0} NNReal Real NNReal.semiring (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (NNReal.module.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (Semiring.toModule.{0} Real Real.semiring)))))) _inst_2] (r : R) (p : GroupSeminorm.{u2} E _inst_1), Eq.{succ u2} (E -> Real) (coeFn.{succ u2, succ u2} (GroupSeminorm.{u2} E _inst_1) (fun (_x : GroupSeminorm.{u2} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u2} E _inst_1) (SMul.smul.{u1, u2} R (GroupSeminorm.{u2} E _inst_1) (GroupSeminorm.hasSmul.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4) r p)) (SMul.smul.{u1, u2} R (E -> Real) (Function.hasSMul.{u2, u1, 0} E R Real _inst_2) r (coeFn.{succ u2, succ u2} (GroupSeminorm.{u2} E _inst_1) (fun (_x : GroupSeminorm.{u2} E _inst_1) => E -> Real) (GroupSeminorm.hasCoeToFun.{u2} E _inst_1) p))
+but is expected to have type
+ forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : Group.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (Algebra.toSMul.{0, 0} NNReal Real instNNRealCommSemiring Real.semiring (NNReal.instAlgebraNNRealInstNNRealCommSemiring.{0} Real Real.semiring (Algebra.id.{0} Real Real.instCommSemiringReal))) _inst_2] (r : R) (p : GroupSeminorm.{u2} E _inst_1), Eq.{succ u2} (E -> Real) (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} E _inst_1) E Real (MulOneClass.toMul.{u2} E (Monoid.toMulOneClass.{u2} E (DivInvMonoid.toMonoid.{u2} E (Group.toDivInvMonoid.{u2} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} E _inst_1))) (HSMul.hSMul.{u1, u2, u2} R (GroupSeminorm.{u2} E _inst_1) (GroupSeminorm.{u2} E _inst_1) (instHSMul.{u1, u2} R (GroupSeminorm.{u2} E _inst_1) (GroupSeminorm.instSMulGroupSeminorm.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4)) r p)) (HSMul.hSMul.{u1, u2, u2} R (E -> Real) (E -> Real) (instHSMul.{u1, u2} R (E -> Real) (Pi.instSMul.{u2, 0, u1} E R (fun (a : E) => Real) (fun (i : E) => _inst_2))) r (FunLike.coe.{succ u2, succ u2, 1} (GroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (MulLEAddHomClass.toFunLike.{u2, u2, 0} (GroupSeminorm.{u2} E _inst_1) E Real (MulOneClass.toMul.{u2} E (Monoid.toMulOneClass.{u2} E (DivInvMonoid.toMonoid.{u2} E (Group.toDivInvMonoid.{u2} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u2, u2, 0} (GroupSeminorm.{u2} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u2} E _inst_1))) p))
+Case conversion may be inaccurate. Consider using '#align group_seminorm.coe_smul GroupSeminorm.coe_smulₓ'. -/
@[simp, to_additive AddGroupSeminorm.coe_smul, norm_cast]
theorem coe_smul (r : R) (p : GroupSeminorm E) : ⇑(r • p) = r • p :=
rfl
#align group_seminorm.coe_smul GroupSeminorm.coe_smul
#align add_group_seminorm.coe_smul AddGroupSeminorm.coe_smul
+#print GroupSeminorm.smul_apply /-
@[simp, to_additive AddGroupSeminorm.smul_apply]
theorem smul_apply (r : R) (p : GroupSeminorm E) (x : E) : (r • p) x = r • p x :=
rfl
#align group_seminorm.smul_apply GroupSeminorm.smul_apply
#align add_group_seminorm.smul_apply AddGroupSeminorm.smul_apply
+-/
+#print GroupSeminorm.smul_sup /-
@[to_additive AddGroupSeminorm.smul_sup]
theorem smul_sup (r : R) (p q : GroupSeminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
have real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y) := fun x y => by
@@ -672,6 +927,7 @@ theorem smul_sup (r : R) (p q : GroupSeminorm E) : r • (p ⊔ q) = r • p ⊔
ext fun x => real.smul_max _ _
#align group_seminorm.smul_sup GroupSeminorm.smul_sup
#align add_group_seminorm.smul_sup AddGroupSeminorm.smul_sup
+-/
end GroupSeminorm
@@ -690,6 +946,12 @@ instance [DecidableEq E] : One (NonarchAddGroupSeminorm E) :=
split_ifs <;> norm_num
neg' := fun x => by simp_rw [neg_eq_zero] }⟩
+/- warning: nonarch_add_group_seminorm.apply_one -> NonarchAddGroupSeminorm.apply_one is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_5 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 1 (One.one.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_5 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_5 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_5 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (OfNat.ofNat.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) (NonarchAddGroupSeminorm.instOneNonarchAddGroupSeminorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_5 a b)))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_5 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) (OfNat.ofNat.{0} Real 1 (One.toOfNat1.{0} Real Real.instOneReal)))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.apply_one NonarchAddGroupSeminorm.apply_oneₓ'. -/
@[simp]
theorem apply_one [DecidableEq E] (x : E) :
(1 : NonarchAddGroupSeminorm E) x = if x = 0 then 0 else 1 :=
@@ -714,22 +976,36 @@ instance [SMul R' ℝ] [SMul R' ℝ≥0] [IsScalarTower R' ℝ≥0 ℝ] [SMul R
IsScalarTower R R' (NonarchAddGroupSeminorm E) :=
⟨fun r a p => ext fun x => smul_assoc r a <| p x⟩
+/- warning: nonarch_add_group_seminorm.coe_smul -> NonarchAddGroupSeminorm.coe_smul is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (SMulZeroClass.toHasSmul.{0, 0} NNReal Real (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (SMulWithZero.toSmulZeroClass.{0, 0} NNReal Real (MulZeroClass.toHasZero.{0} NNReal (MulZeroOneClass.toMulZeroClass.{0} NNReal (MonoidWithZero.toMulZeroOneClass.{0} NNReal (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring)))) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (MulActionWithZero.toSMulWithZero.{0, 0} NNReal Real (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (Module.toMulActionWithZero.{0, 0} NNReal Real NNReal.semiring (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (NNReal.module.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (Semiring.toModule.{0} Real Real.semiring)))))) _inst_2] (r : R) (p : NonarchAddGroupSeminorm.{u2} E _inst_1), Eq.{succ u2} (E -> Real) (coeFn.{succ u2, succ u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u2} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u2} E _inst_1) (SMul.smul.{u1, u2} R (NonarchAddGroupSeminorm.{u2} E _inst_1) (NonarchAddGroupSeminorm.hasSmul.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4) r p)) (SMul.smul.{u1, u2} R (E -> Real) (Function.hasSMul.{u2, u1, 0} E R Real _inst_2) r (coeFn.{succ u2, succ u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u2} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u2} E _inst_1) p))
+but is expected to have type
+ forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (Algebra.toSMul.{0, 0} NNReal Real instNNRealCommSemiring Real.semiring (NNReal.instAlgebraNNRealInstNNRealCommSemiring.{0} Real Real.semiring (Algebra.id.{0} Real Real.instCommSemiringReal))) _inst_2] (r : R) (p : NonarchAddGroupSeminorm.{u2} E _inst_1), Eq.{succ u2} (E -> Real) (FunLike.coe.{succ u2, succ u2, 1} (NonarchAddGroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u2, 0} (NonarchAddGroupSeminorm.{u2} E _inst_1) E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u2} E _inst_1))) (HSMul.hSMul.{u1, u2, u2} R (NonarchAddGroupSeminorm.{u2} E _inst_1) (NonarchAddGroupSeminorm.{u2} E _inst_1) (instHSMul.{u1, u2} R (NonarchAddGroupSeminorm.{u2} E _inst_1) (NonarchAddGroupSeminorm.instSMulNonarchAddGroupSeminorm.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4)) r p)) (HSMul.hSMul.{u1, u2, u2} R (E -> Real) (E -> Real) (instHSMul.{u1, u2} R (E -> Real) (Pi.instSMul.{u2, 0, u1} E R (fun (a : E) => Real) (fun (i : E) => _inst_2))) r (FunLike.coe.{succ u2, succ u2, 1} (NonarchAddGroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u2, 0} (NonarchAddGroupSeminorm.{u2} E _inst_1) E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u2} E _inst_1))) p))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.coe_smul NonarchAddGroupSeminorm.coe_smulₓ'. -/
@[simp, norm_cast]
theorem coe_smul (r : R) (p : NonarchAddGroupSeminorm E) : ⇑(r • p) = r • p :=
rfl
#align nonarch_add_group_seminorm.coe_smul NonarchAddGroupSeminorm.coe_smul
+/- warning: nonarch_add_group_seminorm.smul_apply -> NonarchAddGroupSeminorm.smul_apply is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (SMulZeroClass.toHasSmul.{0, 0} NNReal Real (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (SMulWithZero.toSmulZeroClass.{0, 0} NNReal Real (MulZeroClass.toHasZero.{0} NNReal (MulZeroOneClass.toMulZeroClass.{0} NNReal (MonoidWithZero.toMulZeroOneClass.{0} NNReal (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring)))) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (MulActionWithZero.toSMulWithZero.{0, 0} NNReal Real (Semiring.toMonoidWithZero.{0} NNReal NNReal.semiring) (AddZeroClass.toHasZero.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring)))))) (Module.toMulActionWithZero.{0, 0} NNReal Real NNReal.semiring (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (NNReal.module.{0} Real (NonUnitalNonAssocSemiring.toAddCommMonoid.{0} Real (NonAssocSemiring.toNonUnitalNonAssocSemiring.{0} Real (Semiring.toNonAssocSemiring.{0} Real Real.semiring))) (Semiring.toModule.{0} Real Real.semiring)))))) _inst_2] (r : R) (p : NonarchAddGroupSeminorm.{u2} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u2, succ u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u2} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u2} E _inst_1) (SMul.smul.{u1, u2} R (NonarchAddGroupSeminorm.{u2} E _inst_1) (NonarchAddGroupSeminorm.hasSmul.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4) r p) x) (SMul.smul.{u1, 0} R Real _inst_2 r (coeFn.{succ u2, succ u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) (fun (_x : NonarchAddGroupSeminorm.{u2} E _inst_1) => E -> Real) (NonarchAddGroupSeminorm.hasCoeToFun.{u2} E _inst_1) p x))
+but is expected to have type
+ forall {R : Type.{u1}} {E : Type.{u2}} [_inst_1 : AddGroup.{u2} E] [_inst_2 : SMul.{u1, 0} R Real] [_inst_3 : SMul.{u1, 0} R NNReal] [_inst_4 : IsScalarTower.{u1, 0, 0} R NNReal Real _inst_3 (Algebra.toSMul.{0, 0} NNReal Real instNNRealCommSemiring Real.semiring (NNReal.instAlgebraNNRealInstNNRealCommSemiring.{0} Real Real.semiring (Algebra.id.{0} Real Real.instCommSemiringReal))) _inst_2] (r : R) (p : NonarchAddGroupSeminorm.{u2} E _inst_1) (x : E), Eq.{1} Real (FunLike.coe.{succ u2, succ u2, 1} (NonarchAddGroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u2, 0} (NonarchAddGroupSeminorm.{u2} E _inst_1) E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u2} E _inst_1))) (HSMul.hSMul.{u1, u2, u2} R (NonarchAddGroupSeminorm.{u2} E _inst_1) (NonarchAddGroupSeminorm.{u2} E _inst_1) (instHSMul.{u1, u2} R (NonarchAddGroupSeminorm.{u2} E _inst_1) (NonarchAddGroupSeminorm.instSMulNonarchAddGroupSeminorm.{u1, u2} R E _inst_1 _inst_2 _inst_3 _inst_4)) r p) x) (HSMul.hSMul.{u1, 0, 0} R Real Real (instHSMul.{u1, 0} R Real _inst_2) r (FunLike.coe.{succ u2, succ u2, 1} (NonarchAddGroupSeminorm.{u2} E _inst_1) E (fun (_x : E) => Real) (NonarchimedeanHomClass.toFunLike.{u2, u2, 0} (NonarchAddGroupSeminorm.{u2} E _inst_1) E Real (AddZeroClass.toAdd.{u2} E (AddMonoid.toAddZeroClass.{u2} E (SubNegMonoid.toAddMonoid.{u2} E (AddGroup.toSubNegMonoid.{u2} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u2, u2} (NonarchAddGroupSeminorm.{u2} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u2} E _inst_1))) p x))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_seminorm.smul_apply NonarchAddGroupSeminorm.smul_applyₓ'. -/
@[simp]
theorem smul_apply (r : R) (p : NonarchAddGroupSeminorm E) (x : E) : (r • p) x = r • p x :=
rfl
#align nonarch_add_group_seminorm.smul_apply NonarchAddGroupSeminorm.smul_apply
+#print NonarchAddGroupSeminorm.smul_sup /-
theorem smul_sup (r : R) (p q : NonarchAddGroupSeminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
have real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y) := fun x y => by
simpa only [← smul_eq_mul, ← NNReal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)] using
mul_max_of_nonneg x y (r • 1 : ℝ≥0).Prop
ext fun x => real.smul_max _ _
#align nonarch_add_group_seminorm.smul_sup NonarchAddGroupSeminorm.smul_sup
+-/
end NonarchAddGroupSeminorm
@@ -742,6 +1018,7 @@ section Group
variable [Group E] [Group F] [Group G] {p q : GroupNorm E}
+#print GroupNorm.groupNormClass /-
@[to_additive]
instance groupNormClass : GroupNormClass (GroupNorm E) E ℝ
where
@@ -753,6 +1030,7 @@ instance groupNormClass : GroupNormClass (GroupNorm E) E ℝ
eq_one_of_map_eq_zero f := f.eq_one_of_map_eq_zero'
#align group_norm.group_norm_class GroupNorm.groupNormClass
#align add_group_norm.add_group_norm_class AddGroupNorm.addGroupNormClass
+-/
/-- Helper instance for when there's too many metavariables to apply `fun_like.has_coe_to_fun`
directly. -/
@@ -761,12 +1039,24 @@ directly. -/
instance : CoeFun (GroupNorm E) fun _ => E → ℝ :=
FunLike.hasCoeToFun
+/- warning: group_norm.to_fun_eq_coe -> GroupNorm.toGroupSeminorm_eq_coe is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (GroupNorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (GroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.947 : E) => Real) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupSeminorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupSeminorm.groupSeminormClass.{u1} E _inst_1))) (GroupNorm.toGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p)
+Case conversion may be inaccurate. Consider using '#align group_norm.to_fun_eq_coe GroupNorm.toGroupSeminorm_eq_coeₓ'. -/
@[simp, to_additive]
-theorem toFun_eq_coe : p.toFun = p :=
+theorem toGroupSeminorm_eq_coe : p.toFun = p :=
rfl
-#align group_norm.to_fun_eq_coe GroupNorm.toFun_eq_coe
-#align add_group_norm.to_fun_eq_coe AddGroupNorm.toFun_eq_coe
-
+#align group_norm.to_fun_eq_coe GroupNorm.toGroupSeminorm_eq_coe
+#align add_group_norm.to_fun_eq_coe AddGroupNorm.toAddGroupSeminorm_eq_coe
+
+/- warning: group_norm.ext -> GroupNorm.ext is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (GroupNorm.{u1} E _inst_1) p q)
+Case conversion may be inaccurate. Consider using '#align group_norm.ext GroupNorm.extₓ'. -/
@[ext, to_additive]
theorem ext : (∀ x, p x = q x) → p = q :=
FunLike.ext p q
@@ -777,24 +1067,48 @@ theorem ext : (∀ x, p x = q x) → p = q :=
instance : PartialOrder (GroupNorm E) :=
PartialOrder.lift _ FunLike.coe_injective
+/- warning: group_norm.le_def -> GroupNorm.le_def is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+Case conversion may be inaccurate. Consider using '#align group_norm.le_def GroupNorm.le_defₓ'. -/
@[to_additive]
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
#align group_norm.le_def GroupNorm.le_def
#align add_group_norm.le_def AddGroupNorm.le_def
+/- warning: group_norm.lt_def -> GroupNorm.lt_def is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+Case conversion may be inaccurate. Consider using '#align group_norm.lt_def GroupNorm.lt_defₓ'. -/
@[to_additive]
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
#align group_norm.lt_def GroupNorm.lt_def
#align add_group_norm.lt_def AddGroupNorm.lt_def
+/- warning: group_norm.coe_le_coe -> GroupNorm.coe_le_coe is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
+Case conversion may be inaccurate. Consider using '#align group_norm.coe_le_coe GroupNorm.coe_le_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
Iff.rfl
#align group_norm.coe_le_coe GroupNorm.coe_le_coe
#align add_group_norm.coe_le_coe AddGroupNorm.coe_le_coe
+/- warning: group_norm.coe_lt_coe -> GroupNorm.coe_lt_coe is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.partialOrder.{u1} E _inst_1))) p q)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] {p : GroupNorm.{u1} E _inst_1} {q : GroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (GroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (GroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instPartialOrderGroupNorm.{u1} E _inst_1))) p q)
+Case conversion may be inaccurate. Consider using '#align group_norm.coe_lt_coe GroupNorm.coe_lt_coeₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
Iff.rfl
@@ -810,12 +1124,24 @@ instance : Add (GroupNorm E) :=
eq_one_of_map_eq_zero' := fun x hx =>
of_not_not fun h => hx.not_gt <| add_pos (map_pos_of_ne_one p h) (map_pos_of_ne_one q h) }⟩
+/- warning: group_norm.coe_add -> GroupNorm.coe_add is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasAdd.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (E -> Real) (E -> Real) (E -> Real) (instHAdd.{u1} (E -> Real) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasAdd))) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q)) (HAdd.hAdd.{u1, u1, u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (instHAdd.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (Pi.instAdd.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (fun (i : E) => Real.instAddReal))) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+Case conversion may be inaccurate. Consider using '#align group_norm.coe_add GroupNorm.coe_addₓ'. -/
@[simp, to_additive]
theorem coe_add : ⇑(p + q) = p + q :=
rfl
#align group_norm.coe_add GroupNorm.coe_add
#align add_group_norm.coe_add AddGroupNorm.coe_add
+/- warning: group_norm.add_apply -> GroupNorm.add_apply is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasAdd.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (HAdd.hAdd.{u1, u1, u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (GroupNorm.{u1} E _inst_1) (instHAdd.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instAddGroupNorm.{u1} E _inst_1)) p q) x) (HAdd.hAdd.{0, 0, 0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (instHAdd.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) Real.instAddReal) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
+Case conversion may be inaccurate. Consider using '#align group_norm.add_apply GroupNorm.add_applyₓ'. -/
@[simp, to_additive]
theorem add_apply (x : E) : (p + q) x = p x + q x :=
rfl
@@ -830,12 +1156,24 @@ instance : Sup (GroupNorm E) :=
eq_one_of_map_eq_zero' := fun x hx =>
of_not_not fun h => hx.not_gt <| lt_sup_iff.2 <| Or.inl <| map_pos_of_ne_one p h }⟩
+/- warning: group_norm.coe_sup -> GroupNorm.coe_sup is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q))
+Case conversion may be inaccurate. Consider using '#align group_norm.coe_sup GroupNorm.coe_supₓ'. -/
@[simp, to_additive, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
rfl
#align group_norm.coe_sup GroupNorm.coe_sup
#align add_group_norm.coe_sup AddGroupNorm.coe_sup
+/- warning: group_norm.sup_apply -> GroupNorm.sup_apply is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] (p : GroupNorm.{u1} E _inst_1) (q : GroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.instSupGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) q x))
+Case conversion may be inaccurate. Consider using '#align group_norm.sup_apply GroupNorm.sup_applyₓ'. -/
@[simp, to_additive]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
rfl
@@ -858,6 +1196,12 @@ instance : One (AddGroupNorm E) :=
⟨{ (1 : AddGroupSeminorm E) with
eq_zero_of_map_eq_zero' := fun x => zero_ne_one.ite_eq_left_iff.1 }⟩
+/- warning: add_group_norm.apply_one -> AddGroupNorm.apply_one is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (AddGroupNorm.{u1} E _inst_1) (fun (_x : AddGroupNorm.{u1} E _inst_1) => E -> Real) (AddGroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (AddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (SubadditiveHomClass.toFunLike.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (AddGroupSeminormClass.toSubadditiveHomClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNormClass.toAddGroupSeminormClass.{u1, u1, 0} (AddGroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (AddGroupNorm.addGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (AddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (AddGroupNorm.{u1} E _inst_1) (AddGroupNorm.instOneAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) Real.instOneReal)))
+Case conversion may be inaccurate. Consider using '#align add_group_norm.apply_one AddGroupNorm.apply_oneₓ'. -/
@[simp]
theorem apply_one (x : E) : (1 : AddGroupNorm E) x = if x = 0 then 0 else 1 :=
rfl
@@ -876,6 +1220,12 @@ variable [Group E] [DecidableEq E]
instance : One (GroupNorm E) :=
⟨{ (1 : GroupSeminorm E) with eq_one_of_map_eq_zero' := fun x => zero_ne_one.ite_eq_left_iff.1 }⟩
+/- warning: group_norm.apply_one -> GroupNorm.apply_one is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (GroupNorm.{u1} E _inst_1) (fun (_x : GroupNorm.{u1} E _inst_1) => E -> Real) (GroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (OfNat.mk.{u1} E 1 (One.one.{u1} E (MulOneClass.toHasOne.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : Group.{u1} E] [_inst_2 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (GroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) _x) (MulLEAddHomClass.toFunLike.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real (MulOneClass.toMul.{u1} E (Monoid.toMulOneClass.{u1} E (DivInvMonoid.toMonoid.{u1} E (Group.toDivInvMonoid.{u1} E _inst_1)))) (AddZeroClass.toAdd.{0} Real (AddMonoid.toAddZeroClass.{0} Real (AddCommMonoid.toAddMonoid.{0} Real (OrderedAddCommMonoid.toAddCommMonoid.{0} Real Real.orderedAddCommMonoid)))) (Preorder.toLE.{0} Real (PartialOrder.toPreorder.{0} Real (OrderedAddCommMonoid.toPartialOrder.{0} Real Real.orderedAddCommMonoid))) (GroupSeminormClass.toMulLEAddHomClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNormClass.toGroupSeminormClass.{u1, u1, 0} (GroupNorm.{u1} E _inst_1) E Real _inst_1 Real.orderedAddCommMonoid (GroupNorm.groupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (GroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (GroupNorm.{u1} E _inst_1) (GroupNorm.toOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_2 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (_inst_2 x (OfNat.ofNat.{u1} E 1 (One.toOfNat1.{u1} E (InvOneClass.toOne.{u1} E (DivInvOneMonoid.toInvOneClass.{u1} E (DivisionMonoid.toDivInvOneMonoid.{u1} E (Group.toDivisionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.6673 : E) => Real) x) Real.instOneReal)))
+Case conversion may be inaccurate. Consider using '#align group_norm.apply_one GroupNorm.apply_oneₓ'. -/
@[simp, to_additive AddGroupNorm.apply_one]
theorem apply_one (x : E) : (1 : GroupNorm E) x = if x = 1 then 0 else 1 :=
rfl
@@ -894,6 +1244,7 @@ section AddGroup
variable [AddGroup E] [AddGroup F] {p q : NonarchAddGroupNorm E}
+#print NonarchAddGroupNorm.nonarchAddGroupNormClass /-
instance nonarchAddGroupNormClass : NonarchAddGroupNormClass (NonarchAddGroupNorm E) E
where
coe f := f.toFun
@@ -903,16 +1254,29 @@ instance nonarchAddGroupNormClass : NonarchAddGroupNormClass (NonarchAddGroupNor
map_neg_eq_map' f := f.neg'
eq_zero_of_map_eq_zero f := f.eq_zero_of_map_eq_zero'
#align nonarch_add_group_norm.nonarch_add_group_norm_class NonarchAddGroupNorm.nonarchAddGroupNormClass
+-/
/-- Helper instance for when there's too many metavariables to apply `fun_like.has_coe_to_fun`. -/
noncomputable instance : CoeFun (NonarchAddGroupNorm E) fun _ => E → ℝ :=
FunLike.hasCoeToFun
+/- warning: nonarch_add_group_norm.to_fun_eq_coe -> NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coe is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (NonarchAddGroupNorm.toFun.{u1} E _inst_1 p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1}, Eq.{succ u1} (E -> Real) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.4013 : E) => Real) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupSeminorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupSeminorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass.{u1} E _inst_1))) (NonarchAddGroupNorm.toNonarchAddGroupSeminorm.{u1} E _inst_1 p)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p)
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.to_fun_eq_coe NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coeₓ'. -/
@[simp]
-theorem toFun_eq_coe : p.toFun = p :=
+theorem toNonarchAddGroupSeminorm_eq_coe : p.toFun = p :=
rfl
-#align nonarch_add_group_norm.to_fun_eq_coe NonarchAddGroupNorm.toFun_eq_coe
-
+#align nonarch_add_group_norm.to_fun_eq_coe NonarchAddGroupNorm.toNonarchAddGroupSeminorm_eq_coe
+
+/- warning: nonarch_add_group_norm.ext -> NonarchAddGroupNorm.ext is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, (forall (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x)) -> (Eq.{succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) p q)
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.ext NonarchAddGroupNorm.extₓ'. -/
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
FunLike.ext p q
@@ -921,19 +1285,43 @@ theorem ext : (∀ x, p x = q x) → p = q :=
noncomputable instance : PartialOrder (NonarchAddGroupNorm E) :=
PartialOrder.lift _ FunLike.coe_injective
+/- warning: nonarch_add_group_norm.le_def -> NonarchAddGroupNorm.le_def is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.le_def NonarchAddGroupNorm.le_defₓ'. -/
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
#align nonarch_add_group_norm.le_def NonarchAddGroupNorm.le_def
+/- warning: nonarch_add_group_norm.lt_def -> NonarchAddGroupNorm.lt_def is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q) (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q) (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.lt_def NonarchAddGroupNorm.lt_defₓ'. -/
theorem lt_def : p < q ↔ (p : E → ℝ) < q :=
Iff.rfl
#align nonarch_add_group_norm.lt_def NonarchAddGroupNorm.lt_def
+/- warning: nonarch_add_group_norm.coe_le_coe -> NonarchAddGroupNorm.coe_le_coe is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasLe)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LE.le.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) a) (Pi.hasLe.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (fun (i : E) => Real.instLEReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LE.le.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLE.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_le_coe NonarchAddGroupNorm.coe_le_coeₓ'. -/
@[simp, norm_cast]
theorem coe_le_coe : (p : E → ℝ) ≤ q ↔ p ≤ q :=
Iff.rfl
#align nonarch_add_group_norm.coe_le_coe NonarchAddGroupNorm.coe_le_coe
+/- warning: nonarch_add_group_norm.coe_lt_coe -> NonarchAddGroupNorm.coe_lt_coe is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Preorder.toLT.{u1} ((fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) p) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.preorder))) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.partialOrder.{u1} E _inst_1))) p q)
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] {p : NonarchAddGroupNorm.{u1} E _inst_1} {q : NonarchAddGroupNorm.{u1} E _inst_1}, Iff (LT.lt.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) a) (Preorder.toLT.{u1} (forall (a : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) a) (Pi.preorder.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (fun (i : E) => Real.instPreorderReal))) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q)) (LT.lt.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (Preorder.toLT.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (PartialOrder.toPreorder.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm.{u1} E _inst_1))) p q)
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_lt_coe NonarchAddGroupNorm.coe_lt_coeₓ'. -/
@[simp, norm_cast]
theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
Iff.rfl
@@ -947,11 +1335,23 @@ instance : Sup (NonarchAddGroupNorm E) :=
eq_zero_of_map_eq_zero' := fun x hx =>
of_not_not fun h => hx.not_gt <| lt_sup_iff.2 <| Or.inl <| map_pos_of_ne_zero p h }⟩
+/- warning: nonarch_add_group_norm.coe_sup -> NonarchAddGroupNorm.coe_sup is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (E -> Real) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasSup.{u1} E _inst_1) p q)) (Sup.sup.{u1} (E -> Real) (Pi.hasSup.{u1, 0} E (fun (ᾰ : E) => Real) (fun (i : E) => Real.hasSup)) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1), Eq.{succ u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q)) (Sup.sup.{u1} (forall (ᾰ : E), (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (Pi.instSupForAll.{u1, 0} E (fun (ᾰ : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) ᾰ) (fun (i : E) => Real.instSupReal)) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.coe_sup NonarchAddGroupNorm.coe_supₓ'. -/
@[simp, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = p ⊔ q :=
rfl
#align nonarch_add_group_norm.coe_sup NonarchAddGroupNorm.coe_sup
+/- warning: nonarch_add_group_norm.sup_apply -> NonarchAddGroupNorm.sup_apply is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasSup.{u1} E _inst_1) p q) x) (Sup.sup.{0} Real Real.hasSup (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) p x) (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) q x))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] (p : NonarchAddGroupNorm.{u1} E _inst_1) (q : NonarchAddGroupNorm.{u1} E _inst_1) (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (Sup.sup.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instSupNonarchAddGroupNorm.{u1} E _inst_1) p q) x) (Sup.sup.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) Real.instSupReal (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) p x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) q x))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.sup_apply NonarchAddGroupNorm.sup_applyₓ'. -/
@[simp]
theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
rfl
@@ -964,6 +1364,12 @@ instance [DecidableEq E] : One (NonarchAddGroupNorm E) :=
⟨{ (1 : NonarchAddGroupSeminorm E) with
eq_zero_of_map_eq_zero' := fun x => zero_ne_one.ite_eq_left_iff.1 }⟩
+/- warning: nonarch_add_group_norm.apply_one -> NonarchAddGroupNorm.apply_one is a dubious translation:
+lean 3 declaration is
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} Real (coeFn.{succ u1, succ u1} (NonarchAddGroupNorm.{u1} E _inst_1) (fun (_x : NonarchAddGroupNorm.{u1} E _inst_1) => E -> Real) (NonarchAddGroupNorm.hasCoeToFun.{u1} E _inst_1) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (OfNat.mk.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.one.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.hasOne.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b))))) x) (ite.{1} Real (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (OfNat.mk.{u1} E 0 (Zero.zero.{u1} E (AddZeroClass.toHasZero.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))))))) (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))
+but is expected to have type
+ forall {E : Type.{u1}} [_inst_1 : AddGroup.{u1} E] [_inst_3 : DecidableEq.{succ u1} E] (x : E), Eq.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) (FunLike.coe.{succ u1, succ u1, 1} (NonarchAddGroupNorm.{u1} E _inst_1) E (fun (_x : E) => (fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) _x) (NonarchimedeanHomClass.toFunLike.{u1, u1, 0} (NonarchAddGroupNorm.{u1} E _inst_1) E Real (AddZeroClass.toAdd.{u1} E (AddMonoid.toAddZeroClass.{u1} E (SubNegMonoid.toAddMonoid.{u1} E (AddGroup.toSubNegMonoid.{u1} E _inst_1)))) Real.linearOrder (NonarchAddGroupSeminormClass.toNonarchimedeanHomClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNormClass.toNonarchAddGroupSeminormClass.{u1, u1} (NonarchAddGroupNorm.{u1} E _inst_1) E _inst_1 (NonarchAddGroupNorm.nonarchAddGroupNormClass.{u1} E _inst_1)))) (OfNat.ofNat.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) 1 (One.toOfNat1.{u1} (NonarchAddGroupNorm.{u1} E _inst_1) (NonarchAddGroupNorm.instOneNonarchAddGroupNorm.{u1} E _inst_1 (fun (a : E) (b : E) => _inst_3 a b)))) x) (ite.{1} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) (Eq.{succ u1} E x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (_inst_3 x (OfNat.ofNat.{u1} E 0 (Zero.toOfNat0.{u1} E (NegZeroClass.toZero.{u1} E (SubNegZeroMonoid.toNegZeroClass.{u1} E (SubtractionMonoid.toSubNegZeroMonoid.{u1} E (AddGroup.toSubtractionMonoid.{u1} E _inst_1))))))) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) 0 (Zero.toOfNat0.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) Real.instZeroReal)) (OfNat.ofNat.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) 1 (One.toOfNat1.{0} ((fun (a._@.Mathlib.Analysis.Normed.Group.Seminorm._hyg.7808 : E) => Real) x) Real.instOneReal)))
+Case conversion may be inaccurate. Consider using '#align nonarch_add_group_norm.apply_one NonarchAddGroupNorm.apply_oneₓ'. -/
@[simp]
theorem apply_one [DecidableEq E] (x : E) :
(1 : NonarchAddGroupNorm E) x = if x = 0 then 0 else 1 :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/9da1b3534b65d9661eb8f42443598a92bbb49211
@@ -291,7 +291,7 @@ theorem add_apply (x : E) : (p + q) x = p x + q x :=
-- TODO: define `has_Sup` too, from the skeleton at
-- https://github.com/leanprover-community/mathlib/pull/11329#issuecomment-1008915345
@[to_additive]
-instance : HasSup (GroupSeminorm E) :=
+instance : Sup (GroupSeminorm E) :=
⟨fun p q =>
{ toFun := p ⊔ q
map_one' := by
@@ -401,7 +401,7 @@ theorem mul_bddBelow_range_add {p q : GroupSeminorm E} {x : E} :
#align add_group_seminorm.add_bdd_below_range_add AddGroupSeminorm.add_bddBelow_range_add
@[to_additive]
-noncomputable instance : HasInf (GroupSeminorm E) :=
+noncomputable instance : Inf (GroupSeminorm E) :=
⟨fun p q =>
{ toFun := fun x => ⨅ y, p y + q (x / y)
map_one' :=
@@ -570,7 +570,7 @@ instance : Inhabited (NonarchAddGroupSeminorm E) :=
-- TODO: define `has_Sup` too, from the skeleton at
-- https://github.com/leanprover-community/mathlib/pull/11329#issuecomment-1008915345
-instance : HasSup (NonarchAddGroupSeminorm E) :=
+instance : Sup (NonarchAddGroupSeminorm E) :=
⟨fun p q =>
{ toFun := p ⊔ q
map_zero' := by rw [Pi.sup_apply, ← map_zero p, sup_eq_left, map_zero p, map_zero q]
@@ -824,7 +824,7 @@ theorem add_apply (x : E) : (p + q) x = p x + q x :=
-- TODO: define `has_Sup`
@[to_additive]
-instance : HasSup (GroupNorm E) :=
+instance : Sup (GroupNorm E) :=
⟨fun p q =>
{ p.toGroupSeminorm ⊔ q.toGroupSeminorm with
eq_one_of_map_eq_zero' := fun x hx =>
@@ -941,7 +941,7 @@ theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
variable (p q) (f : F →+ E)
-instance : HasSup (NonarchAddGroupNorm E) :=
+instance : Sup (NonarchAddGroupNorm E) :=
⟨fun p q =>
{ p.toNonarchAddGroupSeminorm ⊔ q.toNonarchAddGroupSeminorm with
eq_zero_of_map_eq_zero' := fun x hx =>
mathlib commit https://github.com/leanprover-community/mathlib/commit/eb0cb4511aaef0da2462207b67358a0e1fe1e2ee
@@ -193,7 +193,7 @@ instance groupSeminormClass : GroupSeminormClass (GroupSeminorm E) E ℝ
map_mul_le_add f := f.mul_le'
map_inv_eq_map f := f.inv'
#align group_seminorm.group_seminorm_class GroupSeminorm.groupSeminormClass
-#align add_group_seminorm.add_group_seminorm_class AddGroupSeminorm.add_group_seminorm_class
+#align add_group_seminorm.add_group_seminorm_class AddGroupSeminorm.addGroupSeminormClass
/-- Helper instance for when there's too many metavariables to apply `fun_like.has_coe_to_fun`. -/
@[to_additive
@@ -752,7 +752,7 @@ instance groupNormClass : GroupNormClass (GroupNorm E) E ℝ
map_inv_eq_map f := f.inv'
eq_one_of_map_eq_zero f := f.eq_one_of_map_eq_zero'
#align group_norm.group_norm_class GroupNorm.groupNormClass
-#align add_group_norm.add_group_norm_class AddGroupNorm.add_group_norm_class
+#align add_group_norm.add_group_norm_class AddGroupNorm.addGroupNormClass
/-- Helper instance for when there's too many metavariables to apply `fun_like.has_coe_to_fun`
directly. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
This is a very large PR, but it has been reviewed piecemeal already in PRs to the bump/v4.7.0
branch as we update to intermediate nightlies.
Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Kyle Miller <kmill31415@gmail.com> Co-authored-by: damiano <adomani@gmail.com>
@@ -693,7 +693,7 @@ instance [DecidableEq E] : One (NonarchAddGroupSeminorm E) :=
· simp_rw [if_pos hx, hx, zero_add]
exact le_max_of_le_right (le_refl _)
· simp_rw [if_neg hx]
- split_ifs <;> norm_num
+ split_ifs <;> simp
neg' := fun x => by simp_rw [neg_eq_zero] }⟩
@[simp]
Homogenises porting notes via capitalisation and addition of whitespace.
It makes the following changes:
@@ -55,7 +55,7 @@ variable {ι R R' E F G : Type*}
/-- A seminorm on an additive group `G` is a function `f : G → ℝ` that preserves zero, is
subadditive and such that `f (-x) = f x` for all `x`. -/
structure AddGroupSeminorm (G : Type*) [AddGroup G] where
- -- porting note: can't extend `ZeroHom G ℝ` because otherwise `to_additive` won't work since
+ -- Porting note: can't extend `ZeroHom G ℝ` because otherwise `to_additive` won't work since
-- we aren't using old structures
/-- The bare function of an `AddGroupSeminorm`. -/
protected toFun : G → ℝ
@@ -411,7 +411,7 @@ noncomputable instance : Inf (GroupSeminorm E) :=
{ toFun := fun x => ⨅ y, p y + q (x / y)
map_one' :=
ciInf_eq_of_forall_ge_of_forall_gt_exists_lt
- -- porting note: replace `add_nonneg` with `positivity` once we have the extension
+ -- Porting note: replace `add_nonneg` with `positivity` once we have the extension
(fun x => add_nonneg (apply_nonneg _ _) (apply_nonneg _ _)) fun r hr =>
⟨1, by rwa [div_one, map_one_eq_zero p, map_one_eq_zero q, add_zero]⟩
mul_le' := fun x y =>
@@ -525,7 +525,7 @@ instance nonarchAddGroupSeminormClass : NonarchAddGroupSeminormClass (NonarchAdd
instance : CoeFun (NonarchAddGroupSeminorm E) fun _ => E → ℝ :=
⟨DFunLike.coe⟩
--- porting note: `simpNF` said the left hand side simplified to this
+-- Porting note: `simpNF` said the left hand side simplified to this
@[simp]
theorem toZeroHom_eq_coe : ⇑p.toZeroHom = p := by
rfl
@@ -771,7 +771,7 @@ directly. -/
instance : CoeFun (GroupNorm E) fun _ => E → ℝ :=
DFunLike.hasCoeToFun
--- porting note: `simpNF` told me the left-hand side simplified to this
+-- Porting note: `simpNF` told me the left-hand side simplified to this
@[to_additive (attr := simp)]
theorem toGroupSeminorm_eq_coe : ⇑p.toGroupSeminorm = p :=
rfl
@@ -925,7 +925,7 @@ instance nonarchAddGroupNormClass : NonarchAddGroupNormClass (NonarchAddGroupNor
noncomputable instance : CoeFun (NonarchAddGroupNorm E) fun _ => E → ℝ :=
DFunLike.hasCoeToFun
--- porting note: `simpNF` told me the left-hand side simplified to this
+-- Porting note: `simpNF` told me the left-hand side simplified to this
@[simp]
theorem toNonarchAddGroupSeminorm_eq_coe : ⇑p.toNonarchAddGroupSeminorm = p :=
rfl
@@ -412,7 +412,7 @@ noncomputable instance : Inf (GroupSeminorm E) :=
map_one' :=
ciInf_eq_of_forall_ge_of_forall_gt_exists_lt
-- porting note: replace `add_nonneg` with `positivity` once we have the extension
- (fun x => add_nonneg (map_nonneg _ _) (map_nonneg _ _)) fun r hr =>
+ (fun x => add_nonneg (apply_nonneg _ _) (apply_nonneg _ _)) fun r hr =>
⟨1, by rwa [div_one, map_one_eq_zero p, map_one_eq_zero q, add_zero]⟩
mul_le' := fun x y =>
le_ciInf_add_ciInf fun u v => by
The FunLike hierarchy is very big and gets scanned through each time we need a coercion (via the CoeFun
instance). It looks like unbundled inheritance suits Lean 4 better here. The only class that still extends FunLike
is EquivLike
, since that has a custom coe_injective'
field that is easier to implement. All other classes should take FunLike
or EquivLike
as a parameter.
Previously, morphism classes would be Type
-valued and extend FunLike
:
/-- `MyHomClass F A B` states that `F` is a type of `MyClass.op`-preserving morphisms.
You should extend this class when you extend `MyHom`. -/
class MyHomClass (F : Type*) (A B : outParam <| Type*) [MyClass A] [MyClass B]
extends FunLike F A B :=
(map_op : ∀ (f : F) (x y : A), f (MyClass.op x y) = MyClass.op (f x) (f y))
After this PR, they should be Prop
-valued and take FunLike
as a parameter:
/-- `MyHomClass F A B` states that `F` is a type of `MyClass.op`-preserving morphisms.
You should extend this class when you extend `MyHom`. -/
class MyHomClass (F : Type*) (A B : outParam <| Type*) [MyClass A] [MyClass B]
[FunLike F A B] : Prop :=
(map_op : ∀ (f : F) (x y : A), f (MyClass.op x y) = MyClass.op (f x) (f y))
(Note that A B
stay marked as outParam
even though they are not purely required to be so due to the FunLike
parameter already filling them in. This is required to see through type synonyms, which is important in the category theory library. Also, I think keeping them as outParam
is slightly faster.)
Similarly, MyEquivClass
should take EquivLike
as a parameter.
As a result, every mention of [MyHomClass F A B]
should become [FunLike F A B] [MyHomClass F A B]
.
While overall this gives some great speedups, there are some cases that are noticeably slower. In particular, a failing application of a lemma such as map_mul
is more expensive. This is due to suboptimal processing of arguments. For example:
variable [FunLike F M N] [Mul M] [Mul N] (f : F) (x : M) (y : M)
theorem map_mul [MulHomClass F M N] : f (x * y) = f x * f y
example [AddHomClass F A B] : f (x * y) = f x * f y := map_mul f _ _
Before this PR, applying map_mul f
gives the goals [Mul ?M] [Mul ?N] [MulHomClass F ?M ?N]
. Since M
and N
are out_param
s, [MulHomClass F ?M ?N]
is synthesized first, supplies values for ?M
and ?N
and then the Mul M
and Mul N
instances can be found.
After this PR, the goals become [FunLike F ?M ?N] [Mul ?M] [Mul ?N] [MulHomClass F ?M ?N]
. Now [FunLike F ?M ?N]
is synthesized first, supplies values for ?M
and ?N
and then the Mul M
and Mul N
instances can be found, before trying MulHomClass F M N
which fails. Since the Mul
hierarchy is very big, this can be slow to fail, especially when there is no such Mul
instance.
A long-term but harder to achieve solution would be to specify the order in which instance goals get solved. For example, we'd like to change the arguments to map_mul
to look like [FunLike F M N] [Mul M] [Mul N] [highPriority <| MulHomClass F M N]
because MulHomClass
fails or succeeds much faster than the others.
As a consequence, the simpNF
linter is much slower since by design it tries and fails to apply many map_
lemmas. The same issue occurs a few times in existing calls to simp [map_mul]
, where map_mul
is tried "too soon" and fails. Thanks to the speedup of leanprover/lean4#2478 the impact is very limited, only in files that already were close to the timeout.
simp
not firing sometimesThis affects map_smulₛₗ
and related definitions. For simp
lemmas Lean apparently uses a slightly different mechanism to find instances, so that rw
can find every argument to map_smulₛₗ
successfully but simp
can't: leanprover/lean4#3701.
Especially in the category theory library, we might sometimes have a type A
which is also accessible as a synonym (Bundled A hA).1
. Instance synthesis doesn't always work if we have f : A →* B
but x * y : (Bundled A hA).1
or vice versa. This seems to be mostly fixed by keeping A B
as outParam
s in MulHomClass F A B
. (Presumably because Lean will do a definitional check A =?= (Bundled A hA).1
instead of using the syntax in the discrimination tree.)
The timeouts can be worked around for now by specifying which map_mul
we mean, either as map_mul f
for some explicit f
, or as e.g. MonoidHomClass.map_mul
.
map_smulₛₗ
not firing as simp
lemma can be worked around by going back to the pre-FunLike situation and making LinearMap.map_smulₛₗ
a simp
lemma instead of the generic map_smulₛₗ
. Writing simp [map_smulₛₗ _]
also works.
Co-authored-by: Matthew Ballard <matt@mrb.email> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Scott Morrison <scott@tqft.net> Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>
@@ -123,8 +123,8 @@ structure NonarchAddGroupNorm (G : Type*) [AddGroup G] extends NonarchAddGroupSe
the additive group `α`.
You should extend this class when you extend `NonarchAddGroupSeminorm`. -/
-class NonarchAddGroupSeminormClass (F : Type*) (α : outParam <| Type*) [AddGroup α] extends
- NonarchimedeanHomClass F α ℝ where
+class NonarchAddGroupSeminormClass (F : Type*) (α : outParam <| Type*) [AddGroup α] [FunLike F α ℝ]
+ extends NonarchimedeanHomClass F α ℝ : Prop where
/-- The image of zero is zero. -/
protected map_zero (f : F) : f 0 = 0
/-- The seminorm is invariant under negation. -/
@@ -135,15 +135,15 @@ class NonarchAddGroupSeminormClass (F : Type*) (α : outParam <| Type*) [AddGrou
additive group `α`.
You should extend this class when you extend `NonarchAddGroupNorm`. -/
-class NonarchAddGroupNormClass (F : Type*) (α : outParam <| Type*) [AddGroup α] extends
- NonarchAddGroupSeminormClass F α where
+class NonarchAddGroupNormClass (F : Type*) (α : outParam <| Type*) [AddGroup α] [FunLike F α ℝ]
+ extends NonarchAddGroupSeminormClass F α : Prop where
/-- If the image under the norm is zero, then the argument is zero. -/
protected eq_zero_of_map_eq_zero (f : F) {a : α} : f a = 0 → a = 0
#align nonarch_add_group_norm_class NonarchAddGroupNormClass
section NonarchAddGroupSeminormClass
-variable [AddGroup E] [NonarchAddGroupSeminormClass F E] (f : F) (x y : E)
+variable [AddGroup E] [FunLike F E ℝ] [NonarchAddGroupSeminormClass F E] (f : F) (x y : E)
theorem map_sub_le_max : f (x - y) ≤ max (f x) (f y) := by
rw [sub_eq_add_neg, ← NonarchAddGroupSeminormClass.map_neg_eq_map' f y]
@@ -152,6 +152,8 @@ theorem map_sub_le_max : f (x - y) ≤ max (f x) (f y) := by
end NonarchAddGroupSeminormClass
+variable [FunLike F E ℝ]
+
-- See note [lower instance priority]
instance (priority := 100) NonarchAddGroupSeminormClass.toAddGroupSeminormClass [AddGroup E]
[NonarchAddGroupSeminormClass F E] : AddGroupSeminormClass F E ℝ :=
@@ -184,10 +186,14 @@ section Group
variable [Group E] [Group F] [Group G] {p q : GroupSeminorm E}
@[to_additive]
-instance groupSeminormClass : GroupSeminormClass (GroupSeminorm E) E ℝ
+instance funLike : FunLike (GroupSeminorm E) E ℝ
where
coe f := f.toFun
coe_injective' f g h := by cases f; cases g; congr
+
+@[to_additive]
+instance groupSeminormClass : GroupSeminormClass (GroupSeminorm E) E ℝ
+ where
map_one_eq_zero f := f.map_one'
map_mul_le_add f := f.mul_le'
map_inv_eq_map f := f.inv'
@@ -503,10 +509,13 @@ section AddGroup
variable [AddGroup E] [AddGroup F] [AddGroup G] {p q : NonarchAddGroupSeminorm E}
-instance nonarchAddGroupSeminormClass : NonarchAddGroupSeminormClass (NonarchAddGroupSeminorm E) E
+instance funLike : FunLike (NonarchAddGroupSeminorm E) E ℝ
where
coe f := f.toFun
coe_injective' f g h := by obtain ⟨⟨_, _⟩, _, _⟩ := f; cases g; congr
+
+instance nonarchAddGroupSeminormClass : NonarchAddGroupSeminormClass (NonarchAddGroupSeminorm E) E
+ where
map_add_le_max f := f.add_le_max'
map_zero f := f.map_zero'
map_neg_eq_map' f := f.neg'
@@ -740,10 +749,14 @@ section Group
variable [Group E] [Group F] [Group G] {p q : GroupNorm E}
@[to_additive]
-instance groupNormClass : GroupNormClass (GroupNorm E) E ℝ
+instance funLike : FunLike (GroupNorm E) E ℝ
where
coe f := f.toFun
coe_injective' f g h := by obtain ⟨⟨_, _, _, _⟩, _⟩ := f; cases g; congr
+
+@[to_additive]
+instance groupNormClass : GroupNormClass (GroupNorm E) E ℝ
+ where
map_one_eq_zero f := f.map_one'
map_mul_le_add f := f.mul_le'
map_inv_eq_map f := f.inv'
@@ -895,10 +908,13 @@ section AddGroup
variable [AddGroup E] [AddGroup F] {p q : NonarchAddGroupNorm E}
-instance nonarchAddGroupNormClass : NonarchAddGroupNormClass (NonarchAddGroupNorm E) E
+instance funLike : FunLike (NonarchAddGroupNorm E) E ℝ
where
coe f := f.toFun
coe_injective' f g h := by obtain ⟨⟨⟨_, _⟩, _, _⟩, _⟩ := f; cases g; congr
+
+instance nonarchAddGroupNormClass : NonarchAddGroupNormClass (NonarchAddGroupNorm E) E
+ where
map_add_le_max f := f.add_le_max'
map_zero f := f.map_zero'
map_neg_eq_map' f := f.neg'
Some of these are already transitively imported, others aren't used at all (but not handled by noshake in #9772).
Mostly I wanted to avoid needing all of algebra imported (but unused!) in FilteredColimitCommutesFiniteLimit
; there are now some assert_not_exists
to preserve this.
Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
@@ -3,9 +3,8 @@ Copyright (c) 2022 María Inés de Frutos-Fernández, Yaël Dillies. All rights
Released under Apache 2.0 license as described in the file LICENSE.
Authors: María Inés de Frutos-Fernández, Yaël Dillies
-/
-import Mathlib.Tactic.Positivity
import Mathlib.Data.Real.NNReal
-import Mathlib.Tactic.GCongr
+import Mathlib.Tactic.GCongr.Core
#align_import analysis.normed.group.seminorm from "leanprover-community/mathlib"@"09079525fd01b3dda35e96adaa08d2f943e1648c"
FunLike
to DFunLike
(#9785)
This prepares for the introduction of a non-dependent synonym of FunLike, which helps a lot with keeping #8386 readable.
This is entirely search-and-replace in 680197f combined with manual fixes in 4145626, e900597 and b8428f8. The commands that generated this change:
sed -i 's/\bFunLike\b/DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoFunLike\b/toDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/import Mathlib.Data.DFunLike/import Mathlib.Data.FunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bHom_FunLike\b/Hom_DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\binstFunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bfunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoo many metavariables to apply `fun_like.has_coe_to_fun`/too many metavariables to apply `DFunLike.hasCoeToFun`/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>
@@ -195,11 +195,11 @@ instance groupSeminormClass : GroupSeminormClass (GroupSeminorm E) E ℝ
#align group_seminorm.group_seminorm_class GroupSeminorm.groupSeminormClass
#align add_group_seminorm.add_group_seminorm_class AddGroupSeminorm.addGroupSeminormClass
-/-- Helper instance for when there's too many metavariables to apply `FunLike.hasCoeToFun`. -/
+/-- Helper instance for when there's too many metavariables to apply `DFunLike.hasCoeToFun`. -/
@[to_additive "Helper instance for when there's too many metavariables to apply
-`FunLike.hasCoeToFun`. "]
+`DFunLike.hasCoeToFun`. "]
instance : CoeFun (GroupSeminorm E) fun _ => E → ℝ :=
- ⟨FunLike.coe⟩
+ ⟨DFunLike.coe⟩
@[to_additive (attr := simp)]
theorem toFun_eq_coe : p.toFun = p :=
@@ -209,13 +209,13 @@ theorem toFun_eq_coe : p.toFun = p :=
@[to_additive (attr := ext)]
theorem ext : (∀ x, p x = q x) → p = q :=
- FunLike.ext p q
+ DFunLike.ext p q
#align group_seminorm.ext GroupSeminorm.ext
#align add_group_seminorm.ext AddGroupSeminorm.ext
@[to_additive]
instance : PartialOrder (GroupSeminorm E) :=
- PartialOrder.lift _ FunLike.coe_injective
+ PartialOrder.lift _ DFunLike.coe_injective
@[to_additive]
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
@@ -315,7 +315,7 @@ theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
@[to_additive]
instance semilatticeSup : SemilatticeSup (GroupSeminorm E) :=
- FunLike.coe_injective.semilatticeSup _ coe_sup
+ DFunLike.coe_injective.semilatticeSup _ coe_sup
/-- Composition of a group seminorm with a monoid homomorphism as a group seminorm. -/
@[to_additive "Composition of an additive group seminorm with an additive monoid homomorphism as an
@@ -513,9 +513,9 @@ instance nonarchAddGroupSeminormClass : NonarchAddGroupSeminormClass (NonarchAdd
map_neg_eq_map' f := f.neg'
#align nonarch_add_group_seminorm.nonarch_add_group_seminorm_class NonarchAddGroupSeminorm.nonarchAddGroupSeminormClass
-/-- Helper instance for when there's too many metavariables to apply `FunLike.hasCoeToFun`. -/
+/-- Helper instance for when there's too many metavariables to apply `DFunLike.hasCoeToFun`. -/
instance : CoeFun (NonarchAddGroupSeminorm E) fun _ => E → ℝ :=
- ⟨FunLike.coe⟩
+ ⟨DFunLike.coe⟩
-- porting note: `simpNF` said the left hand side simplified to this
@[simp]
@@ -525,11 +525,11 @@ theorem toZeroHom_eq_coe : ⇑p.toZeroHom = p := by
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
- FunLike.ext p q
+ DFunLike.ext p q
#align nonarch_add_group_seminorm.ext NonarchAddGroupSeminorm.ext
noncomputable instance : PartialOrder (NonarchAddGroupSeminorm E) :=
- PartialOrder.lift _ FunLike.coe_injective
+ PartialOrder.lift _ DFunLike.coe_injective
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
@@ -592,7 +592,7 @@ theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
#align nonarch_add_group_seminorm.sup_apply NonarchAddGroupSeminorm.sup_apply
noncomputable instance : SemilatticeSup (NonarchAddGroupSeminorm E) :=
- FunLike.coe_injective.semilatticeSup _ coe_sup
+ DFunLike.coe_injective.semilatticeSup _ coe_sup
end AddGroup
@@ -752,12 +752,12 @@ instance groupNormClass : GroupNormClass (GroupNorm E) E ℝ
#align group_norm.group_norm_class GroupNorm.groupNormClass
#align add_group_norm.add_group_norm_class AddGroupNorm.addGroupNormClass
-/-- Helper instance for when there's too many metavariables to apply `FunLike.hasCoeToFun`
+/-- Helper instance for when there's too many metavariables to apply `DFunLike.hasCoeToFun`
directly. -/
@[to_additive "Helper instance for when there's too many metavariables to apply
-`FunLike.hasCoeToFun` directly. "]
+`DFunLike.hasCoeToFun` directly. "]
instance : CoeFun (GroupNorm E) fun _ => E → ℝ :=
- FunLike.hasCoeToFun
+ DFunLike.hasCoeToFun
-- porting note: `simpNF` told me the left-hand side simplified to this
@[to_additive (attr := simp)]
@@ -768,13 +768,13 @@ theorem toGroupSeminorm_eq_coe : ⇑p.toGroupSeminorm = p :=
@[to_additive (attr := ext)]
theorem ext : (∀ x, p x = q x) → p = q :=
- FunLike.ext p q
+ DFunLike.ext p q
#align group_norm.ext GroupNorm.ext
#align add_group_norm.ext AddGroupNorm.ext
@[to_additive]
instance : PartialOrder (GroupNorm E) :=
- PartialOrder.lift _ FunLike.coe_injective
+ PartialOrder.lift _ DFunLike.coe_injective
@[to_additive]
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
@@ -843,7 +843,7 @@ theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
@[to_additive]
instance : SemilatticeSup (GroupNorm E) :=
- FunLike.coe_injective.semilatticeSup _ coe_sup
+ DFunLike.coe_injective.semilatticeSup _ coe_sup
end Group
@@ -906,9 +906,9 @@ instance nonarchAddGroupNormClass : NonarchAddGroupNormClass (NonarchAddGroupNor
eq_zero_of_map_eq_zero f := f.eq_zero_of_map_eq_zero' _
#align nonarch_add_group_norm.nonarch_add_group_norm_class NonarchAddGroupNorm.nonarchAddGroupNormClass
-/-- Helper instance for when there's too many metavariables to apply `FunLike.hasCoeToFun`. -/
+/-- Helper instance for when there's too many metavariables to apply `DFunLike.hasCoeToFun`. -/
noncomputable instance : CoeFun (NonarchAddGroupNorm E) fun _ => E → ℝ :=
- FunLike.hasCoeToFun
+ DFunLike.hasCoeToFun
-- porting note: `simpNF` told me the left-hand side simplified to this
@[simp]
@@ -918,11 +918,11 @@ theorem toNonarchAddGroupSeminorm_eq_coe : ⇑p.toNonarchAddGroupSeminorm = p :=
@[ext]
theorem ext : (∀ x, p x = q x) → p = q :=
- FunLike.ext p q
+ DFunLike.ext p q
#align nonarch_add_group_norm.ext NonarchAddGroupNorm.ext
noncomputable instance : PartialOrder (NonarchAddGroupNorm E) :=
- PartialOrder.lift _ FunLike.coe_injective
+ PartialOrder.lift _ DFunLike.coe_injective
theorem le_def : p ≤ q ↔ (p : E → ℝ) ≤ q :=
Iff.rfl
@@ -961,7 +961,7 @@ theorem sup_apply (x : E) : (p ⊔ q) x = p x ⊔ q x :=
#align nonarch_add_group_norm.sup_apply NonarchAddGroupNorm.sup_apply
noncomputable instance : SemilatticeSup (NonarchAddGroupNorm E) :=
- FunLike.coe_injective.semilatticeSup _ coe_sup
+ DFunLike.coe_injective.semilatticeSup _ coe_sup
instance [DecidableEq E] : One (NonarchAddGroupNorm E) :=
⟨{ (1 : NonarchAddGroupSeminorm E) with
@@ -643,7 +643,7 @@ instance : SMul R (GroupSeminorm E) :=
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, map_one_eq_zero p,
mul_zero]
mul_le' := fun _ _ => by
- simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, ←mul_add]
+ simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, ← mul_add]
gcongr
apply map_mul_le_add
inv' := fun x => by simp_rw [map_inv_eq_map p] }⟩
Type _
and Sort _
(#6499)
We remove all possible occurences of Type _
and Sort _
in favor of Type*
and Sort*
.
This has nice performance benefits.
@@ -51,11 +51,11 @@ open Set
open NNReal
-variable {ι R R' E F G : Type _}
+variable {ι R R' E F G : Type*}
/-- A seminorm on an additive group `G` is a function `f : G → ℝ` that preserves zero, is
subadditive and such that `f (-x) = f x` for all `x`. -/
-structure AddGroupSeminorm (G : Type _) [AddGroup G] where
+structure AddGroupSeminorm (G : Type*) [AddGroup G] where
-- porting note: can't extend `ZeroHom G ℝ` because otherwise `to_additive` won't work since
-- we aren't using old structures
/-- The bare function of an `AddGroupSeminorm`. -/
@@ -71,7 +71,7 @@ structure AddGroupSeminorm (G : Type _) [AddGroup G] where
/-- A seminorm on a group `G` is a function `f : G → ℝ` that sends one to zero, is submultiplicative
and such that `f x⁻¹ = f x` for all `x`. -/
@[to_additive]
-structure GroupSeminorm (G : Type _) [Group G] where
+structure GroupSeminorm (G : Type*) [Group G] where
/-- The bare function of a `GroupSeminorm`. -/
protected toFun : G → ℝ
/-- The image of one is zero. -/
@@ -85,7 +85,7 @@ structure GroupSeminorm (G : Type _) [Group G] where
/-- A nonarchimedean seminorm on an additive group `G` is a function `f : G → ℝ` that preserves
zero, is nonarchimedean and such that `f (-x) = f x` for all `x`. -/
-structure NonarchAddGroupSeminorm (G : Type _) [AddGroup G] extends ZeroHom G ℝ where
+structure NonarchAddGroupSeminorm (G : Type*) [AddGroup G] extends ZeroHom G ℝ where
/-- The seminorm applied to a sum is dominated by the maximum of the function applied to the
addends. -/
protected add_le_max' : ∀ r s, toFun (r + s) ≤ max (toFun r) (toFun s)
@@ -100,7 +100,7 @@ structure NonarchAddGroupSeminorm (G : Type _) [AddGroup G] extends ZeroHom G
/-- A norm on an additive group `G` is a function `f : G → ℝ` that preserves zero, is subadditive
and such that `f (-x) = f x` and `f x = 0 → x = 0` for all `x`. -/
-structure AddGroupNorm (G : Type _) [AddGroup G] extends AddGroupSeminorm G where
+structure AddGroupNorm (G : Type*) [AddGroup G] extends AddGroupSeminorm G where
/-- If the image under the seminorm is zero, then the argument is zero. -/
protected eq_zero_of_map_eq_zero' : ∀ x, toFun x = 0 → x = 0
#align add_group_norm AddGroupNorm
@@ -108,14 +108,14 @@ structure AddGroupNorm (G : Type _) [AddGroup G] extends AddGroupSeminorm G wher
/-- A seminorm on a group `G` is a function `f : G → ℝ` that sends one to zero, is submultiplicative
and such that `f x⁻¹ = f x` and `f x = 0 → x = 1` for all `x`. -/
@[to_additive]
-structure GroupNorm (G : Type _) [Group G] extends GroupSeminorm G where
+structure GroupNorm (G : Type*) [Group G] extends GroupSeminorm G where
/-- If the image under the norm is zero, then the argument is one. -/
protected eq_one_of_map_eq_zero' : ∀ x, toFun x = 0 → x = 1
#align group_norm GroupNorm
/-- A nonarchimedean norm on an additive group `G` is a function `f : G → ℝ` that preserves zero, is
nonarchimedean and such that `f (-x) = f x` and `f x = 0 → x = 0` for all `x`. -/
-structure NonarchAddGroupNorm (G : Type _) [AddGroup G] extends NonarchAddGroupSeminorm G where
+structure NonarchAddGroupNorm (G : Type*) [AddGroup G] extends NonarchAddGroupSeminorm G where
/-- If the image under the norm is zero, then the argument is zero. -/
protected eq_zero_of_map_eq_zero' : ∀ x, toFun x = 0 → x = 0
#align nonarch_add_group_norm NonarchAddGroupNorm
@@ -124,7 +124,7 @@ structure NonarchAddGroupNorm (G : Type _) [AddGroup G] extends NonarchAddGroupS
the additive group `α`.
You should extend this class when you extend `NonarchAddGroupSeminorm`. -/
-class NonarchAddGroupSeminormClass (F : Type _) (α : outParam <| Type _) [AddGroup α] extends
+class NonarchAddGroupSeminormClass (F : Type*) (α : outParam <| Type*) [AddGroup α] extends
NonarchimedeanHomClass F α ℝ where
/-- The image of zero is zero. -/
protected map_zero (f : F) : f 0 = 0
@@ -136,7 +136,7 @@ class NonarchAddGroupSeminormClass (F : Type _) (α : outParam <| Type _) [AddGr
additive group `α`.
You should extend this class when you extend `NonarchAddGroupNorm`. -/
-class NonarchAddGroupNormClass (F : Type _) (α : outParam <| Type _) [AddGroup α] extends
+class NonarchAddGroupNormClass (F : Type*) (α : outParam <| Type*) [AddGroup α] extends
NonarchAddGroupSeminormClass F α where
/-- If the image under the norm is zero, then the argument is zero. -/
protected eq_zero_of_map_eq_zero (f : F) {a : α} : f a = 0 → a = 0
Per https://github.com/leanprover/lean4/issues/2343, we are going to need to change the automatic generation of instance names, as they become too long.
This PR ensures that everywhere in Mathlib that refers to an instance by name, that name is given explicitly, rather than being automatically generated.
There are four exceptions, which are now commented, with links to https://github.com/leanprover/lean4/issues/2343.
This was implemented by running Mathlib against a modified Lean that appended _ᾰ
to all automatically generated names, and fixing everything.
Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
@@ -244,7 +244,7 @@ theorem coe_lt_coe : (p : E → ℝ) < q ↔ p < q :=
variable (p q) (f : F →* E)
@[to_additive]
-instance : Zero (GroupSeminorm E) :=
+instance instZeroGroupSeminorm : Zero (GroupSeminorm E) :=
⟨{ toFun := 0
map_one' := Pi.zero_apply _
mul_le' := fun _ _ => (zero_add _).ge
@@ -2,16 +2,13 @@
Copyright (c) 2022 María Inés de Frutos-Fernández, Yaël Dillies. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: María Inés de Frutos-Fernández, Yaël Dillies
-
-! This file was ported from Lean 3 source module analysis.normed.group.seminorm
-! leanprover-community/mathlib commit 09079525fd01b3dda35e96adaa08d2f943e1648c
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.Tactic.Positivity
import Mathlib.Data.Real.NNReal
import Mathlib.Tactic.GCongr
+#align_import analysis.normed.group.seminorm from "leanprover-community/mathlib"@"09079525fd01b3dda35e96adaa08d2f943e1648c"
+
/-!
# Group seminorms
@@ -10,6 +10,7 @@ Authors: María Inés de Frutos-Fernández, Yaël Dillies
-/
import Mathlib.Tactic.Positivity
import Mathlib.Data.Real.NNReal
+import Mathlib.Tactic.GCongr
/-!
# Group seminorms
@@ -472,10 +473,9 @@ instance toSMul : SMul R (AddGroupSeminorm E) :=
map_zero' := by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, map_zero, mul_zero]
add_le' := fun _ _ => by
- simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul]
- exact
- (mul_le_mul_of_nonneg_left (map_add_le_add _ _ _) <| NNReal.coe_nonneg _).trans_eq
- (mul_add _ _ _)
+ simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, ← mul_add]
+ gcongr
+ apply map_add_le_add
neg' := fun x => by simp_rw [map_neg_eq_map] }⟩
@[simp, norm_cast]
@@ -646,10 +646,9 @@ instance : SMul R (GroupSeminorm E) :=
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, map_one_eq_zero p,
mul_zero]
mul_le' := fun _ _ => by
- simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul]
- exact
- (mul_le_mul_of_nonneg_left (map_mul_le_add p _ _) <| NNReal.coe_nonneg _).trans_eq
- (mul_add _ _ _)
+ simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, ←mul_add]
+ gcongr
+ apply map_mul_le_add
inv' := fun x => by simp_rw [map_inv_eq_map p] }⟩
@[to_additive existing AddGroupSeminorm.isScalarTower]
@@ -708,7 +707,8 @@ instance : SMul R (NonarchAddGroupSeminorm E) :=
add_le_max' := fun x y => by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, ←
mul_max_of_nonneg _ _ NNReal.zero_le_coe]
- exact mul_le_mul_of_nonneg_left (map_add_le_max p _ _) NNReal.zero_le_coe
+ gcongr
+ apply map_add_le_max
neg' := fun x => by simp_rw [map_neg_eq_map p] }⟩
instance [SMul R' ℝ] [SMul R' ℝ≥0] [IsScalarTower R' ℝ≥0 ℝ] [SMul R R'] [IsScalarTower R R' ℝ] :
Positivity extensions for NonnegHomClass
(this includes AbsoluteValue
and Seminorm
), IsAbsoluteValue
, norm, the NNReal
-to-Real
coercion, factorials, square roots, distance (in a metric space), and diameter.
I tried to do these "properly" using Qq but I hit various errors I couldn't fix -- see https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Qq.20doesn't.20know.20that.20two.20things.20have.20the.20same.20type for some examples.
cc @dwrensha
Co-authored-by: Floris van Doorn <fpvdoorn@gmail.com>
@@ -398,7 +398,7 @@ theorem mul_bddBelow_range_add {p q : GroupSeminorm E} {x : E} :
⟨0, by
rintro _ ⟨x, rfl⟩
dsimp
- exact add_nonneg (map_nonneg _ _) (map_nonneg _ _)⟩ -- porting note: was `positivity`
+ positivity⟩
#align group_seminorm.mul_bdd_below_range_add GroupSeminorm.mul_bddBelow_range_add
#align add_group_seminorm.add_bdd_below_range_add AddGroupSeminorm.add_bddBelow_range_add
@@ -608,8 +608,7 @@ theorem add_bddBelow_range_add {p q : NonarchAddGroupSeminorm E} {x : E} :
⟨0, by
rintro _ ⟨x, rfl⟩
dsimp
- exact add_nonneg (map_nonneg _ _) (map_nonneg _ _)⟩
- -- porting note: was `positivity`
+ positivity⟩
#align nonarch_add_group_seminorm.add_bdd_below_range_add NonarchAddGroupSeminorm.add_bddBelow_range_add
end AddCommGroup
sSup
/iSup
(#3938)
As discussed on Zulip
supₛ
→ sSup
infₛ
→ sInf
supᵢ
→ iSup
infᵢ
→ iInf
bsupₛ
→ bsSup
binfₛ
→ bsInf
bsupᵢ
→ biSup
binfᵢ
→ biInf
csupₛ
→ csSup
cinfₛ
→ csInf
csupᵢ
→ ciSup
cinfᵢ
→ ciInf
unionₛ
→ sUnion
interₛ
→ sInter
unionᵢ
→ iUnion
interᵢ
→ iInter
bunionₛ
→ bsUnion
binterₛ
→ bsInter
bunionᵢ
→ biUnion
binterᵢ
→ biInter
Co-authored-by: Parcly Taxel <reddeloostw@gmail.com>
@@ -407,17 +407,17 @@ noncomputable instance : Inf (GroupSeminorm E) :=
⟨fun p q =>
{ toFun := fun x => ⨅ y, p y + q (x / y)
map_one' :=
- cinfᵢ_eq_of_forall_ge_of_forall_gt_exists_lt
+ ciInf_eq_of_forall_ge_of_forall_gt_exists_lt
-- porting note: replace `add_nonneg` with `positivity` once we have the extension
(fun x => add_nonneg (map_nonneg _ _) (map_nonneg _ _)) fun r hr =>
⟨1, by rwa [div_one, map_one_eq_zero p, map_one_eq_zero q, add_zero]⟩
mul_le' := fun x y =>
- le_cinfᵢ_add_cinfᵢ fun u v => by
- refine' cinfᵢ_le_of_le mul_bddBelow_range_add (u * v) _
+ le_ciInf_add_ciInf fun u v => by
+ refine' ciInf_le_of_le mul_bddBelow_range_add (u * v) _
rw [mul_div_mul_comm, add_add_add_comm]
exact add_le_add (map_mul_le_add p _ _) (map_mul_le_add q _ _)
inv' := fun x =>
- (inv_surjective.infᵢ_comp _).symm.trans <| by
+ (inv_surjective.iInf_comp _).symm.trans <| by
simp_rw [map_inv_eq_map p, ← inv_div', map_inv_eq_map q] }⟩
@[to_additive (attr := simp)]
@@ -431,12 +431,12 @@ noncomputable instance : Lattice (GroupSeminorm E) :=
{ GroupSeminorm.semilatticeSup with
inf := (· ⊓ ·)
inf_le_left := fun p q x =>
- cinfᵢ_le_of_le mul_bddBelow_range_add x <| by rw [div_self', map_one_eq_zero q, add_zero]
+ ciInf_le_of_le mul_bddBelow_range_add x <| by rw [div_self', map_one_eq_zero q, add_zero]
inf_le_right := fun p q x =>
- cinfᵢ_le_of_le mul_bddBelow_range_add (1 : E) <| by
+ ciInf_le_of_le mul_bddBelow_range_add (1 : E) <| by
simpa only [div_one x, map_one_eq_zero p, zero_add (q x)] using le_rfl
le_inf := fun a b c hb hc x =>
- le_cinfᵢ fun u => (le_map_add_map_div a _ _).trans <| add_le_add (hb _) (hc _) }
+ le_ciInf fun u => (le_map_add_map_div a _ _).trans <| add_le_add (hb _) (hc _) }
end CommGroup
by
s! (#3825)
This PR puts, with one exception, every single remaining by
that lies all by itself on its own line to the previous line, thus matching the current behaviour of start-port.sh
. The exception is when the by
begins the second or later argument to a tuple or anonymous constructor; see https://github.com/leanprover-community/mathlib4/pull/3825#discussion_r1186702599.
Essentially this is s/\n *by$/ by/g
, but with manual editing to satisfy the linter's max-100-char-line requirement. The Python style linter is also modified to catch these "isolated by
s".
@@ -412,8 +412,7 @@ noncomputable instance : Inf (GroupSeminorm E) :=
(fun x => add_nonneg (map_nonneg _ _) (map_nonneg _ _)) fun r hr =>
⟨1, by rwa [div_one, map_one_eq_zero p, map_one_eq_zero q, add_zero]⟩
mul_le' := fun x y =>
- le_cinfᵢ_add_cinfᵢ fun u v =>
- by
+ le_cinfᵢ_add_cinfᵢ fun u v => by
refine' cinfᵢ_le_of_le mul_bddBelow_range_add (u * v) _
rw [mul_div_mul_comm, add_add_add_comm]
exact add_le_add (map_mul_le_add p _ _) (map_mul_le_add q _ _)
@@ -472,8 +471,7 @@ instance toSMul : SMul R (AddGroupSeminorm E) :=
{ toFun := fun x => r • p x
map_zero' := by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, map_zero, mul_zero]
- add_le' := fun _ _ =>
- by
+ add_le' := fun _ _ => by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul]
exact
(mul_le_mul_of_nonneg_left (map_add_le_add _ _ _) <| NNReal.coe_nonneg _).trans_eq
@@ -648,8 +646,7 @@ instance : SMul R (GroupSeminorm E) :=
map_one' := by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, map_one_eq_zero p,
mul_zero]
- mul_le' := fun _ _ =>
- by
+ mul_le' := fun _ _ => by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul]
exact
(mul_le_mul_of_nonneg_left (map_mul_le_add p _ _) <| NNReal.coe_nonneg _).trans_eq
@@ -709,8 +706,7 @@ instance : SMul R (NonarchAddGroupSeminorm E) :=
map_zero' := by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, map_zero p,
mul_zero]
- add_le_max' := fun x y =>
- by
+ add_le_max' := fun x y => by
simp only [← smul_one_smul ℝ≥0 r (_ : ℝ), NNReal.smul_def, smul_eq_mul, ←
mul_max_of_nonneg _ _ NNReal.zero_le_coe]
exact mul_le_mul_of_nonneg_left (map_add_le_max p _ _) NNReal.zero_le_coe
closes #3680, see https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Stepping.20through.20simp_rw/near/326712986
@@ -584,7 +584,7 @@ instance : Sup (NonarchAddGroupSeminorm E) :=
add_le_max' := fun x y =>
sup_le ((map_add_le_max p x y).trans <| max_le_max le_sup_left le_sup_left)
((map_add_le_max q x y).trans <| max_le_max le_sup_right le_sup_right)
- neg' := fun x => by simp_rw [Pi.sup_apply, Pi.sup_apply, map_neg_eq_map p, map_neg_eq_map q]}⟩
+ neg' := fun x => by simp_rw [Pi.sup_apply, map_neg_eq_map p, map_neg_eq_map q]}⟩
@[simp, norm_cast]
theorem coe_sup : ⇑(p ⊔ q) = ⇑p ⊔ ⇑q :=
The previously hacky proofs with porting notes can be discarded in favor of the ones from mathport.
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: María Inés de Frutos-Fernández, Yaël Dillies
! This file was ported from Lean 3 source module analysis.normed.group.seminorm
-! leanprover-community/mathlib commit 28aa996fc6fb4317f0083c4e6daf79878d81be33
+! leanprover-community/mathlib commit 09079525fd01b3dda35e96adaa08d2f943e1648c
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -495,14 +495,10 @@ instance isScalarTower [SMul R' ℝ] [SMul R' ℝ≥0] [IsScalarTower R' ℝ≥0
⟨fun r a p => ext fun x => smul_assoc r a (p x)⟩
theorem smul_sup (r : R) (p q : AddGroupSeminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
- have real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y) := fun x y => by
- -- porting note: This appears to be due to lean4#2074 that we need this
- have max_eq_max : @max ℝ LinearOrderedSemiring.toMax = @max ℝ LinearOrderedRing.toMax := rfl
- simpa only [←smul_eq_mul, max_eq_max, ←NNReal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)] using
- mul_max_of_nonneg (a := (r • (1 : ℝ≥0) : ℝ)) x y (r • (1 : ℝ≥0)).zero_le_coe
- -- porting note: for `ℝ≥0` it is important to use `.zero_le_coe` instead of `.prop` so that
- -- the coercion function which appears is `NNReal.toReal` instead of `Subtype.val`
- ext fun x => real.smul_max _ _
+ have Real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y) := fun x y => by
+ simpa only [← smul_eq_mul, ← NNReal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)] using
+ mul_max_of_nonneg x y (r • (1 : ℝ≥0) : ℝ≥0).coe_nonneg
+ ext fun x => Real.smul_max _ _
#align add_group_seminorm.smul_sup AddGroupSeminorm.smul_sup
end AddGroupSeminorm
@@ -677,14 +673,10 @@ theorem smul_apply (r : R) (p : GroupSeminorm E) (x : E) : (r • p) x = r • p
@[to_additive existing AddGroupSeminorm.smul_sup]
theorem smul_sup (r : R) (p q : GroupSeminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
- have real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y) := fun x y => by
- -- porting note: This appears to be due to lean4#2074 that we need this
- have max_eq_max : @max ℝ LinearOrderedSemiring.toMax = @max ℝ LinearOrderedRing.toMax := rfl
- simpa only [←smul_eq_mul, max_eq_max, ←NNReal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)] using
- mul_max_of_nonneg (a := (r • (1 : ℝ≥0) : ℝ)) x y (r • (1 : ℝ≥0)).zero_le_coe
- -- porting note: for `ℝ≥0` it is important to use `.zero_le_coe` instead of `.prop` so that
- -- the coercion function which appears is `NNReal.toReal` instead of `Subtype.val`
- ext fun x => real.smul_max _ _
+ have Real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y) := fun x y => by
+ simpa only [← smul_eq_mul, ← NNReal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)] using
+ mul_max_of_nonneg x y (r • (1 : ℝ≥0) : ℝ≥0).coe_nonneg
+ ext fun x => Real.smul_max _ _
#align group_seminorm.smul_sup GroupSeminorm.smul_sup
end GroupSeminorm
@@ -739,14 +731,10 @@ theorem smul_apply (r : R) (p : NonarchAddGroupSeminorm E) (x : E) : (r • p) x
#align nonarch_add_group_seminorm.smul_apply NonarchAddGroupSeminorm.smul_apply
theorem smul_sup (r : R) (p q : NonarchAddGroupSeminorm E) : r • (p ⊔ q) = r • p ⊔ r • q :=
- have real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y) := fun x y => by
- -- porting note: This appears to be due to lean4#2074 that we need this
- have max_eq_max : @max ℝ LinearOrderedSemiring.toMax = @max ℝ LinearOrderedRing.toMax := rfl
- simpa only [←smul_eq_mul, max_eq_max, ←NNReal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)] using
- mul_max_of_nonneg (a := (r • (1 : ℝ≥0) : ℝ)) x y (r • (1 : ℝ≥0)).zero_le_coe
- -- porting note: for `ℝ≥0` it is important to use `.zero_le_coe` instead of `.prop` so that
- -- the coercion function which appears is `NNReal.toReal` instead of `Subtype.val`
- ext fun x => real.smul_max _ _
+ have Real.smul_max : ∀ x y : ℝ, r • max x y = max (r • x) (r • y) := fun x y => by
+ simpa only [← smul_eq_mul, ← NNReal.smul_def, smul_one_smul ℝ≥0 r (_ : ℝ)] using
+ mul_max_of_nonneg x y (r • (1 : ℝ≥0) : ℝ≥0).coe_nonneg
+ ext fun x => Real.smul_max _ _
#align nonarch_add_group_seminorm.smul_sup NonarchAddGroupSeminorm.smul_sup
end NonarchAddGroupSeminorm
@@ -156,7 +156,7 @@ theorem map_sub_le_max : f (x - y) ≤ max (f x) (f y) := by
end NonarchAddGroupSeminormClass
-- See note [lower instance priority]
-instance (priority := 100) NonarchAddGroupSeminormClass.toAddGroupSeminormClass {_ : AddGroup E}
+instance (priority := 100) NonarchAddGroupSeminormClass.toAddGroupSeminormClass [AddGroup E]
[NonarchAddGroupSeminormClass F E] : AddGroupSeminormClass F E ℝ :=
{ ‹NonarchAddGroupSeminormClass F E› with
map_add_le_add := fun f x y =>
@@ -170,7 +170,7 @@ instance (priority := 100) NonarchAddGroupSeminormClass.toAddGroupSeminormClass
#align nonarch_add_group_seminorm_class.to_add_group_seminorm_class NonarchAddGroupSeminormClass.toAddGroupSeminormClass
-- See note [lower instance priority]
-instance (priority := 100) NonarchAddGroupNormClass.toAddGroupNormClass {_ : AddGroup E}
+instance (priority := 100) NonarchAddGroupNormClass.toAddGroupNormClass [AddGroup E]
[NonarchAddGroupNormClass F E] : AddGroupNormClass F E ℝ :=
{ ‹NonarchAddGroupNormClass F E› with
map_add_le_add := map_add_le_add
@@ -32,7 +32,7 @@ is positive-semidefinite and subadditive. A norm further only maps zero to zero.
## Notes
-The corresponding hom classes are defined in `analysis.order.hom.basic` to be used by absolute
+The corresponding hom classes are defined in `Analysis.Order.Hom.Basic` to be used by absolute
values.
We do not define `NonarchAddGroupSeminorm` as an extension of `AddGroupSeminorm` to avoid
The unported dependencies are
algebra.order.module
init.core
algebra.order.monoid.cancel.defs
algebra.abs
algebra.group_power.lemmas
init.data.list.basic
init.data.list.default
algebra.order.monoid.cancel.basic
init.logic
The following 1 dependencies have changed in mathlib3 since they were ported, which may complicate porting this file