Existing occurrences of lattices
As already pointed out by Dmitrii Pasechnik in the comments to the project proposal, one of the first things to do is probably to search for existing occurrences of lattices in Sage.A bold search for...
View ArticleProject description
There could be Lattice_generic class that derives from the existing FreeModule. It would act as the base for arbitrary R-lattices, where R is a ring in some field K and the lattice is over a K-vector...
View ArticleCode repository
To host the code created during the Lattices project, my mentor Daniel Krenn and I decided to set up a code repository at github. While this is not the "native" way of sharing Sage code (which would be...
View ArticlePosting source code on blogger
As this is a blog about a coding project, it certainly makes sense to have a nice way of posting source code. I just ran into this when trying to format the shell line sage -b latticesin the previous...
View ArticleTime schedule
To have everything in one place, I want to add the time schedule from the original project proposal to this blog as well: before 05/21get detailed insights in relevant existing Sage classes and...
View ArticlePreventing FreeModule from coercing to its base_ring
I've been working on the class structure for lattices recently. As described in the project description and already suggested in a previous discussion on lattices in Sage, the generic Lattice class...
View ArticleClass structure
The class structure of the upcoming lattice module is now as follows: Lattice_with_basis inherits from FreeModule_submodule_with_basis_pid (with some tweaks as described in my previous post) and is the...
View ArticleMy Eclipse/PyDev/git workflow for Sage
I want to briefly describe how I code for Sage so that others can comment on how to improve the workflow or maybe learn something from it.For Python (and actually for all programming languages,...
View ArticleUpdate on basis coercion, LLL and Fincke-Pohst
As written in a previous post, I tried to prevent FreeModule from coercing its basis vectors to the fraction field of its ambient space, mainly motivated by the fact that I wanted floating-point...
View ArticleVoronoi cells
Recently, I have implemented the diamond-cutting algorithm to calculate the Voronoi cell of a lattice as described in the paper Computing the Voronoi Cell of a Lattice: The Diamond-Cutting Algorithm by...
View ArticleClosest vectors
I haven't written about the latest development yet: closest vectors in lattices. This is done using the algorithm in the paper "A Deterministic Single Exponential Time Algorithm for Most Lattice...
View ArticleRebasing to Sage 5.2
As there were some changes to Sage since version 5.0 that also affect my code, I rebased my code from Sage 5.0 to 5.2. That meant installing the latest version, cloning a new branch "lattices", and...
View ArticleUpdate on class structure, lattice constructors, plotting
Sorry that I haven't posted to this blog for a while. That doesn't mean that nothing happened in the meanwhile—on the contrary, I got quite a lot done in the last weeks of this Summer of Code.First of...
View Article