Post new topic Reply to topic  [ 2 posts ] 
Author Message
 Post subject: Elements in local rings.
PostPosted: Thu Aug 11, 2005 5:32 pm 
HI,

I am having a problem for the computations in the local ring. Whenever I define an element in a local ring which is of the form f/g, gnotin m, where m is the max ideal of R. and the current working ring is Rm (localization of R by m).

For example,
> ring R=0,x,ds; // S=Q[x], m=<x>, R=Sm.
> poly f=1/(x+1);
> f;
0


Can somebody tell me why this is happening? Also is it possible to write an element of a local ring in the form of Nr/Dr. (Nr: numerator, Dr: denominator)


Regards

Vinay

P.S.
I have a request for the forum-administrator, that is it possible to send a copy of each reply/post to the concerned person by e-mail. (A mailing list would be an ideal situation, since an internet connection is not required for this continuously.)


email: vinay_wagh@yahoo.com
Posted in old Singular Forum on: 2003-04-28 11:45:24+02


Report this post
Top
  
Reply with quote  
 Post subject:
PostPosted: Thu Sep 22, 2005 7:38 pm 

Joined: Wed Sep 21, 2005 1:27 pm
Posts: 10
Location: Kaiserslautern, Germany
Dear Vinay,

the problem is the following: when inverting units in local rings, in general, the result is a power series (not a polynomial). Hence, it can only be computed up to a certain order. In your case,

1/(x+1) = 1-x+x^2-x^3+x^4-x^5+x^6...... .

There is a command "invunit(u,n)" in the library "mondromy.lib" which returns the series inverse of u up to order n (or a zero polynomial if u is no series unit).

For more details, you may have a look to the book "A Singular Introduction to Commutative Algebra" (by Greuel and Pfister), Chapter 6 -- there, you will also find a procedure showing how to compute the inverse up to a given order (Example 6.1.3) and much more on computing in local rings.

Now, some words about your computation: in K[x], you can perform a division with remainder:

f = a * g + r ( with deg(r) < deg g ).

What the "/" command returns is just the factor "a" (hence, in your case "0", while "x/(x+1)" would return "1").
This is generalized by the "division" command: it computes a division with remainder

u * f = a * g + r, u a unit

and returns the list "a,r,u" -- in your case
(1+x) * 1 = 1 * (1+x) + 0 :

> division (1,1+x);
[1]:
_[1,1]=1
[2]:
_[1]=0
[3]:
_[1,1]=1+x

Christoph Lossen
(Singular Team)

email: lossen@mathematik.uni-kl.de
Posted in old Singular Forum on: 2003-05-06 12:03:54+02


Report this post
Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 2 posts ] 

You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

It is currently Fri May 13, 2022 11:00 am
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group