Module instances for FunLike types #
In this file we define various instances related to modules for FunLike types.
Note that currently, these are not registered as instances, but only abbrevs to avoid long
typeclass searches.
TODO: #
Add definitions and API for the coercion being a linear map, similar to FunLike.coeMonoidHom,
and related definitions.
A FunLike type with scalar multiplication that satisfies (m • f) x = m • f x and
0 x = 0, (f + g) x = f x + g x is a DistribSMul if β is a DistribSMul.
Equations
Instances For
A FunLike type with scalar multiplication that satisfies (m • f) x = m • f x
is a MulAction if β is a MulAction.
Equations
- FunLike.mulAction = Function.Injective.mulAction (fun (f : F) => ⇑f) ⋯ ⋯
Instances For
A FunLike type with scalar multiplication that satisfies (m • f) x = m • f x
is an AddAction if β is an AddAction.
Equations
- FunLike.addAction = Function.Injective.addAction (fun (f : F) => ⇑f) ⋯ ⋯
Instances For
A FunLike type with scalar multiplication that satisfies (m • f) x = m • f x, 0 x = 0,
(f + g) x = f x + g x is a DistribMulAction if β is a DistribMulAction.
Equations
Instances For
A FunLike type is a Module if β is a Module.
Equations
- FunLike.module = Function.Injective.module M (FunLike.coeAddMonoidHom F α β) ⋯ ⋯