|
Macaulay2 Engine
|
Static-method namespace for the LLL lattice-basis reduction algorithm operating on a MutableMatrix. More...
#include <LLL.hpp>
Static Public Member Functions | |
| static bool | LLL (MutableMatrix *M, MutableMatrix *U, gmp_QQ threshold) |
Static Private Member Functions | |
| static bool | checkThreshold (ring_elem num, ring_elem den) |
| static bool | Lovasz (MutableMatrix *lambda, int k, ring_elem alphaTop, ring_elem alphaBottom) |
| static void | REDI (int k, int ell, MutableMatrix *A, MutableMatrix *Achange, MutableMatrix *lambda) |
| static void | SWAPI (int k, int kmax, MutableMatrix *A, MutableMatrix *Achange, MutableMatrix *lambda) |
| static bool | initializeLLL (const MutableMatrix *A, gmp_QQ threshold, MutableMatrix *&LLLstate) |
| static int | doLLL (MutableMatrix *A, MutableMatrix *Achange, MutableMatrix *LLLstate, int nsteps=-1) |
Static-method namespace for the LLL lattice-basis reduction algorithm operating on a MutableMatrix.
Holds no state — every method is static — and implements the standard Lovasz / REDI / SWAPI primitives that the engine's LLL driver calls. Works over rings where the comparison threshold alphaTop / alphaBottom can be evaluated (typically QQ or ZZ with a rational alpha).