{"categories":[{"label":"Mathematics","url":"https://skillfed.io/packages/category/scientific-engineering-mathematics/3"}],"enrichment":{"capability":"fpylll is a Python wrapper for the fplll lattice reduction library, providing access to algorithms like LLL and BKZ for reducing integer matrices and computing Gram-Schmidt orthogonalization.","skillfed_tags":["lattice-cryptography","computational-number-theory","compiled-extension"],"use_cases":["Implementing lattice-based cryptanalysis or testing the security of lattice cryptographic schemes.","Computing shortest vectors in lattices or solving the shortest vector problem for research.","Reducing integer matrix bases for number-theoretic computations in academic or research settings.","Prototyping BKZ and LLL algorithms for lattice geometry or optimization research.","Integrating lattice reduction into larger computational workflows within Sage or standalone Python."],"what_it_does":"fpylll exposes the fplll lattice reduction library to Python, allowing developers to work with integer matrices and apply reduction algorithms central to computational number theory and cryptanalysis. It provides classes like IntegerMatrix for matrix construction, GSO for Gram-Schmidt orthogonalization, and LLL/BKZ for lattice basis reduction\u2014the core operations needed to solve lattice problems such as finding short vectors or breaking certain cryptographic schemes.\n\nThe package is a thin Cython wrapper around C/C++ code, so it depends on external libraries (GMP, MPFR, fplll) being compiled and linked at install time. Pre-built wheels exist for common platforms, but installation can require manual compilation on less common architectures. Once installed, it integrates into the Sage computer algebra system and is available via PyPI and Conda-Forge.","worth_installing":"Yes, if you need lattice reduction algorithms and can satisfy the C/C++ build dependencies. The package is actively maintained, has no known vulnerabilities, and pre-built wheels reduce friction on common platforms. However, the GPL version 2 or later license requires verification against your project's licensing constraints, and the unclear license treatment in metadata warrants explicit confirmation before use in proprietary or restricted-license contexts."},"id":"fpylll","links":{"html":"https://skillfed.io/packages/fpylll","md":"https://skillfed.io/packages/fpylll.md","pypi":"https://pypi.org/project/fpylll/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2025-05-29","license_spdx":null,"license_treatment":"unclear","name":"fpylll","python_support":"unspecified","summary":"A Python interface for https://github.com/fplll/fplll"},"popularity":{"monthly_downloads":102671,"position":12856,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.6.4"}
