John,

apologies for the late reply.

Thanks for giving the road map of how to tackle that thing in SAGE. I am 
very sure if I can do that since I am real newbie to SAGE, but I will 
give it a try when I have the time. Maybe during the weekend.

Thank you very much.

Best wishes,
J.

On 03.09.2008 12:12, John Cremona wrote:
> That is a good question.
> 
> Sage's number fields get their units and regulator by calling the
> corresponding functions in the pari library.  As far as I can see the
> pari library does not have a function to compute th regulator of an
> arbitrary set of units.  It would not be hard to implement this in
> Sage.
> 
> The ingredients you need are:
>  * K.complex_embeddings()  gives all the embeddings of K into CC (the
> complex numbers).
> You would need to  eliminate one of ecah conjugate pair of embeddings.
> 
> TODO: implement a flag to complex_embeddings() which only gives one of
> each pair.
> 
> * Now just evaluate the embeddings on your units, take logs, construct
> the appropriate matrix of those and find its determinant.
> 
> * To find the index of your units, divide their regulator by the
> field's regulator.
> 
> I have skated over some details, like what to do if the number of your
> units is different from the unit rank.
> 
> Harder TODO:  given any unit and a Z-basis for the units, express your
> unit as a Z-linear combination of the generators.
> 
> If that was implemented, then the answer to your original question
> would be a simple matter of finding the determinant of an integer
> matrix.
> 
> These are all things which it would be good to have implemented in
> Sage.  Feel free to do so and submit a patch!
> 
> John Cremona
> 
> 2008/9/3 Jannick Asmus <[EMAIL PROTECTED]>:
>> Dear All,
>>
>> suppose that K is a number field and U the group of units in the maximal
>> order of K. Then the rank r of U, i.e. the rank r of the free group U_f=
>> U/Tor(U) (where Tor(U) denotes the group of torsion elements in U) is
>> given by Dirichlet's unit theorem. Clearly r is the dimension of the
>> Q-vector space U_Q = U (x)_Z Q.
>>
>> Sage gives a basis of U_Q (sage: K.units()).
>>
>> Now given r units u_1,...,u_r how can it be tested that the u's generate
>> U_Q - or are linearly independent over Q?
>>
>> If the structure of U_Q was additive, this might not be a problem for
>> SAGE as it is a standard problem in linear algebra boiling down to
>> calculate a determinant. But how to tackle this problem when the
>> structure of the Q-vector space is multiplicative, at least in notation.
>>
>> Alternatively we could consider the quotient group U/(u_1,...,u_r) and
>> test if it is of finite order.
>>
>> Thanks for any help.
>>
>> Please do not hesitate to ask for more information if something is
>> unclear or needs more information.
>>
>> Best wishes,
>> J.

--~--~---------~--~----~------------~-------~--~----~
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
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to