Equations
- PUnit.algebra = { toSMul := PUnit.smul, algebraMap := { toFun := fun (x : R) => PUnit.unit, map_one' := ⋯, map_mul' := ⋯, map_zero' := ⋯, map_add' := ⋯ }, commutes' := ⋯, smul_def' := ⋯ }
Equations
- One or more equations did not get rendered due to their size.
Algebra over a subsemiring. This builds upon Subsemiring.module.
Equations
- Algebra.ofSubsemiring S = { smul := fun (x1 : ↥S) (x2 : A) => x1 • x2, algebraMap := (algebraMap R A).comp S.subtype, commutes' := ⋯, smul_def' := ⋯ }
Algebra over a subring. This builds upon Subring.module.
Equations
- Algebra.ofSubring S = { smul := fun (x1 : ↥S) (x2 : A) => x1 • x2, algebraMap := (algebraMap R A).comp S.subtype, commutes' := ⋯, smul_def' := ⋯ }
Explicit characterization of the submonoid map in the case of an algebra.
S is made explicit to help with type inference
Equations
- Algebra.algebraMapSubmonoid S M = Submonoid.map (algebraMap R S) M
Instances For
A Semiring that is an Algebra over a commutative ring carries a natural Ring structure.
See note [reducible non-instances].
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
- Module.End.instAlgebra R S M = Algebra.ofModule ⋯ ⋯
An alternate statement of LinearMap.map_smul for when algebraMap is more convenient to
work with than •.
Semiring ⥤ ℕ-Alg
Equations
- Semiring.toNatAlgebra = { toSMul := AddMonoid.toNatSMul, algebraMap := Nat.castRingHom R, commutes' := ⋯, smul_def' := ⋯ }
Ring ⥤ ℤ-Alg
Equations
- Ring.toIntAlgebra R = { toSMul := SubNegMonoid.toZSMul, algebraMap := Int.castRingHom R, commutes' := ⋯, smul_def' := ⋯ }
A special case of eq_intCast' that happens to be true definitionally
Alias of NeZero.of_faithfulSMul.
Alias of FaithfulSMul.algebraMap_injective.
Alias of FaithfulSMul.algebraMap_eq_zero_iff.
Alias of FaithfulSMul.algebraMap_eq_one_iff.
Alias of NoZeroSMulDivisors.instOfFaithfulSMul.
If M is A-torsion free and algebraMap R A is injective, M is also R-torsion free.
Alias of NoZeroSMulDivisors.trans_faithfulSMul.
If M is A-torsion free and algebraMap R A is injective, M is also R-torsion free.
A-linearly coerce an R-linear map from M to A to a function, given an algebra A over
a commutative semiring R and M a module over R.
Equations
Instances For
TODO: The following lemmas no longer involve Algebra at all, and could be moved closer
to Algebra/Module/Submodule.lean. Currently this is tricky because ker, range, ⊤, and ⊥
are all defined in LinearAlgebra/Basic.lean.
If there is a linear map f : A →ₗ[R] B that preserves 1, then algebraMap R B r is
invertible when algebraMap R A r is.
Equations
- Invertible.algebraMapOfInvertibleAlgebraMap f hf h = { invOf := f ⅟ ((algebraMap R A) r), invOf_mul_self := ⋯, mul_invOf_self := ⋯ }
Instances For
If there is a linear map f : A →ₗ[R] B that preserves 1, then algebraMap R B r is
a unit when algebraMap R A r is.
If E is an F-algebra, and there exists an injective F-linear map from F to E,
then the algebra map from F to E is also injective.
If E is an F-algebra, and there exists a surjective F-linear map from F to E,
then the algebra map from F to E is also surjective.
If E is an F-algebra, and there exists a bijective F-linear map from F to E,
then the algebra map from F to E is also bijective.
NOTE: The same result can also be obtained if there are two F-linear maps from F to E,
one is injective, the other one is surjective. In this case, use
injective_algebraMap_of_linearMap and surjective_algebraMap_of_linearMap separately.
If E is an F-algebra, there exists an F-linear isomorphism from F to E (namely,
E is a free F-module of rank one), then the algebra map from F to E is bijective.
If R →+* S is surjective, then S-linear maps between modules are exactly R-linear maps.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If R →+* S is surjective, then R-linear maps are also S-linear.
Equations
Instances For
If R →+* S is surjective, then R-linear isomorphisms are also S-linear.