數論和有限域的基本概念


寫着一部分的時候我是抗拒的,不想看數學,不想看數學,不想看數學!!!!!但是,我和小伙伴說看到這不想看的時候,他說,這是精華啊,快看!!!!!嗚嗚嗚嗚嗚,淺看一下吧。菜鳥進擊-------------------------------------------------------------------

1、整除性和除法

1.1.1 整除性

 設a,b,m是整數,如果 a = mb,我們說非零整數b整除a。用 b | a表示b整除a,此時b是a的因子。如:6 | 24,13 |182, -5 | 20, -3 | 33

接下來看整數整除的性質:

  • 如果 a | 1,則 a = ± 1
  • 如果 a | b 且 b | a,則 a = ± b
  • 任意非零整數b整除0
  • 如果 a | b,b | c,則 a | c  比如 11 | 66,66 | 198 = 11 | 198
  • 如果 b | g,b | h,則對任意的整數m和n,有 b | ( mg + nh )

1.1.2 除法

給定任意正整數n和任意非負整數a,如果用n除a,我們得到一個整數商q和一個整數余數r,可寫成

                                                  a = qn + r         0 ≤ r < n;q = (a/n)下取整

余數r經常被稱為剩余數。

 

2、歐幾里得算法Euclid:求兩個正整數的最大公因子

2.1 最大公因子

我們用gcd( a , b )表示a和b的最大公因子,即能夠同時整除a和b的最大整數。定義特殊點gcd( 0, 0 ) = 0。假設c是a和b的最大公因子,則有以下性質:

c是a和b的因子

a和b的任何因子都是c的因子

公式定義為gcd( a, b ) = max [ k, k | a 且 k | b]

 因為我們所求的最大公因子是正數,所以gcd( a, b ) = gcd( a, -b ) = gcd( -a, b ) = gcd( -a, -b ) 。如gcd( 60, -24 ) = 12。特殊的gcd( a, 0 ) = |a|

如果gcd( a, b ) = 1,那么我們稱a和b互素。

 

2.2 求最大公因子

輾轉求余法知道d = gcd ( rn, 0 ) = rn

 

3、模運算

3.1 模

如果a是整數,n是正整數,則定義a模n是a除以n所得的余數。整數n稱為模數。因此,對於任意整數a,總有 a = qn + r    0 ≤  r < n;q = (a/n)向下取整

                                                                       11 mod 7 = 4; -11 mod 7 = 3

如果( a mod n ) = ( b mod n ),則稱整數a和b是模n同余的。可以表示為a ≡ b ( mod n )。如果 a ≡ 0 ( mod n ),則 n | a。

3.2 同余的性質

  • 如果 n | (a - b),那么 a ≡ b ( mod n )
  • a ≡ b ( mod n ),隱含b ≡ a ( mod n )
  • a ≡ b ( mod n ),b ≡ c ( mod n ),那么a ≡ c ( mod n )

3.3 模算術運算

根據定義可知,運算 mod n將所有的整數映射到集合{ 0,1,2,……,n - 1 }

模算術有以下性質

  • [ ( a mod n ) + ( b mod n ) ] mod n = ( a + b ) mod n 
  • [ ( a mod n ) - ( b mod n ) ] mod n = ( a - b ) mod n 
  • [ ( a mod n ) * ( b mod n ) ] mod n = ( a * b ) mod n

3.4 模運算的性質

定義比n小的非負整數集合為Zn:Zn = { 0,1,2,……,n - 1 },這個集合被稱為剩余類集,或模n的剩余類。准確地說,Zn中每一個整數都代表一個剩余類。我們可以將模n的剩余類表示為[0] [1] [2] …… [n - 1],其中[r] = {a:a是一個整數,a ≡ r ( mod n )}

舉個栗子吧,這里需要一個栗子

  • 模4的剩余類:
  • [0] = { …… -16   -12   -8    -4    0    4    8     12    16 ……}
  • [1] = { …… -15   -11    -7    -3    1    5    9     13    17 ……}
  • [2] = { …… -14   -10    -6    -2    2    6   10    14    18 ……}
  • [3] = { …… -13     -9     -5    -1    3    7   11    15    19 ……}

