Ask Your Question

JoaoDDuarte's profile - activity

2020-07-25 20:19:13 +0100 received badge  Popular Question (source)
2020-06-30 16:45:57 +0100 received badge  Good Question (source)
2019-07-02 14:52:54 +0100 received badge  Nice Question (source)
2019-06-29 23:21:28 +0100 received badge  Editor (source)
2019-06-29 19:01:11 +0100 asked a question Calculating Cauchy Integrals in Sage

Hi!

I am relatively new to complex analysis and I am trying to write down the following integral in Sage Math:

$$ I(k) = \frac{1}{2i\pi}\oint\frac{(1-t^2)}{(1-t)^n}\frac{dt}{t^{k+1}} $$

from a paper that can be found at: http://magali.bardet.free.fr/Publis/l...

The contour is a unit circle around the origin with a radius less than 1.

whereby $$S(n) = \frac{(1-t^2)}{(1-t)^n} $$ is a formal power series. The Cauchy Integral will produce the k-th coefficient of $S(n)$. I tried doing the following:

def deg_reg_Cauchy(k, n, m):
    R.<t> = PowerSeriesRing(CC, 't')
    constant_term = 1/(2*I*pi)
    s = (1-t**2)**m / (t**(k+1)*(1-t)**n)
    s1 = constant_term * s.integral()
    return s1

I realize this is probably very wrong and I used $0$ till $2\pi$ as simple placeholders until I find appropriate values. Does anyone have any tips on how to go about this, please? Below is the error message that is being outputted by Sage.

ArithmeticError: The integral of is not a Laurent series, since t^-1 has nonzero coefficient.

Thank you!

2018-11-30 17:10:57 +0100 commented answer Reduction In Quotient Rings (x^2 - x = 0)

Perfect! Thank you, you've saved me a considerable amount of time by not having to lift all my polynomials to a quotient ring

2018-11-30 17:09:09 +0100 received badge  Scholar (source)
2018-11-30 17:09:08 +0100 received badge  Supporter (source)
2018-11-30 11:21:33 +0100 received badge  Student (source)
2018-11-30 09:38:24 +0100 commented question Reduction In Quotient Rings (x^2 - x = 0)

Ok, I believe that by doing

Q(f1).lift()

it works. But this can make the code quite ugly if I need to work exclusively with this Q...is there a better way of doing this, please?

2018-11-30 09:38:24 +0100 asked a question Reduction In Quotient Rings (x^2 - x = 0)

Hi,

Thank you for taking the time to read this, it is very much appreciated.

My question concerns how to ensure that a polynomial within a quotient ring has the following property:

 (x^2)k = 0

whereby x is any variable in the quotient ring and k is a positive integer.

This is the way I tried to go about the situation: I created a polynomial ring

P.<x,y,z,w> = PolynomialRing(GF(2), 4, order = 'degrevlex')

Since I am not working within a quotient ring, x^2 (or any of the other three variables) does not 'become' 0. Since I would like the property of x^2 = 0, I decided to create a quotient ring with some field equations:

Q = P.quotient_ring(ideal([var**q - var for var in P.gens()]))

whereby q = P.base_ring.order() . However, when I then created the following polynomial, its parent was still P, so I changed its ring:

f1 = y*z + y*w + w^2
f1 = f1.change_ring(Q)

However, when I print f1, it, w^2 is still w^2 and has not reduced down to 0. I was wondering if I am missing something, please? This gets annoying because I am going to be working with Macaulay Matrices and hence, it is essential that I work within a quotient ring. Maybe I am missing some mathematics since this is all very new to me...

This is my sage input:

sage: P.<x,y,z,w> = PolynomialRing(GF(2), 4, order = 'degrevlex')
sage: q = P.base_ring().order()
sage: Q = P.quotient_ring(ideal([var**q - var for var in P.gens()]))
sage: f1 = y*z + y*w + w^2
sage: f1
y*z + y*w + w^2
sage: f1 = f1.change_ring(Q)
sage: f1
y*z + y*w + w^2

How would go about to ensure that w^2 = 0? I've already tried adding the original polynomial to the field equations when creating the quotient ring and changing its ring afterwards, like so:

sage: P.<x,y,z,w> = PolynomialRing(GF(2), 4, order = 'degrevlex')
sage: q = P.base_ring().order()
sage: f1 = y*z + y*w + w^2
sage: Q = P.quotient_ring(ideal([f1] + [var**q - var for var in P.gens()]))
sage: f1 = f1.change_ring(Q)
sage: f1
y*z + y*w + w^2

But as you can see, nothing happened... Thank you!