File: Mathlib/Analysis/Normed/Group/SemiNormedGrp.lean

full_name: SemiNormedGrp
code: /-- The category of seminormed abelian groups and bounded group homomorphisms. -/
def SemiNormedGrp : Type (u + 1) 
goal: Type (u + 1)

full_name: SemiNormedGrp.bundledHom
code: instance bundledHom : BundledHom @NormedAddGroupHom 
goal: CategoryTheory.BundledHom NormedAddGroupHom

full_name: SemiNormedGrp.instConcreteCategory
code: instance : ConcreteCategory SemiNormedGrp 
goal: CategoryTheory.ConcreteCategory SemiNormedGrp

full_name: SemiNormedGrp.instCoeSortType
code: instance : CoeSort SemiNormedGrp Type* 
goal: CoeSort SemiNormedGrp (Type u_1)

full_name: SemiNormedGrp.of
code: /-- Construct a bundled `SemiNormedGrp` from the underlying type and typeclass. -/
def of (M : Type u) [SeminormedAddCommGroup M] : SemiNormedGrp 
goal: SemiNormedGrp

full_name: SemiNormedGrp.instSeminormedAddCommGroupα
code: instance (M : SemiNormedGrp) : SeminormedAddCommGroup M 
goal: SeminormedAddCommGroup ↑M

full_name: SemiNormedGrp.funLike
code: instance funLike {V W : SemiNormedGrp} : FunLike (V ⟶ W) V W 
goal: FunLike (V ⟶ W) ↑V ↑W

full_name: SemiNormedGrp.toAddMonoidHomClass
code: instance toAddMonoidHomClass {V W : SemiNormedGrp} : AddMonoidHomClass (V ⟶ W) V W 
goal: AddMonoidHomClass (V ⟶ W) ↑V ↑W

full_name: SemiNormedGrp.ext
code: @[ext]
lemma ext {M N : SemiNormedGrp} {f₁ f₂ : M ⟶ N} (h : ∀ (x : M), f₁ x = f₂ x) : f₁ = f₂ 
goal: f₁ = f₂

full_name: SemiNormedGrp.coe_of
code: @[simp]
theorem coe_of (V : Type u) [SeminormedAddCommGroup V] : (SemiNormedGrp.of V : Type u) = V 
goal: ↑(SemiNormedGrp.of V) = V

full_name: SemiNormedGrp.coe_id
code: @[simp (high)]
theorem coe_id (V : SemiNormedGrp) : (𝟙 V : V → V) = id 
goal: ⇑(𝟙 V) = id

full_name: SemiNormedGrp.coe_comp
code: @[simp (high)]
theorem coe_comp {M N K : SemiNormedGrp} (f : M ⟶ N) (g : N ⟶ K) :
    (f ≫ g : M → K) = g ∘ f 
goal: ⇑(f ≫ g) = ⇑g ∘ ⇑f

full_name: SemiNormedGrp.instInhabited
code: instance : Inhabited SemiNormedGrp 
goal: Inhabited SemiNormedGrp

full_name: SemiNormedGrp.ofUnique
code: instance ofUnique (V : Type u) [SeminormedAddCommGroup V] [i : Unique V] :
    Unique (SemiNormedGrp.of V) 
goal: Unique ↑(SemiNormedGrp.of V)

full_name: SemiNormedGrp.instZeroHom
code: instance {M N : SemiNormedGrp} : Zero (M ⟶ N) 
goal: Zero (M ⟶ N)

full_name: SemiNormedGrp.zero_apply
code: @[simp]
theorem zero_apply {V W : SemiNormedGrp} (x : V) : (0 : V ⟶ W) x = 0 
goal: 0 x = 0

full_name: SemiNormedGrp.instHasZeroMorphisms
code: instance : Limits.HasZeroMorphisms.{u, u + 1} SemiNormedGrp 
goal: CategoryTheory.Limits.HasZeroMorphisms SemiNormedGrp

full_name: SemiNormedGrp.isZero_of_subsingleton
code: theorem isZero_of_subsingleton (V : SemiNormedGrp) [Subsingleton V] : Limits.IsZero V 
goal: CategoryTheory.Limits.IsZero V

