On Friday, April 4, 2014 12:36:02 PM UTC+2, Volker Braun wrote:
>
> On Friday, April 4, 2014 11:19:11 AM UTC+1, Martin Albrecht wrote:
>>
>> existing one. However, in my case it would seem natural to improve the 
>> basis 
>> during the lifetime of an object.
>
>
> IMHO that is always going to cause tears later on as the end-user isn't 
> going to be aware that this modified all references to the lattice. The 
> only downside of returning new objects is memory, and I'm pretty sure your 
> problem runs of CPU before RAM. If you don't like that your lattice has a 
> built-in basis then you could return new BasisOfLattice (say) objects.
>

Indeed, I think changing the basis of a lattice in place will break 
the expected interface of users or programs for that lattice.
One could have a function such as LLL_basis() if you want a 
light function which avoids creating a new object, or possibly 
cache a reduced basis, which could be accessed later (but 
then there is the issue of the different parameters input to LLL 
or other algorithms Minkowski, BKZ, etc. which could produce 
different concepts or levels of reduction).  But the basis which 
is used for the interface to the module should not change.

--David
basis 

-- 
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/d/optout.

Reply via email to