Karim Belabas on Mon, 18 Sep 2006 11:42:29 +0200


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: Ideal representation in relative extensions


* Thomas Obkircher [2006-09-17 23:25]:
> I'm dealing with ideals in relative extensions, I read the relevant
> parts in the Manual as well as the other mailing list entries concerning
> relative extensions, but I still don't understand the notion of a
> "relative pseudo basis".
> 
> The concrete problem ist that I want to verify whether the Classgroup of
> L/Q corresponds to a given representation in L/K.
> 
> py=y^2-5;
> w5= Mod(y,py);
> K = bnfinit(py);
> 
> px = x^4+15*x^2+55;
> mu = Mod(x,px);
> L = bnfinit(px);
> 
> p_rel = x^2+(8+(-1+w5)/2);
> K_L = rnfinit(K, p_rel);

1) I notice (and will use that fact later) that px = K_L.pol

2) There is a distinct potential for confusion here since x is the main
variable of p_rel  representing the element (x mod p_rel) in L ~ K[x] / p_rel,
_and_    of px     representing the element (x mod px) in L = Q[x] / px.

Fortunately, from the 3rd component of K_L[11] ( = 0 ), these two elements
are in fact one and the same (via the above isomorphism), so we should
be fine !

> // ok, now we want the representations of the classgroup generators in
> L/K e.g.
> 
> g1_rel = rnfidealabstorel(K_L, K.gen[1])

You probably mean L.gen[1].  (O_K is principal, so K.gen[1] doesn't exist.)

Then the correct command (see ??rnfidealabstorel) would be

  g1_rel = rnfidealabstorel(K_L, L.zk * L.gen[1])

and I indeed get:

> // [[[1, 0]~, [0, -1]~; [0, 0]~, [1, 0]~], [[3, 0; 0, 3], [1, 0; 0, 1]]]

1) K.zk says that the chosen integer basis for the base field is
[1, (w5-1)/2 ].

2) K_L[7] says that the relative integer basis is O_K + x O_K

3) The pseudo-matrix above has colums 
  a = [[1, 0]~,  [0, 0]~]~ = 1
  b = [[0, -1]~, [1, 0]~]~ = -(w5-1)/2 + x

So the above "relative ideal" really is  3 O_K + b O_K

> g2_rel = rnfidealabstorel(K_L, K.gen[2])
> //  [[[1, 0]~, [-1, -1]~; [0, 0]~, [1, 0]~], [[2, 0; 0, 2], [1, 0; 0,
> 1]]]
> 
> g3_rel = rnfidealabstorel(K_L, K.gen[1]*K.gen[2])
> // [[[1, 0]~, [-3, 2]~; [0, 0]~, [1, 0]~], [[6, 0; 0, 6], [1, 0; 0, 1]]]

You probably want to introduce idealmul(L, L.gen[1], L.gen[2]) here
[ not ordinary matrix multiplication ! ]

> ...
> these relative representations should correspond somehow to the
> following ideals, where O_K is the ring of integers of K:
> A_2 = (-3+      (-1+\sqrt(5))/2 \mu) O_K + \mu O_K

In GP, that would be

  A_2 = [[-3, 0; (y-1)/2, 1], [idealhnf(K,1), idealhnf(K,1)]]

Note that this is actually 3 O_K + mu O_K, since (y-1)/2 is integral.
Also N_{L/K}(mu) = -(8+(-1+w5)/2), and the absolute norm of the latter
is 55, which is coprime to 3.  [ norm(Mod(x,px) --> 55 confirms that
computation ]

Assuming A_2 is indeed an ideal (i.e an O_L-module), it must be equal to O_L !
Let us check this assumption: what is mu^2, well -(8+(-1+w5)/2) obviously.
Unfortunately, the latter does not belong to 3 O_K, so A_2 is not an O_L-ideal
and we are in trouble.

Further notes:

The documentation of rnfidealreltoabs introduces the following helper routine:

  idealgentoHNF(nf, y) = mathnf( Mat( nfalgtobasis(nf, y) ) );

  ? idealgentoHNF(L, rnfidealreltoabs(K_L, A_2))
  %5 =
  [3 0 0 0]

  [0 3 0 0]

  [0 0 1 0]

  [0 0 0 1]

which, as expected and according to nfisideal(L,%), is still not an ideal.

> Accordung the manual relative ideals are given by a "relative pseudo
> matrix" which is the sum over the ideals multiplied by the according
> columns of the first matrix, whose entries are given in a O_K Basis.
> 
> But what does this exactly mean? We have A a + B b , where A,B are
> Ideals and a,b are VECTORS. Is this a representation in the Z_L basis of
> the extension?

Yes, they are expressed in terms of the pseudo matrix which is the first
component of the relative Z_L basis given by K_L[7].

> How can I see the correspondance to the mentioned ideals?
> 
> Thanks in advance for some explanatory words...

Hope this helps (and does not contain too many typos).

Cheers,

    K.B.
--
Karim Belabas                  Tel: (+33) (0)5 40 00 26 17
Universite Bordeaux 1          Fax: (+33) (0)5 40 00 69 50
351, cours de la Liberation    http://www.math.u-bordeaux.fr/~belabas/
F-33405 Talence (France)       http://pari.math.u-bordeaux.fr/  [PARI/GP]
`