從栗子中可以看出,在剩余類的所有整數中,通常用最小的非負整數代表這個剩余類。尋找與k是同余的最小非負整數的過程,稱為模n的k約化。

3.5  修改的歐幾里得算法

對於任意非負整數a和任意正整數b gcd ( a,b ) = gcd ( b,a mod b ) 

if ( b = 0 ) then return a;

else return Euclid ( b, a mod b);

3.6 擴展歐幾里得算法

                                                                   d = gcd ( a,b ) = ax + by

對於給定的整數a和b,ax+by的最小正整數等於 gcd ( a,b )

對於給定的a和b,擴展歐幾里得計算( x, y, d )。

 

4、群 環 域

4.1 群

代數結構 - 吉吉的奧利奧 - 博客園 (cnblogs.com) 這里有過介紹

設<G,*>是一個代數系統,其中G是非空集合,*是G上一個二元運算,G中的每一個序偶( a,b )通過計算生成G中的元素 ( a*b ),並滿足以下公理

(1)運算*是封閉的:如果a和b都屬於G,則a*b也屬於G

(2)運算*是可結合的:對於G中任意元素a、b、c,都有a * ( b * c ) = ( a * b ) *c

(3)存在幺元e:G中存在一個元素e,對於G中任意元素a,都有a*e = e*a = a成立

(4)對於每一個元素x∈G,存在着他的逆元x-1,使得x * x-1 = x-1 * x = e

則稱<G,*>是一個

在此,如果對於G中任意元素a和b,都有a * b = b * a成立,則<G,*>是一個交換群(阿貝爾群)

 

循環群:

 定義a0 = e 作為單位元,如果群中每一個元素都是一個固定元素a的冪ak,則稱群G為循環群。我們認為元素a生成了群G,或者說a是群G的生成元。循環群總是交換群,有可能是有限群,也有可能是無限群。

 

4.2 環

環R是一個有兩個二元運算的集合,這兩個二元運算分別稱為加法和乘法,對於R中任何元素abc滿足以下公理:

(1)R關於加法是一個交換群

(2)如果a和b都屬於R,則ab也屬於R

(3)對於R中任意元素abc,有a(bc) = (ab)c

(4)對於R中任意元素abc,都有a ( b + c ) = ab + ac; ( a + b )c = ac + bc

本質上環就是一個集合,我們可以在上面進行加減乘法而不脫離該集合。

實數上所有n階方陣的集合關於加法和乘法構成一個

在此,對於R中任意元素a、b,有ab=ba,則R是一個交換環。Zn就構成一個交換環

基於交換環,滿足乘法單位元1使得a1=1a=a;無零因子若ab=0,則必有a=0或者b=0,我們稱為整環

 

4.3 域

域F是一個有兩個二元運算的集合,這兩個二元運算分別稱為加法和乘法,對於R中任何元素abc滿足以下公理:

(1)F是一個整環

(2)F中任意元素a(除0),F都存在一個元素a-1使得aa-1=a-1a=1成立

本質上域就是一個集合,我們可以在上面進行加減乘法而不脫離該集合。除法可以定義為a/b=a*b-1

 

5、有限域GF(p)

階為pn的有限域一般記為GF(pn),GF代表Galois域,以一位研究有限域的數學家名字命名。

5.1 階為p的有限域

給定一個素數p,元素個數為p的有限域GF(p)被定義為整數{0,1,2,……,p - 1 }的集合Zp,其運算為模p的算術運算。比如Z7就是一個有限域,每個元素都有a + b = 0 mod 7,a * b = 1 mod 7。

5.2 求GF(p)中乘法逆元

根據擴展歐幾里得算法得知,如果 by mod a = 1,則y = b-1

 

6、多項式運算

