-
-
Notifications
You must be signed in to change notification settings - Fork 658
Description
Let's try to invert an element of a
finite-dimensional algebra over a field:
sage: QS3 = SymmetricGroupAlgebra(QQ, 3)
sage: qs = lambda p: QS3(Permutation(p))
sage: a = 3 * qs([1, 2, 3]) + qs([1, 3, 2]) + qs([2, 1, 3]))
sage: b = ~a; b
At the moment, this is not implemented.
The branch attached provides a naive implementation.
It does overshadow the __invert__
method on
AlgebrasWithBasis
, which however is unable to
invert anything but a scalar multiple of the unity
(and that only in the case when the unity is a
basis element). In theory, this could be a problem,
but I don't expect it to be.
I hope it doesn't overshadow any more efficient
__invert__
methods on other classes of algebras
via diamond inheritance. Anyone who knows the hierarchy?
CC: @tscrim @fchapoton @mkoeppe @jhpalmieri
Component: algebra
Keywords: algebras, algebras with bases, inverses
Author: Darij Grinberg
Branch/Commit: 836a681
Reviewer: Travis Scrimshaw
Issue created by migration from https://trac.sagemath.org/ticket/33250