Ask Your Question

Wizq's profile - activity

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.<x> = 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.<x>=PolynomialRing(QQ)
R.ideal(x^4).reduce(x^8+1)
R.<x>=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.<x> = 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.<x> = ZR.quo((x^self.n+1)) (although R.<x> = ZR.quo((x^self.n+1)) ) works.