On Jan 21, 2008 5:35 AM, Oscar Ledesma Hernandez > wrote: > Dear William Stein, > > I'm Oscar Ledesma, and I'm doing my PhD in Essen with Gerhard Frey. > I have a program to calculate n-Heegner point but in Magma,
What is an n Heegner point? > I want to > chage to SAGE ('couse I find it great), > but I have some problems to find the "traslation" of magma functions > to sage function... Anything in arithmetic geometry is hard to translate into Sage, because way too much has to be written from scratch. This is because an entire generation of research mathematicians in arithmetic geometry switched almost completely to Magma 10 years ago (not thinking at all about the implications of closed source, etc.), and almost all the coding work went there. I was one of them, so getting Sage to do everything in Arithmetic Geometry that Magma does is high on my priority list; however, it is amazingly hard, because Magma had literally 5-6 people working _full time_ for nearly a decade on this, and very little happened in the open source world in arithmetic geometry at the same time. > for example, I can't calculate the order of a reduced quadratic > form...even I can't multiple 2 reduced binary quadratic forms!!! > maybe I can't find the right functions... Sage includes PARI and PARI provides a ton of functionality for quadratic forms, so you could add some functionality to the Sage binary quadratic forms class that is implemented behind the scenes using PARI. But generally speaking when you dive into doing serious computations in arithmetic geometry you will find wholes in functionality in Sage and will have to fix them. That said, it is often useful to use the function search_src('string') which will search the new Sage library source code for instances of the string. This can help you find functionality that might not be listed in the reference manual yet. > or, in magma there is a function "IsInert(K,p)" . is there something > similar in Sage??? No. But you can factor ideals in absolute fields, so you could very easily write an is_inert() method on ideals or an K.is_inert(p) method on number_fields: sage: K.<a> = NumberField(x^3 + 2) sage: P = K.ideal(3) sage: P Fractional ideal (3) sage: P.factor() (Fractional ideal (-a + 1))^3 sage: K.factor_integer(7) Fractional ideal (7) sage: K.factor_integer(13) Fractional ideal (13) sage: K.factor_integer(17) (Fractional ideal (4*a^2 + 2*a + 1)) * (Fractional ideal (2*a - 1)) > I Have a bunch of data (heegner point for X(11) as text in magma > sintacts) can SAGE read this file? Sage has no special support for reading Magma syntax (not sintacs!) files. You can read a plain text file into Sage using r = open('foo').read() and then parse it. The Python language is superb for parsing plain text. > Have you got something like a dictionary SAGE - Magma? We don't. One problem is that both Sage and Magma are actually absolutely _huge_ systems (Sage is about 5 million lines of code and Magma is 2.5 million), and both have many many thousands of functions. It is very difficult to even begin to know where to start with such a dictionary, or even how to use one once you have one. Doing a dictionary for a specific area, e.g., linear algebra or number field would make a lot of sense. > Best Regards > > Oscar > > -- William Stein Associate Professor of Mathematics University of Washington http://wstein.org --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-support@googlegroups.com 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 -~----------~----~----~----~------~----~------~--~---