亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? mat_gf2.h

?? 可以根據(jù)NTL庫進RSA加密、解密算法的實現(xiàn)
?? H
字號:

#ifndef NTL_mat_GF2__H
#define NTL_mat_GF2__H


#include <NTL/vec_vec_GF2.h>

NTL_OPEN_NNS


class mat_GF2 {  
public:  
  
   vec_vec_GF2 _mat_GF2__rep;  
   long _mat_GF2__numcols;  
  
   mat_GF2() { _mat_GF2__numcols = 0; }  
   mat_GF2(const mat_GF2& a);  
   mat_GF2& operator=(const mat_GF2& a);  
   ~mat_GF2() { }  
  
   mat_GF2(INIT_SIZE_TYPE, long n, long m);  
  
   void kill();  
  
   void SetDims(long n, long m);  
  
   long NumRows() const { return _mat_GF2__rep.length(); }  
   long NumCols() const { return _mat_GF2__numcols; }  
  
   vec_GF2& operator[](long i) { return _mat_GF2__rep[i]; }  
   const vec_GF2& operator[](long i) const { return _mat_GF2__rep[i]; }  
  
   vec_GF2& operator()(long i) { return _mat_GF2__rep[i-1]; }  
   const vec_GF2& operator()(long i) const { return _mat_GF2__rep[i-1]; }  

   GF2 get(long i, long j) const { return _mat_GF2__rep[i].get(j); }
   void put(long i, long j, GF2 a) { _mat_GF2__rep[i].put(j, a); }
   void put(long i, long j, long a) { _mat_GF2__rep[i].put(j, a); }

   subscript_GF2 operator()(long i, long j)
      { return subscript_GF2(_mat_GF2__rep[i-1], j-1); }

   const_subscript_GF2 operator()(long i, long j) const
      { return const_subscript_GF2(_mat_GF2__rep[i-1], j-1); }

   long position(const vec_GF2& a) const { return _mat_GF2__rep.position(a); }
   long position1(const vec_GF2& a) const { return _mat_GF2__rep.position1(a); }
  
   mat_GF2(mat_GF2& x, INIT_TRANS_TYPE)  :
      _mat_GF2__rep(x._mat_GF2__rep, INIT_TRANS), _mat_GF2__numcols(x._mat_GF2__numcols) { }
};  
  
inline const vec_vec_GF2& rep(const mat_GF2& a)  
   { return a._mat_GF2__rep; }  

  
void swap(mat_GF2& X, mat_GF2& Y); 
  
void conv(mat_GF2& x, const vec_vec_GF2& a);  
inline mat_GF2 to_mat_GF2(const vec_vec_GF2& a)
   { mat_GF2 x; conv(x, a); NTL_OPT_RETURN(mat_GF2, x); }



long operator==(const mat_GF2& a, const mat_GF2& b); 
long operator!=(const mat_GF2& a, const mat_GF2& b); 


NTL_SNS istream& operator>>(NTL_SNS istream&, mat_GF2&); 
NTL_SNS ostream& operator<<(NTL_SNS ostream&, const mat_GF2&);  



void add(mat_GF2& X, const mat_GF2& A, const mat_GF2& B); 

inline void sub(mat_GF2& X, const mat_GF2& A, const mat_GF2& B)
   { add(X, A, B); }

inline void negate(mat_GF2& X, const mat_GF2& A)
   { X = A; }

void mul(mat_GF2& X, const mat_GF2& A, const mat_GF2& B); 
void mul(vec_GF2& x, const mat_GF2& A, const vec_GF2& b); 
void mul(vec_GF2& x, const vec_GF2& a, const mat_GF2& B); 

void mul(mat_GF2& X, const mat_GF2& A, GF2 b);
inline void mul(mat_GF2& X, GF2 a, const mat_GF2& B)
   { mul(X, B, a); }

inline void mul(mat_GF2& X, const mat_GF2& A, long b)
   { mul(X, A, to_GF2(b)); }
inline void mul(mat_GF2& X, long a, const mat_GF2& B)
   { mul(X, B, a); }

void ident(mat_GF2& X, long n); 
inline mat_GF2 ident_mat_GF2(long n)
   { mat_GF2 X; ident(X, n); NTL_OPT_RETURN(mat_GF2, X); }

long IsIdent(const mat_GF2& A, long n);
void transpose(mat_GF2& X, const mat_GF2& A);
void solve(GF2& d, vec_GF2& X, const mat_GF2& A, const vec_GF2& b);
void inv(GF2& d, mat_GF2& X, const mat_GF2& A);

inline void sqr(mat_GF2& X, const mat_GF2& A)
   { mul(X, A, A); }

inline mat_GF2 sqr(const mat_GF2& A)
   { mat_GF2 X; sqr(X, A); NTL_OPT_RETURN(mat_GF2, X); }

void inv(mat_GF2& X, const mat_GF2& A);

inline mat_GF2 inv(const mat_GF2& A)
   { mat_GF2 X; inv(X, A); NTL_OPT_RETURN(mat_GF2, X); }

