Free nilpotent Lie algebra of step 3 with 11 generators

This works:

S = LieAlgebra(QQ, 10, step=3, names='X', naming='linear')


and this works:

S = LieAlgebra(QQ, 11, step=2, names='X', naming='linear')


but this doesn't work:

S = LieAlgebra(QQ, 11, step=3, names='X', naming='linear')


though it should?

Traceback:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-79-8672234ea66b> in <module>()
----> 1 S = LieAlgebra(QQ, Integer(11), step=Integer(3), names='X', naming='linear')

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/misc/classcall_metaclass.pyx in sage.misc.classcall_metaclass.ClasscallMetaclass.__call__ (build/cythonized/sage/misc/classcall_metaclass.c:1640)()
327         """
328         if cls.classcall is not None:
--> 329             return cls.classcall(cls, *args, **kwds)
330         else:
331             # Fast version of type.__call__(cls, *args, **kwds)

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/algebras/lie_algebras/lie_algebra.pyc in __classcall_private__(cls, R, arg0, arg1, names, index_set, abelian, nilpotent, category, **kwds)
439                 from sage.algebras.lie_algebras.nilpotent_lie_algebra import FreeNilpotentLieAlgebra
440                 del kwds["step"]
--> 441                 return FreeNilpotentLieAlgebra(R, arg1, step, names=names, **kwds)
442             elif nilpotent:
443                 raise ValueError("free nilpotent Lie algebras must have a"

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/misc/classcall_metaclass.pyx in sage.misc.classcall_metaclass.ClasscallMetaclass.__call__ (build/cythonized/sage/misc/classcall_metaclass.c:1640)()
327         """
328         if cls.classcall is not None:
--> 329             return cls.classcall(cls, *args, **kwds)
330         else:
331             # Fast version of type.__call__(cls, *args, **kwds)

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/algebras/lie_algebras/nilpotent_lie_algebra.pyc in __classcall_private__(cls, R, r, s, names, naming, category, **kwds)
325         return super(FreeNilpotentLieAlgebra, cls).__classcall__(
326             cls, R,r, s, names=tuple(names), naming=naming,
--> 327             category=category, **kwds)
328
329     def __init__(self, R, r, s, names, naming, category, **kwds):

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/misc/cachefunc.pyx in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:6301)()
1003                 return self.cache[k]
1004         except KeyError:
-> 1005             w = self.f(*args, **kwds)
1006             self.cache[k] = w
1007             return w

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/structure/unique_representation.py in __classcall__(cls, *args, **options)
1025             True
1026         """
-> 1027         instance = typecall(cls, *args, **options)
1028         assert isinstance( instance, cls )
1029         if instance.__class__.__reduce__ == CachedRepresentation.__reduce__:

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/misc/classcall_metaclass.pyx in sage.misc.classcall_metaclass.typecall (build/cythonized/sage/misc/classcall_metaclass.c:2090)()
494             TypeError: Argument 'cls' has incorrect type (expected type, got classobj)
495     """
--> 496     return (<PyTypeObject*>type).tp_call(cls, args, kwds)
497
498 # Class for timing::

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/algebras/lie_algebras/nilpotent_lie_algebra.pyc in __init__(self, R, r, s, names, naming, category, **kwds)
398                     for X_ind, X in basis_by_deg[dx]:
399                         for Y_ind, Y in basis_by_deg[dy]:
--> 400                             Z = L[X, Y]
401                             if not Z.is_zero():
402                                 s_coeff[(X_ind, Y_ind)] = {W_ind: Z[W.leading_support()]

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/algebras/lie_algebras/lie_algebra.pyc in __getitem__(self, x)
573                 return x[1].ideal(x[0])
574             # Otherwise it is the bracket of two elements
--> 575             return self(x[0])._bracket_(self(x[1]))
576         return super(LieAlgebra, self).__getitem__(x)
577

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/algebras/lie_algebras/lie_algebra_element.pyx in sage.algebras.lie_algebras.lie_algebra_element.FreeLieAlgebraElement._bracket_ (build/cythonized/sage/algebras/lie_algebras/lie_algebra_element.c:19132)()
1452                     a, b = mr, ml
1453                     cr = -cr
-> 1454                 for b_elt, coeff in self.parent()._rewrite_bracket(a, b).iteritems():
1455                     d[b_elt] = d.get(b_elt, zero) + cl * cr * coeff
1456                     if d[b_elt] == zero:

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/misc/cachefunc.pyx in sage.misc.cachefunc.CachedMethodCaller.__call__ (build/cythonized/sage/misc/cachefunc.c:10824)()
1951                 return cache[k]
1952         except KeyError:
-> 1953             w = self._instance_call(*args, **kwds)
1954             cache[k] = w
1955             return w

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/misc/cachefunc.pyx in sage.misc.cachefunc.CachedMethodCaller._instance_call (build/cythonized/sage/misc/cachefunc.c:10280)()
1827             True
1828         """
-> 1829         return self.f(self._instance, *args, **kwds)
1830
1831     cdef fix_args_kwds(self, tuple args, dict kwds):

/opt/sagemath-8.4/local/lib/python2.7/site-packages/sage/algebras/lie_algebras/free_lie_algebra.pyc in _rewrite_bracket(self, l, r)
690             # For a similar reason, we have b >= c.
691             # Compute the left summand
--> 692             for m, inner_coeff in iteritems(self._rewrite_bracket(l._right, r)):
693                 if l._left == m:
694                     continue

AttributeError: 'sage.algebras.lie_algebras.lie_algebra_element.Lie' object has no attribute '_right'

edit retag close merge delete

Sort by ยป oldest newest most voted

This has been submitted as trac ticket #27018 and subsequently it was fixed.

more