Commit 2023-11-17 13:15 3cc786ff
View on Github →refactor(Algebra/DualNumber): generalize the universal property to non-commutative rings (#7934)
The current universal properties of TrivSqZeroExt
and DualNumber
work only when the underlying ring is commutative.
This is not the case for things like the dual quaternions.
This generalizes both sets of results to the non-commutative case.
Unfortunately the new TrivSqZeroExt
version is rather involved, so this keeps the old statement as a special case.
The new DualNumber
version is less bad, so I just discarded the commutative special case.
For dual numbers, the generalization is from R[ε] →ₐ[R] B
to A[ε] →ₐ[R] B
, where R
is commutative but A
may not be.
Some variable names had to be shuffled to make the new statement look nice.