如何使用c ++实现NTL中的LLL格子缩减?

时间:2017-11-14 15:42:05

标签: c++ ntl mathematical-lattices

我正在使用C ++进行研究。我有兴趣知道如何在NTL中使用LLL函数来找到最短的向量。我的代码如下;

#include <NTL/ZZ.h>
#include <NTL/matrix.h>
#include <NTL/mat_ZZ.h>
#include <NTL/vector.h>

using namespace std;
using namespace NTL;

int main()
{
    Mat<ZZ> B;
    cin >> B;
    cout << B << "\n";
    long LLL(ZZ& det2, mat_ZZ& B, long verbose = 0);
    cout << B << "\n";
}

但是,我输入B的矩阵没有减少。有什么问题?

1 个答案:

答案 0 :(得分:0)

我意识到我忘记了包含正确的库并且LLL的实现不正确。

这是我忘记包含的图书馆。

#include <NTL/LLL/h>

要执行LLL算法,请执行以下操作

LLL_XD(B);