6.1 普通多項式運算

 一個n次多項式可以寫為 f(x) = anxn + an-1xn-1 + …… + a1x + a0 = Σi=0 n aixi,其中ai是指某個系數集S中的元素,且an ≠ 0。我們稱f(x)是定義在系數集S上的多項式。

6.2 系數在Zp中的多項式

 假如系數集S是域F的元素,我們稱其為域F上的多項式。這種情況下,系數集S是一個環,稱為多項式環。

對我們而言GF(2)上的多項式最有意義。他的加法等價於異或運算,乘法等價於邏輯與運算。模2的加減法是等價的。

域F上的多項式f(x)被稱為不可約的/既約的。當且僅當f(x)不能表示為兩個多項式的積。一個不可約多項式也成為素多項式。

 

7、有限域GF(2n)

7.1 動機

我們要尋找一個包含2n個元素的集合,其上定義了加法和乘法使之成為一個域。給集合的每一個元素賦值為0到2n-1之間唯一的整數。我們不會使用模算術,因為那樣不能構成域。我們使用多項式算術來構造需要的域。

7.2 多項式模運算

                                                                                               f(x) = an-1xn-1 + …… + a1x + a0 = Σi=0 n-1 aixi        ai在集合{0,1,……,p - 1}

如果乘法運算的結果是次數大於n-1的多項式,那么必須將其除以某個次數為n的既約多項式m(x)取其余式r(x),即r(x) = f(x) mod m(x)

設m(x)為n次多項式,則模m(x)剩余類集合有pn個元素,其中每個元素都可以表示成一個m次多項式(m<n)。

以m(x)為模的剩余類[x+1]由所有滿足a(x)≡(x+1) mod m(x)的多項式a(x)組成。就是說,剩余類[x+1]中的所有多項式a(x)滿足等式a(x) mod m(x) ≡ (x+1) 。

由此可知,以n次既約多項式m(x)為模的所有多項式組成的集合滿足域的所有公理,形成一個有限域。任意具有相同的階的有限域具有相同的結構,但是元素的表示和標記可能不同。構造一個有限域GF(23),需要選擇一個3次既約多項式,使得不同函數的加乘模上既約多項式之后都在該有限域內。

7.3 求乘法逆元

 可以由擴展歐幾里得算的

7.4 多項式的特性

                                                                                                 f(x) = an-1xn-1 + …… + a1x + a0 = Σi=0 n-1 aixi 

可以由n個二進制系數(an-1,an-2,……,a1,a0)系數表達法唯一的表達。因此,多項式可以表示成一個n位的二進制整數。

加法可以由異或得到,乘法一般的,在GF(2n)上的對於n次多項式p(x),有 xn mod p(x) = p(x) - xn

7.5 生成元

1、階為q的有限域F的生成元是一個元素g,即域F的元素為0,g0,g1,g2,……,gq-2。考慮到由多項式f(x)定義的域F,如果F內的一個元素b滿足f(b)=0,則稱b為多項式f(x)的跟。

一個不可約多項式的根g是這個不可約多項式定義的有限域的生成元。

舉個栗子,這里還蠻難理解的。

構造一個有限域GF(23),需要選擇一個3次既約多項式,x+ x + 1。設生成元為g,則g滿足f(g) = g3 + g + 1 = 0。因此,方程解滿足 g3  = -g - 1 = g + 1。

g4 = g * g3 = g ( g + 1 ) = g2 + g

g5 = g * g4 = g ( g2 + g ) = g3 + g2 = g2 + g + 1

g6 = g * g5 = g ( g2 + g + 1 ) = g3 + g2 + g = g2 + g + g + 1 = g2 + 1

g7 = g * g6 = g ( g2 + 1 ) = g3 + g = g + g + 1 = g0

g的冪產生了GF(23)所有的非0多項式。同樣的,對所有k,有gk = gk mod 7

冪表示 多項式表示 二進制表示 十六進制表示
0 0 000 0
g0 1 001 1
g g 010 2
g2 g2 100 4
 g3 g + 1 011 3
g4 g2 + g 110 6
g5 g2 + g + 1 111 7
g6 g2 + 1 101 5


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM