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

full_name: SemiNormedGrp.completion_obj
code: /-- The completion of a seminormed group, as an endofunctor on `SemiNormedGrp`. -/
@[simps]
def completion : SemiNormedGrp.{u} ⥤ SemiNormedGrp.{u} 
goal: SemiNormedGrp.completion.obj V = SemiNormedGrp.of (UniformSpace.Completion ↑V)

full_name: SemiNormedGrp.completion
code: /-- The completion of a seminormed group, as an endofunctor on `SemiNormedGrp`. -/
@[simps]
def completion : SemiNormedGrp.{u} ⥤ SemiNormedGrp.{u} 
goal: SemiNormedGrp ⥤ SemiNormedGrp

full_name: SemiNormedGrp.completion_map
code: /-- The completion of a seminormed group, as an endofunctor on `SemiNormedGrp`. -/
@[simps]
def completion : SemiNormedGrp.{u} ⥤ SemiNormedGrp.{u} 
goal: ∀ {X Y : SemiNormedGrp} (f : X ⟶ Y), SemiNormedGrp.completion.map f = NormedAddGroupHom.completion f

full_name: SemiNormedGrp.completion_completeSpace
code: instance completion_completeSpace {V : SemiNormedGrp} : CompleteSpace (completion.obj V) 
goal: CompleteSpace ↑(SemiNormedGrp.completion.obj V)

full_name: SemiNormedGrp.completion.incl
code: /-- The canonical morphism from a seminormed group `V` to its completion. -/
@[simps]
def completion.incl {V : SemiNormedGrp} : V ⟶ completion.obj V 
goal: V ⟶ SemiNormedGrp.completion.obj V

full_name: SemiNormedGrp.completion.incl_apply
code: /-- The canonical morphism from a seminormed group `V` to its completion. -/
@[simps]
def completion.incl {V : SemiNormedGrp} : V ⟶ completion.obj V 
goal: SemiNormedGrp.completion.incl v = ↑↑V v

full_name: SemiNormedGrp.completion.norm_incl_eq
code: theorem completion.norm_incl_eq {V : SemiNormedGrp} {v : V} : ‖completion.incl v‖ = ‖v‖ 
goal: ‖SemiNormedGrp.completion.incl v‖ = ‖v‖

full_name: SemiNormedGrp.completion.map_normNoninc
code: theorem completion.map_normNoninc {V W : SemiNormedGrp} {f : V ⟶ W} (hf : f.NormNoninc) :
    (completion.map f).NormNoninc 
goal: NormedAddGroupHom.NormNoninc (SemiNormedGrp.completion.map f)

full_name: SemiNormedGrp.completion.mapHom
code: /-- Given a normed group hom `V ⟶ W`, this defines the associated morphism
from the completion of `V` to the completion of `W`.
The difference from the definition obtained from the functoriality of completion is in that the
map sending a morphism `f` to the associated morphism of completions is itself additive. -/
def completion.mapHom (V W : SemiNormedGrp.{u}) :
    -- Porting note: cannot see instances through concrete cats
    have (V W : SemiNormedGrp.{u}) : AddGroup (V ⟶ W) :=
      inferInstanceAs <| AddGroup <| NormedAddGroupHom V W
    (V ⟶ W) →+ (completion.obj V ⟶ completion.obj W) 
goal: let_fun this := fun V W => inferInstanceAs (AddGroup (NormedAddGroupHom ↑V ↑W));
(V ⟶ W) →+ (SemiNormedGrp.completion.obj V ⟶ SemiNormedGrp.completion.obj W)

full_name: SemiNormedGrp.completion.map_zero
code: theorem completion.map_zero (V W : SemiNormedGrp) : completion.map (0 : V ⟶ W) = 0 
goal: SemiNormedGrp.completion.map 0 = 0

full_name: SemiNormedGrp.instPreadditive
code: instance : Preadditive SemiNormedGrp.{u} 
goal: CategoryTheory.Preadditive SemiNormedGrp

full_name: SemiNormedGrp.instAdditiveCompletion
code: instance : Functor.Additive completion 
goal: SemiNormedGrp.completion.Additive

full_name: SemiNormedGrp.completion.lift
code: /-- Given a normed group hom `f : V → W` with `W` complete, this provides a lift of `f` to
the completion of `V`. The lemmas `lift_unique` and `lift_comp_incl` provide the api for the
universal property of the completion. -/
def completion.lift {V W : SemiNormedGrp} [CompleteSpace W] [T0Space W] (f : V ⟶ W) :
    completion.obj V ⟶ W 
goal: SemiNormedGrp.completion.obj V ⟶ W

full_name: SemiNormedGrp.completion.lift_comp_incl
code: theorem completion.lift_comp_incl {V W : SemiNormedGrp} [CompleteSpace W] [T0Space W]
    (f : V ⟶ W) : completion.incl ≫ completion.lift f = f 
goal: SemiNormedGrp.completion.incl ≫ SemiNormedGrp.completion.lift f = f

full_name: SemiNormedGrp.completion.lift_unique
code: theorem completion.lift_unique {V W : SemiNormedGrp} [CompleteSpace W] [T0Space W]
    (f : V ⟶ W) (g : completion.obj V ⟶ W) : completion.incl ≫ g = f → g = completion.lift f 
goal: SemiNormedGrp.completion.incl ≫ g = f → g = SemiNormedGrp.completion.lift f