How to use generic quotients?

71 views
Skip to first unread message

Michael Jung

unread,
Jul 26, 2021, 2:40:25 PM7/26/21
to sage-devel
Hello everyone,

In https://trac.sagemath.org/ticket/32272, I am trying to implement graded algebras with finite degree. I have troubles constructing a (generic) quotient. Here is what happens without a ngens method:

sage: from sage.algebras.commutative_graded_algebra_finite import FiniteGCAlgebra
sage: A.<x,y,z> = FiniteGCAlgebra(QQ, degrees=(1,2,3), max_degree=6)
sage: I = A.ideal(y^2)
sage: A.quotient(I)
Traceback (most recent call last)
...
RuntimeError: Graded commutative algebra with generators ('x', 'y', 'z') in degrees (1, 2, 3) with maximal finite degree 6 still using old coercion framework


Adding a ngens method on the other hand causes the quotients not to function properly:

sage: from sage.algebras.commutative_graded_algebra_finite import FiniteGCAlgebra
sage: A.<x,y,z> = FiniteGCAlgebra(QQ, degrees=(1,2,3), max_degree=6)
sage: I = A.ideal(y^2)
sage: Q = A.quotient(I)
sage: Q.gen(0)*Q.gen(1)                                               
xbar*ybar


The result, however, should be zero.

What am I doing wrong? Help is very much appreciated! :)

Michael Jung

unread,
Jul 26, 2021, 2:43:33 PM7/26/21
to sage-devel
Sorry, the last example is of course

sage: from sage.algebras.commutative_graded_algebra_finite import FiniteGCAlgebra
sage: A.<x,y,z> = FiniteGCAlgebra(QQ, degrees=(1,2,3), max_degree=6)
sage: I = A.ideal(y^2)
sage: Q = A.quotient(I)
sage: Q.gen(1)^2
ybar^2

Trevor Karn

unread,
Jul 27, 2021, 8:23:37 AM7/27/21
to sage-devel
Check out this ask.sagemath.org post: https://ask.sagemath.org/question/56243/quotients-of-exterior-algebras/. You could try to implement a specific ideal for the graded commutative algebras. I opened a ticket https://trac.sagemath.org/ticket/32249 to start doing this but in the meantime got pulled toward other tasks for my GSoC project. 

Michael Jung

unread,
Jul 27, 2021, 9:33:13 AM7/27/21
to sage-devel
Thank you Trevor! This was extremely helpful!

Trevor Karn

unread,
Jul 27, 2021, 3:29:44 PM7/27/21
to sage-devel
I'm glad it was helpful! I think I'd like to add a NotImplementedError on the Ideal_nc.reduce() method until we are able to implement the quotients in #32249. Does anyone see any reason not to implement such an error? Or at least a warning?

Michael Jung

unread,
Jul 27, 2021, 4:19:50 PM7/27/21
to sage-devel
+1

The only problem I can imagine is that some implementations might rely on that behavior...
Reply all
Reply to author
Forward
0 new messages