void power(mat_GF2& X, const mat_GF2& A, const ZZ& e);
inline mat_GF2 power(const mat_GF2& A, const ZZ& e)
   { mat_GF2 X; power(X, A, e); NTL_OPT_RETURN(mat_GF2, X); }

inline void power(mat_GF2& X, const mat_GF2& A, long e)
   { power(X, A, ZZ_expo(e)); }
inline mat_GF2 power(const mat_GF2& A, long e)
   { mat_GF2 X; power(X, A, e); NTL_OPT_RETURN(mat_GF2, X); }


void diag(mat_GF2& X, long n, GF2 d);
inline mat_GF2 diag(long n, GF2 d)
   { mat_GF2 X; diag(X, n, d); NTL_OPT_RETURN(mat_GF2, X); }

long IsDiag(const mat_GF2& A, long n, GF2 d);


long gauss(mat_GF2& M);
long gauss(mat_GF2& M, long w);
void image(mat_GF2& X, const mat_GF2& A);
void kernel(mat_GF2& X, const mat_GF2& A);




void determinant(GF2& x, const mat_GF2& a);
inline GF2 determinant(const mat_GF2& a)
   { GF2 x; determinant(x, a); return x; }

inline mat_GF2 transpose(const mat_GF2 & a)
   { mat_GF2 x; transpose(x, a); NTL_OPT_RETURN(mat_GF2, x); }


void clear(mat_GF2& a);
// x = 0 (dimension unchanged)

long IsZero(const mat_GF2& a);
// test if a is the zero matrix (any dimension)


// operator notation:

mat_GF2 operator+(const mat_GF2& a, const mat_GF2& b);
mat_GF2 operator-(const mat_GF2& a, const mat_GF2& b);
mat_GF2 operator*(const mat_GF2& a, const mat_GF2& b);

inline mat_GF2 operator-(const mat_GF2& a)
   { return a; }


// matrix/scalar multiplication:

inline mat_GF2 operator*(const mat_GF2& a, GF2 b)
   { mat_GF2 x; mul(x, a, b); NTL_OPT_RETURN(mat_GF2, x); }

inline mat_GF2 operator*(const mat_GF2& a, long b)
   { mat_GF2 x; mul(x, a, b); NTL_OPT_RETURN(mat_GF2, x); }

inline mat_GF2 operator*(GF2 a, const mat_GF2& b)
   { mat_GF2 x; mul(x, a, b); NTL_OPT_RETURN(mat_GF2, x); }

inline mat_GF2 operator*(long a, const mat_GF2& b)
   { mat_GF2 x; mul(x, a, b); NTL_OPT_RETURN(mat_GF2, x); }




// matrix/vector multiplication:

vec_GF2 operator*(const mat_GF2& a, const vec_GF2& b);

vec_GF2 operator*(const vec_GF2& a, const mat_GF2& b);


// assignment operator notation:

inline mat_GF2& operator+=(mat_GF2& x, const mat_GF2& a)
{
   add(x, x, a);
   return x;
}   

inline mat_GF2& operator-=(mat_GF2& x, const mat_GF2& a)
{
   sub(x, x, a);
   return x;
}   


inline mat_GF2& operator*=(mat_GF2& x, const mat_GF2& a)
{
   mul(x, x, a);
   return x;
}   

inline mat_GF2& operator*=(mat_GF2& x, GF2 a)
{
   mul(x, x, a);
   return x;
}   

inline mat_GF2& operator*=(mat_GF2& x, long a)
{
   mul(x, x, a);
   return x;
}   
   

inline vec_GF2& operator*=(vec_GF2& x, const mat_GF2& a)
{
   mul(x, x, a);
   return x;
}   


NTL_CLOSE_NNS

