Sage uses the generators delivered by the pari library. There is no way to change them that I know of, sorry. All I can suggest it that you work out what generators you want, express them in terms of the basis (there's a function for that) to get a matrix of integers. that should be invertible over Z (unless your constructed basis is not a basis!) and you can use it and its inverse to go between the two.
I'm sure it would be possible to enhance the unit-group functions to allow this to be done (I wrote that code, but it was a while ago), if there was sufficient demand and at least one volunteer! John Cremona On Jan 21, 11:12 pm, jtyard <[email protected]> wrote: > Is there a way to change the generators used in the internal > representation of the unit group of a number field? I am currently > doing this by hand in an ad-hoc manner and it is very tedious, not to > mention prone to mistakes. To be concrete, consider the following: > > sage: CyclotomicField(5).unit_group().gens() > > [-zeta5, zeta5^3 + zeta5] > > I would rather the fundamental unit be real (so multiplied by zeta3), > so that it is > > -zeta5^3 - zeta5^2 - 1 > > In particular, it needs to work with .log and .exp, and I need to be > able to act on the group elements with field automorphisms. In case > it matters, I am using Sage 4.3.0. > > Thanks, > 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
