Post new topic Reply to topic  [ 3 posts ] 
Author Message
 Post subject: Maps over transcendental field extensions
PostPosted: Sun Mar 14, 2010 6:05 pm 

Joined: Thu Aug 11, 2005 8:03 pm
Posts: 40
Location: RWTH Aachen, Germany
I work over K(q) with K-linear maps.
(1) Is there some procedure, which makes correct analog to subst. I want to apply K(q)-automorphisms (even of order 2), they are of the form q-> (a+bq)/(c+dq) with a,b,c,d in K subject to some relations. At the moment subst says it "ignores denominators"...
(2) What I need further is the modification of type map indeed, since I need to do (anti-)morphisms of K and NOT of K(q)-algebras in noncommutative context, say (commutatively)
K(q)[x,y] -> K(q)[x,y], q->(a+bq)/(c+dq)=theta(q), x -> theta(x), y-> theta(y). Theta includes twisting on q, that is it's K- but not K(q)-linear.
HOWEVER: it is enough to apply this generalized map to a single object (poly/ideal/module/matrix). This will be used e.g. to extend the procedure involution from involut.lib to the case of quantum and quantized algebras.

Thanks in advance to any hints,
Viktor


Report this post
Top
 Profile  
Reply with quote  
 Post subject: Re: Maps over transcendental field extensions
PostPosted: Sat Mar 20, 2010 10:34 pm 

Joined: Wed Mar 03, 2010 5:08 pm
Posts: 108
Location: Germany, Münster
Dear Viktor,
ad 1) I really had difficulties to see the case where this message appears.

Then I found, that subst does not work, if the
poly or number in which we want to substitute has
denominators in the parameters.

So this trivial examples fails:
Code:
  > ring rt = (0,t),x,dp;
  > subst(2/t,t,t);
  // ** ignoring denominators of coefficients...
  2


but (yes!) I found a solution. See the proc parsubst below.

The idea is, first to clear the denominator, then use subst
and divide by the substituted denominator again.

Some care must be taken for the following cases:

i) if the input only consists of a parameter, then
cleardenom returns 1.

Here I multiply first with a ring variable, (hopefully this
will not change the result in the non-commutative case),

ii) if f(0)=0, we can not recover the denominator.
Therefore, I add a constant.

This two operations will be reversed at the end.

The example above and substitution as you mention will work.
Code:
  > parsubst(2/t,t,t);
  2/(t)
  > parsubst(2/t,t,(2t+4)/(3t+1))
  (3t+1)/(t+2)
 
  > // example parsubst
  > number q = (3t+4)/(2t+3);
  > parsubst(1/t,t,q);

  > poly f = t/(t-1)*x2 + 2/t;
  > parsubst(f,t,q);
  (3t+4)/(t+1)*x2+(4t+6)/(3t+4)
 



Code:
  proc parsubst(poly f,number t,number q)
  " USAGE: parsubst(f,t,q); f poly or number, t number, q number
  RETURN: poly, resp. number as the input type
  ASSUME: t is a parameter of the basering
  EXAMPLE: example parsubst; shows an example
  "
  {
    int is_constant = deg(f)==0;
    if  (is_constant) { f = f*var(1); } //  f was a number

    int zero_const_term = jet(f,0)==0;
    if (zero_const_term) { f = f + 1;}  //otherwise denom is lost
     
    poly g = cleardenom(f);
    number commondenom = leadcoef(g)/leadcoef(f);
    f = subst(g,t,q)/subst(commondenom,t,q);
    if (zero_const_term) { f = f - 1;}
    if(is_constant) { f = f/var(1);}
    return(f);
}
example
{
  "EXAMPLE:"; echo = 2;
  ring r=(0,t),x,dp;
   
  number q = (3t+4)/(2t+3);
  parsubst(1/t,t,q);

  poly f = t/(t-1)*x2 + 2/t;
  parsubst(f,t,q);
}


ad 2) If I understand correctly, then theta(x) would form
an rational expression built on variables?


Best regards,
Christian


Report this post
Top
 Profile  
Reply with quote  
 Post subject: Re: Maps over transcendental field extensions
PostPosted: Mon Mar 22, 2010 3:38 pm 

Joined: Wed Mar 03, 2010 5:08 pm
Posts: 108
Location: Germany, Münster
Could the following proc fit your pupose?

Code:
proc quantummap(poly f, number q)
{
  map qphi = basering,q*var(2),q*var(1),
  f = qphi(f);
  f = parsubst(f,q);
return(f);
}


Does it define a map your looking for?

Regards,
Christian


Report this post
Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 3 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:06 am
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group