Documentation

LeanPool.CompositionAlgebrasOverRings.Nonassociative.Subalgebra

Unital subalgebras of non-associative algebras #

Mathlib's Subalgebra requires an associative Semiring, while its NonUnitalSubalgebra works for a NonUnitalNonAssocSemiring. Composition algebras are unital but need not be associative, so neither object alone represents their unital subalgebras. This file adds the missing one-field wrapper.

Main definitions #

Implementation notes #

⚠ This is deliberately not named Subalgebra: mathlib owns that name for associative algebras. The underlying multiplication and scalar-action API is inherited from NonUnitalSubalgebra; only the unit is new. With it a NonAssocSubalgebra is a SubringClass, from which mathlib supplies the unit, the casts and the NonAssocRing structure on each subalgebra (SubringClass.toNonAssocRing).

structure NonAssocSubalgebra (R : Type u) (A : Type v) [CommRing R] [NonAssocRing A] [Module R A] extends NonUnitalSubalgebra R A :

A unital subalgebra of a possibly non-associative algebra.

Instances For
    @[instance_reducible]
    Equations