Unexpected error with sign() function in SageMath

asked 2023-09-06 19:04:54 +0100

anonymous user

Anonymous

I have the following rather strange issue with SageMath. More specifically the problem seem to be related with SageMath libraries dealing with permutations and Lie algebras. Here is the part of the code which does not compile properly for some reason:

gl = lie_algebras.gl(QQ, 4)
Ugl = gl.pbw_basis()
E = matrix(Ugl, 4, 4, Ugl.gens())

for sigma in Permutations(4):
    for tau in Permutations(4):
        pr = sigma.signature() * tau.signature()
    for i in range(4):
        pr = pr * E[sigma[i] - 1, tau[i] - 1]

The interesting thing is that while the code above does not work well, the issue could be resolved just by adding 1 *, see below:

gl = lie_algebras.gl(QQ, 4)
Ugl = gl.pbw_basis()
E = matrix(Ugl, 4, 4, Ugl.gens())

for sigma in Permutations(4):
    for tau in Permutations(4):
        pr = sigma.signature() * tau.signature()
    for i in range(4):
        pr = 1 * pr * E[sigma[i] - 1, tau[i] - 1]

My experiments show that there is some issue with SageMath function signature() since if I replace the line pr = sigma.signature() * tau.signature() with pr = 1, then both versions compile successfully. The final block of the error message for the first excerpt is as follows:

/usr/lib/python3/dist-packages/sage/algebras/lie_algebras/poincare_birkhoff_witt.py in _act_on_(self, x, self_on_left)
    513             # Try the _acted_upon_ first as it might have a direct PBW action
    514             #   implemented that is faster
--> 515             ret = x._acted_upon_(self, not self_on_left)
    516             if ret is not None:
    517                 return ret

AttributeError: 'int' object has no attribute '_acted_upon_'

Therefore, it might be the case that there is something strange happening with the action of integers on element of Lie algebras (some type-related issue?).

Of course, since the second version works I can proceed, but it looks weird and I would be really interested in understanding the source of this error (to avoid similar ones in the future).

Comment. I did no realize at first that for SageMath there is a special Q&A forum, so initially I posted it on SE.

edit retag flag offensive close merge delete

Comments

I have an answer at https://stackoverflow.com/a/77054009/.... Also, I think this is a bug, and I've reported it at https://github.com/sagemath/sage/issu....

John Palmieri gravatar imageJohn Palmieri ( 2023-09-06 20:57:32 +0100 )edit