#algebra #svp #lattice-theory

adlo

Adaptive LLL algorithm for solving SVP

2 releases

new 0.1.1 Feb 18, 2025
0.1.0 Feb 14, 2025

#462 in Math

Download history 104/week @ 2025-02-11

104 downloads per month

MIT license

11KB
172 lines

adlo

Adaptive LLL algorithm for SVP research

Key Features

  • lovasz factor calculated based on density
  • n-dimensional vectors
  • multi-frame search (in-progress)

Getting Started

  • git clone https://github.com/kn0sys/adlo && cd adlo && cargo test

lib.rs:

Example

use adlo::*; 
use nalgebra::{DVector, DMatrix};

fn basis_2d_test() {
       let mut basis_2d = vec![
           AdloVector::new(DVector::from_vec(vec![5, 3])),
           AdloVector::new(DVector::from_vec(vec![2, 2]))
        ];
       adaptive_lll(&mut basis_2d);
       let expected = AdloVector::new(DVector::from_vec(vec![1, -1]));
       assert_eq!(expected, basis_2d[basis_2d.len()-1]);
   } 

Dependencies

~3MB
~64K SLoC