Documentation

Mathlib.Algebra.Group.Action.Option

Option instances for additive and multiplicative actions #

This file defines instances for additive and multiplicative actions on Option type. Scalar multiplication is defined by a • some b = some (a • b) and a • none = none.

See also #

instance Option.instSMul_mathlib {M : Type u_1} {α : Type u_3} [SMul M α] :
SMul M (Option α)
Equations
    instance Option.VAdd {M : Type u_1} {α : Type u_3} [_root_.VAdd M α] :
    Equations
      theorem Option.smul_def {M : Type u_1} {α : Type u_3} [SMul M α] (a : M) (x : Option α) :
      a x = Option.map (fun (x : α) => a x) x
      theorem Option.vadd_def {M : Type u_1} {α : Type u_3} [_root_.VAdd M α] (a : M) (x : Option α) :
      a +ᵥ x = Option.map (fun (x : α) => a +ᵥ x) x
      @[simp]
      theorem Option.smul_none {M : Type u_1} {α : Type u_3} [SMul M α] (a : M) :
      @[simp]
      theorem Option.vadd_none {M : Type u_1} {α : Type u_3} [_root_.VAdd M α] (a : M) :
      @[simp]
      theorem Option.smul_some {M : Type u_1} {α : Type u_3} [SMul M α] (a : M) (b : α) :
      a some b = some (a b)
      @[simp]
      theorem Option.vadd_some {M : Type u_1} {α : Type u_3} [_root_.VAdd M α] (a : M) (b : α) :
      a +ᵥ some b = some (a +ᵥ b)
      instance Option.instIsScalarTowerOfSMul {M : Type u_1} {N : Type u_2} {α : Type u_3} [SMul M α] [SMul N α] [SMul M N] [IsScalarTower M N α] :
      instance Option.instVAddAssocClassOfVAdd {M : Type u_1} {N : Type u_2} {α : Type u_3} [_root_.VAdd M α] [_root_.VAdd N α] [_root_.VAdd M N] [VAddAssocClass M N α] :
      instance Option.instSMulCommClass {M : Type u_1} {N : Type u_2} {α : Type u_3} [SMul M α] [SMul N α] [SMulCommClass M N α] :
      instance Option.instVAddCommClass {M : Type u_1} {N : Type u_2} {α : Type u_3} [_root_.VAdd M α] [_root_.VAdd N α] [VAddCommClass M N α] :
      instance Option.instIsCentralScalar {M : Type u_1} {α : Type u_3} [SMul M α] [SMul Mᵐᵒᵖ α] [IsCentralScalar M α] :
      instance Option.instFaithfulSMul {M : Type u_1} {α : Type u_3} [SMul M α] [FaithfulSMul M α] :
      instance Option.instFaithfulVAdd {M : Type u_1} {α : Type u_3} [_root_.VAdd M α] [FaithfulVAdd M α] :
      instance Option.instMulAction {M : Type u_1} {α : Type u_3} [Monoid M] [MulAction M α] :
      Equations