full_name: SemiNormedGrp.hasZeroObject
code: instance hasZeroObject : Limits.HasZeroObject SemiNormedGrp.{u} 
goal: CategoryTheory.Limits.HasZeroObject SemiNormedGrp

full_name: SemiNormedGrp.iso_isometry_of_normNoninc
code: theorem iso_isometry_of_normNoninc {V W : SemiNormedGrp} (i : V ≅ W) (h1 : i.hom.NormNoninc)
    (h2 : i.inv.NormNoninc) : Isometry i.hom 
goal: Isometry ⇑i.hom

full_name: SemiNormedGrp₁
code: /-- `SemiNormedGrp₁` is a type synonym for `SemiNormedGrp`,
which we shall equip with the category structure consisting only of the norm non-increasing maps.
-/
def SemiNormedGrp₁ : Type (u + 1) 
goal: Type (u + 1)

full_name: SemiNormedGrp₁.instCoeSortType
code: instance : CoeSort SemiNormedGrp₁ Type* 
goal: CoeSort SemiNormedGrp₁ (Type u_1)

full_name: SemiNormedGrp₁.instLargeCategory
code: instance : LargeCategory.{u} SemiNormedGrp₁ 
goal: CategoryTheory.LargeCategory SemiNormedGrp₁

full_name: SemiNormedGrp₁.instFunLike
code: instance instFunLike (X Y : SemiNormedGrp₁) : FunLike (X ⟶ Y) X Y 
goal: FunLike (X ⟶ Y) ↑X ↑Y

full_name: SemiNormedGrp₁.hom_ext
code: @[ext]
theorem hom_ext {M N : SemiNormedGrp₁} (f g : M ⟶ N) (w : (f : M → N) = (g : M → N)) :
    f = g 
goal: f = g

full_name: SemiNormedGrp₁.instConcreteCategory
code: instance : ConcreteCategory.{u} SemiNormedGrp₁ 
goal: CategoryTheory.ConcreteCategory SemiNormedGrp₁

full_name: SemiNormedGrp₁.toAddMonoidHomClass
code: instance toAddMonoidHomClass {V W : SemiNormedGrp₁} : AddMonoidHomClass (V ⟶ W) V W 
goal: AddMonoidHomClass (V ⟶ W) ↑V ↑W

full_name: SemiNormedGrp₁.of
code: /-- Construct a bundled `SemiNormedGrp₁` from the underlying type and typeclass. -/
def of (M : Type u) [SeminormedAddCommGroup M] : SemiNormedGrp₁ 
goal: SemiNormedGrp₁

full_name: SemiNormedGrp₁.instSeminormedAddCommGroupα
code: instance (M : SemiNormedGrp₁) : SeminormedAddCommGroup M 
goal: SeminormedAddCommGroup ↑M

full_name: SemiNormedGrp₁.mkHom
code: /-- Promote a morphism in `SemiNormedGrp` to a morphism in `SemiNormedGrp₁`. -/
def mkHom {M N : SemiNormedGrp} (f : M ⟶ N) (i : f.NormNoninc) :
    SemiNormedGrp₁.of M ⟶ SemiNormedGrp₁.of N 
goal: SemiNormedGrp₁.of ↑M ⟶ SemiNormedGrp₁.of ↑N

full_name: SemiNormedGrp₁.mkHom_apply
code: theorem mkHom_apply {M N : SemiNormedGrp} (f : M ⟶ N) (i : f.NormNoninc) (x) :
    mkHom f i x = f x 
goal: (SemiNormedGrp₁.mkHom f i) x = f x

