伯利坎普-韦尔奇算法

来自testwiki
imported>Lt28182023年4月10日 (一) 16:28的版本 (Lt2818移动页面伯利坎普-韦尔奇算法伯利坎普-韦尔奇算法:​应使用短横线 (By MassMover))
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转到导航 跳转到搜索

Template:NoteTA

伯利坎普-韦尔奇算法Template:Lang-en)是一種用於高效地解碼BCH碼里德-所羅門碼演算法,其名取自埃尔温·伯利坎普勞埃德·韋爾奇。伯利坎普-韦尔奇算法的優點在於這一演算法僅需利用矩陣運算。[1][2]這一演算法的時間複雜度O(N3)[3]

演算法

伯利坎普-韦尔奇算法通常被用於解碼里德-所羅門碼。假使在有限體GF(q)上有n個數字m1,,mn,利用RS碼編為n1多項式P(i)=mi。如果已知傳輸信道會錯誤傳輸k個值,那麼RS碼可以傳輸P(i)上的n+2k個點(i,P(i))。因此,解碼者的問題在於要辨認出哪k個點是錯誤的。令解碼者接收到的點值為R(i),可以看出對於且僅對於所有正確傳輸的點iP(i)=R(i)

錯誤辨認多項式

伯利坎普-韦尔奇算法引入了錯誤辨認多項式的概念,也即多項式E(i)=(ie1)(ie2)(iek),其中e的值為所有k個錯誤傳輸的點的i值(均未知)。由於E(i)=0當且僅當i對應一個錯誤傳輸的點,可以看出對於所有i值,P(i)E(i)=R(i)E(i),其中R(i)對於所有i均為已知常數。令Q(i)=R(i)E(i),可以看出左側為一個n+k1次的多項式,右側為一個k次的多項式,但其最高次係數為1。因此,整個線性系統n+2k個方程式與n+2k個未知數,可以用線性代數的方法解出,並可以由P(i)=Q(i)/E(i)解出原始的編碼多項式並讀出編碼值m1,,mn

註釋

Template:Reflist

  1. Template:Citation
  2. Template:Citation. Previous publisher McGraw–Hill, New York, NY.
  3. Template:Cite web