2017-11-14 14 views
0

私は研究を行うためにC++を使用しています。そして、最短ベクトルを見つけるためにNTLでLLL関数を使う方法を知りたいと思っています。私のコードは以下の通りです。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に入る行列は、縮小されません。なにが問題ですか?

+0

として行い、LLLアルゴリズムを実行するには、このヘルプのでしょうか? http://www.shoup.net/ntl/doc/LLL.cpp.html – Morpheu5

+0

ありがとうございます。私もそれを見つけました。これはドキュメントですが、LLLアルゴリズムを正しく実装する方法のサンプルはありません。 –

答えて

0

私は正しいライブラリを含めることを忘れていて、LLLの実装が正しくないことを認識しています。

これは私が含むことを忘れてしまった図書館です。

#include <NTL/LLL/h> 

これは私にとって第二のGoogleの結果だった従っ

LLL_XD(B); 
関連する問題