Hi, I was hoping to post this question to to the sage-support group
directly, but my membership has not yet been approved.

I am having trouble implementing complex conjugation in a relative
extension of a cyclotomic field.  I create my field in Sage as
follows:

sage: Q3 = CyclotomicField(3)
sage: z3 = Q3.0
sage: x = polygen(Q3,'x')
sage: Q32.<s2> = Q3[sqrt(Q3(2))]

Then I would like to compute the complex conjugate of an element as
follows, but it doesn't work:

sage: (s2*z3).conjugate()
Traceback (most recent call last):
...
NotImplementedError: complex conjugation is not implemented (or
doesn't make sense).

Okay, but just to check, Sage does know how to conjugate elements of
the base field:

sage: z3.conjugate()
-zeta3 - 1

So one thing to try is to explicitly construct the homomorphism.
First I check the generators:

sage: Q32.gens()
(sqrt2, zeta3)

Then I try to construct what I need:

sage: Q32.hom([s2,z3^2])
Traceback (most recent call last):
...
TypeError: images do not define a valid homomorphism

Somewhere in the documentation, it says that you can list all the
automorphisms (not just those that preserve the base field) by using
embeddings().  And indeed, I find the automorphism I need in that
list:

sage: Q32.embeddings(Q32)[3]
Relative number field endomorphism of Number Field in sqrt2 with
defining polynomial x^2 - 2 over its base field
  Defn: sqrt2 |--> sqrt2
        zeta3 |--> -zeta3 - 1

So can someone please advise me how to construct this in general?  Is
this a bug, or just something that is not implemented yet?

Thanks in advance,
Jon
-- 
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org

Reply via email to