#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产91久久久久久久妲己| 亚洲精品中文在线影院| 成人欧美一区二区三区小说 | 亚洲国产精品精华液2区45| 亚洲视频一区二区免费在线观看| 视频一区欧美精品| 91网站最新地址| 精品999在线播放| 首页亚洲欧美制服丝腿| 91免费版在线看| 国产三级三级三级精品8ⅰ区| 午夜电影网亚洲视频| 一本色道a无线码一区v| 国产香蕉久久精品综合网| 蜜臀av在线播放一区二区三区| 在线免费视频一区二区| 国产精品乱码一区二三区小蝌蚪| 理论片日本一区| 日韩精品一区二区三区三区免费| 亚洲一区二区影院| 91电影在线观看| 亚洲天堂2014| a4yy欧美一区二区三区| 国产日韩欧美高清| 国产夫妻精品视频| 国产欧美精品一区二区色综合朱莉 | 亚洲第一电影网| 日本精品免费观看高清观看| 综合久久一区二区三区| 色综合婷婷久久| 亚洲三级在线观看| 色综合色狠狠综合色| 亚洲人吸女人奶水| 在线视频国内一区二区| 亚洲一区二区三区中文字幕| 欧美午夜精品免费| 丝袜美腿亚洲综合| 日韩精品一区二区三区视频| 国产精品一区二区在线观看网站| 久久天堂av综合合色蜜桃网| 国产精品18久久久久久vr| 久久久五月婷婷| 国产精品影视网| 国产亚洲人成网站| 91欧美一区二区| 亚洲成人午夜影院| 欧美成人欧美edvon| 国产成人欧美日韩在线电影| 自拍偷拍亚洲欧美日韩| 欧美中文字幕一区| 麻豆91免费观看| 国产精品三级在线观看| 色综合天天性综合| 婷婷综合久久一区二区三区| 欧美变态凌虐bdsm| 99精品偷自拍| 欧美bbbbb| 中文在线一区二区| 欧美性高清videossexo| 久久精品国产亚洲aⅴ| 国产欧美一区视频| 欧美视频你懂的| 久久99最新地址| 亚洲人成网站在线| 日韩亚洲电影在线| gogo大胆日本视频一区| 亚洲电影你懂得| 2021中文字幕一区亚洲| 成人app下载| 亚洲v中文字幕| 国产精品理论片在线观看| 欧美日韩不卡一区| 国产激情一区二区三区桃花岛亚洲| 亚洲免费观看高清完整版在线 | 成人午夜激情片| 亚洲影视资源网| 国产欧美视频一区二区三区| 欧美色视频在线| 风间由美性色一区二区三区| 日韩电影在线观看电影| 国产精品第13页| 日韩三级中文字幕| 欧美日韩一区视频| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 久久久五月婷婷| 欧美精品三级在线观看| 成人免费视频app| 全部av―极品视觉盛宴亚洲| 伊人夜夜躁av伊人久久| 国产亚洲人成网站| 日韩精品资源二区在线| 欧美撒尿777hd撒尿| av一区二区三区在线| 国产一区二区三区免费观看| 五月激情六月综合| 亚洲综合激情小说| 国产精品久久毛片| 国产午夜精品一区二区三区视频| 91精品国产免费| 3atv在线一区二区三区| 欧美性极品少妇| 色8久久精品久久久久久蜜 | 国产精品一区在线观看乱码| 免费亚洲电影在线| 日本在线不卡一区| 天堂在线亚洲视频| 午夜精品久久久久久久| 亚洲永久免费视频| 亚洲大片精品永久免费| 亚洲综合在线五月| 亚洲精品免费一二三区| 亚洲欧洲综合另类| 亚洲精品日产精品乱码不卡| 亚洲人xxxx| 亚洲成人精品一区| 日日夜夜免费精品视频| 欧美bbbbb| 激情综合五月天| 国产一区二区三区久久久| 国产伦精一区二区三区| 国产老妇另类xxxxx| 国产精品羞羞答答xxdd| 国产成人久久精品77777最新版本| 国产在线不卡一卡二卡三卡四卡| 狠狠狠色丁香婷婷综合久久五月| 韩日av一区二区| 国产成人免费视频网站| 成人午夜av在线| 91视频观看视频| 欧美影视一区在线| 日韩欧美国产午夜精品| 久久色在线观看| 1024成人网| 性欧美大战久久久久久久久| 日本aⅴ免费视频一区二区三区| 国精产品一区一区三区mba桃花| 成人国产精品免费观看视频| 日本韩国欧美一区| 日韩精品一区二区三区在线播放| 国产婷婷精品av在线| 亚洲精品一二三区| 蜜臀av一区二区| 成人免费视频国产在线观看| 欧美三级视频在线观看| 欧美成人a视频| 中文字幕亚洲在| 美女视频黄a大片欧美| 懂色av一区二区三区蜜臀| 欧美亚洲国产一区在线观看网站| 日韩一区二区免费电影| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 午夜精品久久久久久久久| 国产主播一区二区| 色猫猫国产区一区二在线视频| 日韩一区二区三区在线观看| 国产精品热久久久久夜色精品三区 | 国产精品夜夜嗨| 欧美日韩亚洲另类| 国产视频在线观看一区二区三区| 亚洲理论在线观看| 国产美女精品一区二区三区| 欧美最猛性xxxxx直播| 26uuu亚洲综合色欧美| 亚洲精品ww久久久久久p站| 精品影院一区二区久久久| 91高清视频免费看| 国产精品拍天天在线| 日本不卡一区二区三区 | 一个色综合网站| 国产福利一区在线| 91精品国产欧美一区二区成人| 亚洲欧美日韩中文字幕一区二区三区| 精品一区二区三区不卡| 欧美日韩一区二区三区高清| 国产精品理伦片| 国产成人综合网站| 欧美一区二区网站| 亚洲高清中文字幕| 色域天天综合网| 中文字幕一区二区三| 国产黑丝在线一区二区三区| 精品国产凹凸成av人网站| 日日夜夜免费精品视频| 欧美日韩免费电影| 亚洲黄色在线视频| av午夜一区麻豆| 国产精品麻豆久久久| 国产91色综合久久免费分享| 精品国产露脸精彩对白| 久久成人18免费观看| 日韩一区二区三区四区| 日本aⅴ免费视频一区二区三区| 欧美精品亚洲二区| 日韩一区精品字幕| 欧美一区二区女人| 免费在线观看成人| 日韩欧美一区二区免费| 久久99九九99精品| 精品处破学生在线二十三| 精品一区二区免费视频|