full_name: SemiNormedGrp₁.mkIso_hom
code: /-- Promote an isomorphism in `SemiNormedGrp` to an isomorphism in `SemiNormedGrp₁`. -/
@[simps]
def mkIso {M N : SemiNormedGrp} (f : M ≅ N) (i : f.hom.NormNoninc) (i' : f.inv.NormNoninc) :
    SemiNormedGrp₁.of M ≅ SemiNormedGrp₁.of N 
goal: (SemiNormedGrp₁.mkIso f i i').hom = SemiNormedGrp₁.mkHom f.hom i

full_name: SemiNormedGrp₁.mkIso
code: /-- Promote an isomorphism in `SemiNormedGrp` to an isomorphism in `SemiNormedGrp₁`. -/
@[simps]
def mkIso {M N : SemiNormedGrp} (f : M ≅ N) (i : f.hom.NormNoninc) (i' : f.inv.NormNoninc) :
    SemiNormedGrp₁.of M ≅ SemiNormedGrp₁.of N 
goal: SemiNormedGrp₁.of ↑M ≅ SemiNormedGrp₁.of ↑N

full_name: SemiNormedGrp₁.mkIso_inv
code: /-- Promote an isomorphism in `SemiNormedGrp` to an isomorphism in `SemiNormedGrp₁`. -/
@[simps]
def mkIso {M N : SemiNormedGrp} (f : M ≅ N) (i : f.hom.NormNoninc) (i' : f.inv.NormNoninc) :
    SemiNormedGrp₁.of M ≅ SemiNormedGrp₁.of N 
goal: (SemiNormedGrp₁.mkIso f i i').inv = SemiNormedGrp₁.mkHom f.inv i'

full_name: SemiNormedGrp₁.instHasForget₂SemiNormedGrp
code: instance : HasForget₂ SemiNormedGrp₁ SemiNormedGrp 
goal: CategoryTheory.HasForget₂ SemiNormedGrp₁ SemiNormedGrp

full_name: SemiNormedGrp₁.coe_of
code: @[simp]
theorem coe_of (V : Type u) [SeminormedAddCommGroup V] : (SemiNormedGrp₁.of V : Type u) = V 
goal: ↑(SemiNormedGrp₁.of V) = V

full_name: SemiNormedGrp₁.coe_id
code: @[simp (high)]
theorem coe_id (V : SemiNormedGrp₁) : ⇑(𝟙 V) = id 
goal: ⇑(𝟙 V) = id

full_name: SemiNormedGrp₁.coe_comp
code: @[simp (high)]
theorem coe_comp {M N K : SemiNormedGrp₁} (f : M ⟶ N) (g : N ⟶ K) :
    (f ≫ g : M → K) = g ∘ f 
goal: ⇑(f ≫ g) = ⇑g ∘ ⇑f

full_name: SemiNormedGrp₁.instInhabited
code: instance : Inhabited SemiNormedGrp₁ 
goal: Inhabited SemiNormedGrp₁

full_name: SemiNormedGrp₁.ofUnique
code: instance ofUnique (V : Type u) [SeminormedAddCommGroup V] [i : Unique V] :
    Unique (SemiNormedGrp₁.of V) 
goal: Unique ↑(SemiNormedGrp₁.of V)

full_name: SemiNormedGrp₁.instZeroHom
code: instance (X Y : SemiNormedGrp₁) : Zero (X ⟶ Y) 
goal: Zero (X ⟶ Y)

full_name: SemiNormedGrp₁.zero_apply
code: @[simp]
theorem zero_apply {V W : SemiNormedGrp₁} (x : V) : (0 : V ⟶ W) x = 0 
goal: 0 x = 0

full_name: SemiNormedGrp₁.instHasZeroMorphisms
code: instance : Limits.HasZeroMorphisms.{u, u + 1} SemiNormedGrp₁ 
goal: CategoryTheory.Limits.HasZeroMorphisms SemiNormedGrp₁

full_name: SemiNormedGrp₁.isZero_of_subsingleton
code: theorem isZero_of_subsingleton (V : SemiNormedGrp₁) [Subsingleton V] : Limits.IsZero V 
goal: CategoryTheory.Limits.IsZero V

full_name: SemiNormedGrp₁.hasZeroObject
code: instance hasZeroObject : Limits.HasZeroObject SemiNormedGrp₁.{u} 
goal: CategoryTheory.Limits.HasZeroObject SemiNormedGrp₁

full_name: SemiNormedGrp₁.iso_isometry
code: theorem iso_isometry {V W : SemiNormedGrp₁} (i : V ≅ W) : Isometry i.hom 
goal: Isometry ⇑i.hom