FLINT3.7.0-dev

fmpz_lll_wrapper, fmpz_lll_wrapper_with_removal, fmpz_lll_wrapper_with_removal_knapsack

Synopsis#include <flint/fmpz_lll.h>
int fmpz_lll_wrapper(fmpz_mat_t B, fmpz_mat_t U, const fmpz_lll_t fl)source
int fmpz_lll_wrapper_with_removal(fmpz_mat_t B, fmpz_mat_t U, const fmpz_t gs_B, const fmpz_lll_t fl)source
int fmpz_lll_wrapper_with_removal_knapsack(fmpz_mat_t B, fmpz_mat_t U, const fmpz_t gs_B, const fmpz_lll_t fl)source

Reduces B with the cheapest strategy that succeeds: fmpz_lll_d (or fmpz_lll_d_with_removal, fmpz_lll_d_with_removal_knapsack); if it fails or the result is not reduced, fmpz_lll_d_heuristic (or its removal version), but only for Z_BASIS input with Gram type APPROX; and finally fmpz_lll_mpf (or fmpz_lll_mpf_with_removal). Returns the value of the last strategy run.

Reducedness is checked with fmpz_lll_is_reduced at 53 bits (respectively fmpz_lll_is_reduced_with_removal at 120 bits), which is always conclusive, so the result of the wrappers is reduced.

Cite this page

The FLINT team, “fmpz_lll_wrapper, fmpz_lll_wrapper_with_removal, fmpz_lll_wrapper_with_removal_knapsack (fmpz_lll.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fmpz_lll/fmpz_lll_wrapper.html (generated 2026-10-20).