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.

Reply via email to