2020-09-11 23:15:28 +0200 received badge ● Notable Question (source) 2017-10-11 00:10:15 +0200 received badge ● Popular Question (source) 2016-06-17 23:43:04 +0200 received badge ● Popular Question (source) 2015-06-14 00:48:40 +0200 commented answer About finding roots of polynomials in specific domains If I am reading the code correctly and R is a list, then you could try len(R) == 0 . If I misunderstood, then nevermind. 2015-06-14 00:44:39 +0200 asked a question Inverting a polynomial in a Quotient Polynomial Ring. I need to compute the inverse of a polynomial p (when such an inverse exists, of course) in Z_q[X]/(X^n+1) and Q[X]/(X^n+1). I tried the natural approach:  R. = PolynomialRing(QQ) I = R.ideal([x^2+1]) S = R.quotient_ring(I); p = S.random_element() p.inverse_mod??  I get NotImplementedError. Another approach I tried : I implemented addition and multiplication in a ring similar to Q[X]/(X^n+1) by doing the operations in Q[X] and then reducing mod (X^n+1). Inversing the polynomial has me stumped with this approach. Any ideas? Either code-wise or mathematical-wise. (To clarify, Z_q = Z/qZ.) 2015-06-10 18:04:32 +0200 received badge ● Supporter (source) 2015-06-10 13:43:12 +0200 asked a question Organizing files in Sage Cloud/modules I am working in sage cloud, in a worksheet (sagews). I wrote some classes and methods so far and I wish to keep them separated from my new code/organize my projects in files that I can import from. I want something like file Resources.(.py? .sage? .sagews?) with classes Foo, Foo2, Foo3 and to use this in a new spreadsheet:  from Resources import Foo2  While this seems like a basic question, the only thing I could discover on this topic was a similar unanswered question: http://ask.sagemath.org/question/2604... How do I do this? How do I split a project in several files(modules?) that I could import from? 2015-06-09 19:57:59 +0200 commented answer Quotient of Polynomial rings reduction not working I didn't know that, and it's going to help me tremendously. Thank you! 2015-06-09 18:37:51 +0200 received badge ● Scholar (source) 2015-06-09 18:37:33 +0200 commented answer Quotient of Polynomial rings reduction not working Thank you very much for your answer. I googled the commented code and found the source code, and I now understand why it wasn't working as expected. Since I'm working with a slightly more complicated ring than this (Z[x]/poly1/poly2), I am now trying to use overriding and inheritance (of PolynomialQuotientRing and QuotientRing, I hope that "_domain_with_category" isn't significant for this) to obtain the behaviour that I want (reduce, quo_rem...). Thank you. 2015-06-09 16:59:07 +0200 received badge ● Student (source) 2015-06-09 15:47:01 +0200 received badge ● Editor (source) 2015-06-09 15:44:26 +0200 asked a question Quotient of Polynomial rings reduction not working  R.=PolynomialRing(QQ) R.ideal(x^4).reduce(x^8+1) R.=PolynomialRing(ZZ) R.ideal(x^4).reduce(x^8+1) 1 x^8 + 1  Why am I not getting the result 1 in both cases? 2015-06-07 14:06:30 +0200 asked a question Polynomial Ring default_variable  class Params(object): ZR. = PolynomialRing(ZZ) self.R = ZR.quo((x^self.n+1)) self.QR = QuotientRing(self.R, self.R.ideal(self.g))  Where g is constructed as a polynomial in R with small coefficients. (g in R returns true). I wish to construct the lattice generated by g: (n = 512, q is a very large value, g = -173xbar^511 - 22xbar^510 +...)  gen_lattice(type='ideal', n=self.n-1, m=self.n, q=self.q, seed=23, quotient=self.g)  I get the following error: AttributeError: 'PolynomialQuotientRing_domain_with_category.element_class' object has no attribute 'default_variable' From my point of view, sage doesn't know what to use as a symbolic variable to g. How do I assign a variable to g? var('x') var('xbar') before the gen_lattice call don't work, and neither I can use self.R. = ZR.quo((x^self.n+1)) (although R. = ZR.quo((x^self.n+1)) ) works.