Salut Etienne,
at first: yes, it is possible to define this ring. However, I would like to know more details about
computations you like to perform.
Denoting X = x^{-1}, we obtain the following noncommutative relation with the differential operator d (stands for d/dx): d*X = X*d - X^2 or, by reverting the order of variables,
X*d = d*X + X^2. Since we're going to have a G-algebra (in order to compute with PLURAL), the ordering condition X*d > X^2 must be satisfied, which is equivalent in our case to d>X.
Thus, according to SINGULAR convention, in the linear pre-ordering of variables, used in the ring definition, d must precede X. But the original x can be placed where you want it to have. Here's an example for K[x,x^{-1},d]:
Code:
ring r = 0,(x,d,X),dp;
matrix @D[3][3];
@D[1,2]=1;
@D[2,3]=X^2;
def R = nc_algebra(1,@D); setring R;
by executing "R;" you will get the following information on the ring we just set up:
Code:
// characteristic : 0
// number of vars : 3
// block 1 : ordering dp
// : names x d X
// block 2 : ordering C
// noncommutative relations:
// dx=xd+1
// Xd=dX+X2
hence, as we can see, the relations are fine. Let's ensure that non-degeneracy conditions hold (well, we see that they do, but this check is helpful anyway):
Code:
LIB "nctools.lib";
ncdond();
Since it (as expected) returns 0, we're fine. But wait a second - what about relations x*X=X*x=1 ? We have not forgotten them, and since x and X commute, according to our definition, we can define a two sided ideal, generated by x*X-1 and pass to the factor algebra by the latter, as the following code illustrates:
Code:
ideal I = x*X-1;
qring Q = twostd(I);
By typing "Q;" we get the following description of K[x,x^{-1}]<d> as GR-algebra:
Code:
// characteristic : 0
// number of vars : 3
// block 1 : ordering dp
// : names x d X
// block 2 : ordering C
// noncommutative relations:
// dx=xd+1
// Xd=dX+X2
// quotient ring from ideal
_[1]=xX-1
So, it is the ring we want. Let's compute in it:
Code:
ideal A = x*d-1, d^2;
std(A);
what gives us d-X back, what's correct. C'est bon!