| 1 | initial version |
Checking the documentation for NumberField (you can use "NumberField?" to print the documentation from within sage), I found an optional argument embedding which specifies the embedding into another field -- so you have to specify which zeta6 you mean:
Here are the roots over CC:
sage: cyclotomic_polynomial(6).base_extend(CC).roots()
[(0.500000000000000 - 0.866025403784439*I, 1), (0.500000000000000 + 0.866025403784439*I, 1)]
Here we use the first root for our embedding:
sage: K.<a>=NumberField(cyclotomic_polynomial(6), embedding=cyclotomic_polynomial(6).base_extend(CC).roots()[0][0])
sage: R=K.maximal_order()
sage: A=DirichletGroup(7)
sage: character=A[1]
sage: character(3) in R.fractional_ideal(a)
True
Coercing to CC shows what embedding we're using:
sage: CC(a)
0.500000000000000 - 0.866025403784439*I
You can also use the other root of the cyclotomic polynomial for your embedding:
sage: K.<a>=NumberField(cyclotomic_polynomial(6), embedding=cyclotomic_polynomial(6).base_extend(CC).roots()[1][0])
sage: CC(a)
0.500000000000000 + 0.866025403784439*I
You may also be interested in CyclotomicField, which I came across while I was looking at the documentation for NumberField -- it seems to construct the nth cyclotomic field with canonical embedding to CC automatically...
Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.