Hi, On Tue, Jan 28, 2014 at 07:04:10AM -0800, Martin Raum wrote: > Hi all: > > You might or might not know that the current implementation of short > vectors for quadratic forms (aka lattices) is, say, unreliable. We are > using PARI, which, as I was informed, never focused on anything like this. > Also, the current implementation is quite slow; unbearably slow by my means.
Which part of Sage code is it about ? To find short vectors of integer lattices, Sage uses fpLLL by default, which is assumed to be both fast and reliable: sage: M = random_matrix(ZZ, 100) sage: %time M.LLL().column(0) CPU times: user 0.78 s, sys: 0.00 s, total: 0.78 s Wall time: 0.79 s (0, 1, -1, 5, -1, -1, 6, -1, 4, 0, 0, -1, -6, -2, -2, 1, 3, -4, -7, 10, 3, -3, 2, 1, -3, -3, -2, 1, 1, 0, 2, 5, -1, -1, 1, 0, 1, 1, 6, 11, -5, -2, 4, -2, 1, 8, 5, 0, -4, 3, -1, -8, -7, 4, -1, 3, -10, 1, 1, -4, -7, 2, -9, -1, -13, 22, -6, 17, -5, -6, -6, 22, 6, -13, 8, 17, 10, 4, 10, -11, -7, 44, 7, 9, -19, -33, -15, 1, 45, -48, 23, 0, 13, 14, 80, 20, -246, -63, -233, -95010) Ciao, Thierry > I have an implementation using interval arithmetic which is not quite as > fast as Magma, but performes quite nicely. The implementation is in C++. I > originally wrote a Cython wrapper, it seems really hard to maintain, mostly > because several freatures of C++ are not easily wrapped of Cython. So I > have used boost::python, which even resulted in better performance. > > So, how likely is it that we will have a boost python as a standard > library? We already have headers, and the python part of boost is not even > too big (126 kb on my system). It would provide us with an alternative way > to wrap C++ code, which I personally am desperate for. > > In any event, I can prove the C++ code and my Cython wrapper, but I > wouldn't want to support this for the next years. > > Best, Martin > > -- > You received this message because you are subscribed to the Google Groups > "sage-devel" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sage-devel+unsubscr...@googlegroups.com. > To post to this group, send email to sage-devel@googlegroups.com. > Visit this group at http://groups.google.com/group/sage-devel. > For more options, visit https://groups.google.com/groups/opt_out. -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/groups/opt_out.