Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add a function to solve CVP #12388

Open
zimmermann6 opened this issue Jan 30, 2012 · 1 comment
Open

add a function to solve CVP #12388

zimmermann6 opened this issue Jan 30, 2012 · 1 comment

Comments

@zimmermann6
Copy link

currently Sage can solve SVP (Shortest Vector Problem) through fplll
but not CVP (Closest Vector Problem).

However fplll also provides CVP:

barbecue% echo "[[0 0 40][0 20 0][10 0 0]] [101 79 79]" | /usr/local/sage-4.8-linux-64bit-ubuntu_10.04.3_lts-x86_64-Linux/local/bin/fplll -a cvp
[10 4 2]

with some shortcomings explained by Xavier Pujol, one of the fplll developers: (1) if several lattice points are at (almost) the same distance from the target, the wrong one might be returned; (2) the algorithm used starts removing something from the target; if after this, the target norm is still much larger than the smallest lattice
vector, we can have a bad behaviour (in some cases, an infinite loop).

Despite those shortcomings, it would be nice to have CVP inside Sage.

Component: linear algebra

Keywords: lattice reduction, CVP

Issue created by migration from https://trac.sagemath.org/ticket/12388

@zimmermann6 zimmermann6 added this to the sage-5.11 milestone Jan 30, 2012
@jdemeyer jdemeyer modified the milestones: sage-5.11, sage-5.12 Aug 13, 2013
@sagetrac-vbraun-spam sagetrac-vbraun-spam mannequin modified the milestones: sage-6.1, sage-6.2 Jan 30, 2014
@sagetrac-vbraun-spam sagetrac-vbraun-spam mannequin modified the milestones: sage-6.2, sage-6.3 May 6, 2014
@sagetrac-vbraun-spam sagetrac-vbraun-spam mannequin modified the milestones: sage-6.3, sage-6.4 Aug 10, 2014
@miguelmarco
Copy link
Contributor

comment:5

Indeed it works, but it is not documented in fplll. Do you know if it can also works in the fplll library? In the source code (file svpcvp.h), the function closestVector is commented as "experimental, do not use".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants