submitted to ieee transactins on information theory, … · 2018-05-29 · in the sequel, sakata et...

15
arXiv:0705.0286v1 [cs.IT] 2 May 2007 SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, 2007 1 Inverse-free Berlekamp–Massey–Sakata Algorithm and Small Decoders for Algebraic-Geometric Codes Hajime Matsui, Member, IEEE, and Seiichi Mita, Member, IEEE Abstract—This paper proposes a novel algorithm for finding error-locators of algebraic-geometric codes that can eliminate the division-calculations of finite fields from the Berlekamp– Massey–Sakata algorithm. This inverse-free algorithm provides full performance in correcting a certain class of errors, generic errors, which includes most errors, and can decode codes on alge- braic curves without the determination of unknown syndromes. Moreover, we propose three different kinds of architectures that our algorithm can be applied to, and we represent the control operation of shift-registers and switches at each clock- timing with numerical simulations. We estimate the performance in comparison of the total running time and the numbers of multipliers and shift-registers in three architectures with those of the conventional ones for codes on algebraic curves. Index Terms—codes on algebraic curves, syndrome decod- ing, Berlekamp–Massey–Sakata algorithm, Gr¨ obner basis, linear feedback shift-register. I. I NTRODUCTION A LGEBRAIC-GEOMETRIC (AG) codes, especially codes on algebraic curves, are comprehensive generalization of prevailing Reed–Solomon (RS) codes. They can be applied to various systems by choosing suitable algebraic curves without any extension to huge finite (Galois) fields. In fast decoding of such codes, Berlekamp–Massey–Sakata (BMS) algorithm [25] is often used for finding the location of errors, and the evaluation of error-values is done by using outputs of BMS algorithm with O’Sullivan’s formula [24]. RS codes have the features of high error-correcting capa- bility and less complexity for the implementation of encoder and decoder. On the other hand, codes on algebraic curves have the issues related to the size of decoders as well as the operating speed of decoders. In particular, we notice that RS- code decoders need no inverse-calculator of the finite field (no finite-field inverter). The extended Euclidean algorithm [30] for RS codes has no divisions, and this enables us to operate compactly and quickly in calculating error-locator and error-evaluator polynomials. One inverse computation requires thirteen multiplications in practical GF(2 8 ) and needs enormous circuit scale. Thus, it is strongly expected that the Manuscript received April 10, 2007. This work was partly supported by the Academic Frontier Project for Future Data Storage Materials Research by the Japanese Ministry of Education, Culture, Sports, Science and Technology (1999–2008). The material in this paper was presented in part at Hawaii, IEICE and SITA Joint Conference on Information Theory, Hawaii, May 2005, and at IEEE International Symposium on Information Theory, Seattle, July 2006. H. Matsui and S. Mita are with the Department of Electronics and Infor- mation Science, Toyota Technological Institute, Hisakata 2–12–1, Tenpaku- ku, Nagoya 468–8511, Japan (e-mail: [email protected]; smita@toyota- ti.ac.jp). fast inverse-free algorithm for AG codes will be established, since division operations are inevitable on the original BMS algorithm. In addition, the decoder that has small circuit-size, such as the conventional RS decoder, is considered necessary. In this paper, we propose an inverse-free BMS algorithm, and give a whole proof of its adequacy. Moreover, we propose three kinds of small-sized architectures that generate error- locator polynomials for codes on algebraic curves. We then explain our architectures with model structures and numerical examples, and show the practical operation of proposed archi- tectures in terms of the control flow of registers and switches at each clock-timing. The performance is estimated on the total running time and the numbers of multipliers and shift-registers for all architectures. The divisions in the original BMS algorithm appear at the Berlekamp transform [1] f N+1 := f N (d N N ) g N (1) at each N -loop in the algorithm, where f N , g N , and d N are called minimal polynomial, auxiliary polynomial, and discrepancy at N , respectively, N runs over 0 N B for sufficiently large B, and δ N is equal to a certain previous d N . Then the inverse-free BMS algorithm consists of modified Berlekamp transforms of the form f N+1 := e N f N d N g N , (2) where e N is equal to a certain previous d N in this expres- sion. Thus the denominator δ N in (1) is converted into the multiplication of e N in (2). This version of inverse-free BMS algorithm can be proved in the comparable line of the original algorithm. However, there is a significant obstacle to apply this inverse-free algorithm to the decoders for AG codes; we have to mention the existence of unknown syndromes, namely, the lack of syndrome values to decode errors whose Hamming weights are less than or equal to even the basic (d G 1)/2, where d G is the Goppa (designed) minimum distance. Feng and Rao’s paper [3] originally proposed ma- jority logic scheme to determine unknown syndromes in the decoding up to (d FR 1)/2, where d FR is their designed minimum distance d G . In the sequel, Sakata et al. [26] and independently K¨ otter [7] modified and applied Feng–Rao’s method to their decoding algorithm. If the divisions of the finite field are removed from BMS algorithm, one cannot execute the determination of unknown syndromes because of breaking the generation of candidate values of unknown syndromes for majority voting. Unfortunately, the elimination of finite-field divisions seemed to be a difficult problem in

Upload: others

Post on 21-Apr-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

arX

iv:0

705.

0286

v1 [

cs.IT

] 2

May

200

7SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, 2007 1

Inverse-free Berlekamp–Massey–Sakata Algorithmand Small Decoders for Algebraic-Geometric Codes

Hajime Matsui,Member, IEEE,and Seiichi Mita,Member, IEEE

Abstract—This paper proposes a novel algorithm for findingerror-locators of algebraic-geometric codes that can eliminatethe division-calculations of finite fields from the Berlekamp–Massey–Sakata algorithm. This inverse-free algorithm providesfull performance in correcting a certain class of errors, genericerrors, which includes most errors, and can decode codes on alge-braic curves without the determination of unknown syndromes.Moreover, we propose three different kinds of architecturesthat our algorithm can be applied to, and we represent thecontrol operation of shift-registers and switches at each clock-timing with numerical simulations. We estimate the performancein comparison of the total running time and the numbers ofmultipliers and shift-registers in three architectures with thoseof the conventional ones for codes on algebraic curves.

Index Terms—codes on algebraic curves, syndrome decod-ing, Berlekamp–Massey–Sakata algorithm, Grobner basis, linearfeedback shift-register.

I. I NTRODUCTION

A LGEBRAIC-GEOMETRIC (AG) codes, especially codeson algebraic curves, are comprehensive generalization of

prevailing Reed–Solomon (RS) codes. They can be applied tovarious systems by choosing suitable algebraic curves withoutany extension to huge finite (Galois) fields. In fast decodingof such codes, Berlekamp–Massey–Sakata (BMS) algorithm[25] is often used for finding the location of errors, and theevaluation of error-values is done by using outputs of BMSalgorithm with O’Sullivan’s formula [24].

RS codes have the features of high error-correcting capa-bility and less complexity for the implementation of encoderand decoder. On the other hand, codes on algebraic curveshave the issues related to the size of decoders as well as theoperating speed of decoders. In particular, we notice that RS-code decoders need no inverse-calculator of the finite field(no finite-field inverter). The extended Euclidean algorithm[30] for RS codes has no divisions, and this enables us tooperate compactly and quickly in calculating error-locatorand error-evaluator polynomials. One inverse computationrequires thirteen multiplications in practical GF(28) and needsenormous circuit scale. Thus, it is strongly expected that the

Manuscript received April 10, 2007. This work was partly supported bythe Academic Frontier Project for Future Data Storage Materials Research bythe Japanese Ministry of Education, Culture, Sports, Science and Technology(1999–2008). The material in this paper was presented in part at Hawaii,IEICE and SITA Joint Conference on Information Theory, Hawaii, May 2005,and at IEEE International Symposium on Information Theory,Seattle, July2006.

H. Matsui and S. Mita are with the Department of Electronics and Infor-mation Science, Toyota Technological Institute, Hisakata2–12–1, Tenpaku-ku, Nagoya 468–8511, Japan (e-mail: [email protected]; [email protected]).

fast inverse-free algorithm for AG codes will be established,since division operations are inevitable on the original BMSalgorithm. In addition, the decoder that has small circuit-size,such as the conventional RS decoder, is considered necessary.

In this paper, we propose an inverse-free BMS algorithm,and give a whole proof of its adequacy. Moreover, we proposethree kinds of small-sized architectures that generate error-locator polynomials for codes on algebraic curves. We thenexplain our architectures with model structures and numericalexamples, and show the practical operation of proposed archi-tectures in terms of the control flow of registers and switchesat each clock-timing. The performance is estimated on the totalrunning time and the numbers of multipliers and shift-registersfor all architectures.

The divisions in the original BMS algorithm appear at theBerlekamp transform [1]

fN+1 := fN − (dN/δN ) gN (1)

at eachN -loop in the algorithm, wherefN , gN , and dNare called minimal polynomial, auxiliary polynomial, anddiscrepancy atN , respectively,N runs over0 ≤ N ≤ Bfor sufficiently largeB, andδN is equal to a certain previousdN . Then the inverse-free BMS algorithm consists of modifiedBerlekamp transforms of the form

fN+1 := eNfN − dNgN , (2)

where eN is equal to a certain previousdN in this expres-sion. Thus the denominatorδN in (1) is converted into themultiplication of eN in (2). This version of inverse-free BMSalgorithm can be proved in the comparable line of the originalalgorithm. However, there is a significant obstacle to applythis inverse-free algorithm to the decoders for AG codes;we have to mention the existence of unknown syndromes,namely, the lack of syndrome values to decode errors whoseHamming weights are less than or equal to even the basic⌊(dG − 1)/2⌋, wheredG is the Goppa (designed) minimumdistance. Feng and Rao’s paper [3] originally proposed ma-jority logic scheme to determine unknown syndromes in thedecoding up to⌊(dFR − 1)/2⌋, wheredFR is their designedminimum distance≥ dG. In the sequel, Sakataet al. [26] andindependently Kotter [7] modified and applied Feng–Rao’smethod to their decoding algorithm. If the divisions of thefinite field are removed from BMS algorithm, one cannotexecute the determination of unknown syndromes becauseof breaking the generation of candidate values of unknownsyndromes for majority voting. Unfortunately, the eliminationof finite-field divisions seemed to be a difficult problem in

Page 2: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

2 SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, 2007

��������

���

����� ������

�� ����� !"#$%

&'()*+,- ./012

3456789:;

<=>?@ABC DEFGHI

JKLMNOPQRSTU

VWXYZ[\]^_`a

bcdefg

hijklmnopqrs

tuvwxyz{|}~�

������������

������ ������������

�� ¡¢£¤¥¦§¨©

ª«¬­®¯°±

²³´µ¶·¸¹º»¼½

¾¿ÀÁ ÃÄÅÆÇÈ

ÉÊ ËÌÍÎÏÐÑÒÓÔÕ

Ö×ØÙÚÛÜÝ

Þßàáâã

äåæçè éêëìíî

ïð ñòóôõö÷øùúû

üýþÿ���� �����

�� ����

�������� ������

!"#$%&'()*+

,-./01234567

89:;<=

>?@ABCDEFGHI

JKLMNOPQRSTU

VWXYZ[\]^_`a

bcdefg hijklmnopqrs

tuvwxyz{|}~�

��������

������������

����� ������

�  ¡¢£¤¥¦§¨©ª«

Fig. 1. Map of various error-locator architectures implementing BMS (orequivalent) algorithm for decoding codes on algebraic curves.

this regard. For this reason, no inverse-free algorithm forAGcodes has been proposed until now.

In this research, we effectively overcome this difficulty.Namely, we decode such codes with the only known syndromevalues from received code-words. So far the type and amountof errors that could be corrected if one does not determineunknown syndromes have not been clear; the well-knownfact up to ⌊(dG − g − 1)/2⌋ in Peterson-type algorithm [6],where g is the genus of underlying algebraic curve, isnotavailable for our case of BMS algorithm. We confirm thata class of generic errors [12][23] (independent errors in [5])can be corrected up to⌊(dFR − a)/2⌋ only with syndromesfrom received words, wherea is the minimal pole order ofunderlying algebraic curve:a = 2 for elliptic curves overarbitrary finite fields anda = 16 for Hermitian curve overGF(28). Furthermore, we successfully obtain the approximateratio (q − 1)/q of the generic errors to all errors in theapplication of Grobner-basis theory, whereq is the number ofelements in the finite field. It means that we can decode mostof the errors without majority logic scheme and voting. Thuswe can realize not only inverse-free error-locator architecturesfor AG codes but also avoiding complicated procedure andtransmission of voting data among parts of decoders. Ourmethod is applicable to all former architectures, and is nota go-back to the past but a real solution to construct decoderswith feasible circuit-scale.

Recently, the BMS algorithm has become more importantnot only in decoding codes on algebraic curves but also inalgebraic soft-decision decoding [8] of RS codes. Sakataet al.[22][28] applied the BMS algorithm to the polynomial interpo-lation in Sudan and Guruswami–Sudan algorithms [4][29] forRS codes and codes on algebraic curves. Lee and O’Sullivan[9][10] applied the Grobner-basis theory of modules, which isrelated to the BMS algorithm, to soft-decision decoding of RScodes. Our method can be expected to help further structuralanalysis of these methods.

The rest of this paper is organized as follows. In Section II,we prepare notations, and define codes on algebraic curves.

In Section III, we propose an inverse-free BMS algorithm,and state the main theorem for output of the algorithm. Inthe next three sections, we describe three types of small-scaleerror-locator architectures, i.e.,inverse-free, serial, andserialinverse-free architectures;the mutual relations among themand past architectures are depicted in Fig. 1. In Section IV,we describe the inverse-free architecture, and divide it intothree subsections: Subsection IV-A is an overview, SubsectionIV-B deals with the technique for avoiding the determinationof unknown syndromes, and Subsection IV-C is numericalsimulation. In Section V, we describe the serial architectureusing parallel BMS algorithm. In Section VI, we describe theserial inverse-free architectures combined with the previousmethods. In Section VII, we estimate the total running timeand the numbers of finite-field calculators for three and pastar-chitectures. Finally, in Section VIII, we state our conclusions.In the appendices, we prove the basics of BMS algorithm, theproperty of generic errors, and the main theorem of proposedalgorithm.

II. PRELIMINARIES

In this paper, we consider one-point algebraic-geometriccodes on non-singular plane curves over a finite fieldK := Fq,in particular⊗-type codes (notL-type). LetZ0 be the set ofnon-negative integers, and leta, b ∈ Z0 be 0 < a ≤ b andgcd(a, b) = 1. We define a Cba curveX by an equation

D(x, y) := ya + exb +∑

(n1,n2)∈Z20

n1a+n2b<ab

χ(n1,n2)xn1yn2 = 0 (3)

over K with e 6= 0. Then the polynomial quotient ringK[X ] := K[x, y]/(D(x, y)) consists of all the algebraicfunctions having no poles except at the unique infinite pointP∞. Let {Pj}1≤j≤n be a set ofn K-rational points exceptP∞. We denote the pole order ofF ∈ K[X ] at P∞ aso(F ).For m ∈ Z0, theK-linear subspace

L(mP∞) := {F ∈ K[X ] | o(F ) ≤ m} ∪ {0}

has dimensionm− g+1, providedm > 2g− 2 by Riemann–Roch theorem, which we assume for simplicity in this paper.Our codeC(m) is defined as

C(m) :=

(cj) ∈ Kn

n∑

j=1

cjF (Pj) = 0, ∀F ∈ L(mP∞)

.

As shown in [20][21], the class of Cba curves is sufficientlywide and contains almost all well-known plane algebraiccurves that have manyK-rational points such as Hermitiancodes. Although Miura in [21] defined a more general classrCb,d

a including the Klein’s quartic curve, we consider mainlyCba for simplicity.Throughout this paper, we denotet as the number of

correctable errors. Given a received word(rj) = (cj) + (ej),whereej 6= 0 ⇔ j ∈ {j1, · · · , jt} corresponding to a set oferror-locationsE = {Pjγ}1≤γ≤t, we need to find a Grobnerbasis [2] of the error-locator ideal

I(E) := {F ∈ K[X ] |F (Pjγ ) = 0 for ∀Pjγ ∈ E}.

Page 3: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

MATSUI et al.: INVERSE-FREE BERLEKAMP–MASSEY–SAKATA ALGORITHM AND SMALL DECODERS FOR ALGEBRAIC-GEOMETRIC CODES 3

¬ ­ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹

º » ¼ ½ ¾¿ À Á Â Ã Ä Å Æ Ç ÈÉ

Ê Ë ÌÍ ÎÏ ÐÑ Ò Ó ÔÕ Ö ×Ø ÙÚ ÛÜ ÝÞ ßà

á âã äå æç è éê ëì íî ïð ñò óô õö

÷ø ùú ûü ýþ ÿ

�� ��

Fig. 2. Pole orders onΦ(5, 15) defined byo(n) := 3n1 + 2n2, and pole orders onΦ(0)(3, 15), Φ(1)(3, 15), Φ(2)(3, 15). The values in shaded boxescorrespond to monomials of the formxn1yn2 not contained inL(15P(0:0:1)) of Klein’s quartic curvex3y+ y3 + x = 0 over GF(23) (cf. later section V).

Then we can obtainE as the set⊂ {Pj}1≤j≤n of commonzeros of all the polynomials in the Grobner basis.

For A ∈ Z0 and0 ≤ i < a, let

Φ(i)(A) := {n = (n1, n2) ∈ Z20

∣ i ≤ n2 < i+A}

andΦ(A) := Φ(0)(A). Moreover, forA′ ∈ Z0, let

Φ(i)(A,A′) := {n ∈ Φ(i)(A)∣

∣ o(n) ≤ A′}

andΦ(A,A′) := Φ(0)(A,A′). Fig. 2 illustratesΦ(2a− 1, A′)and Φ(i)(a,A′) for A′ = 15 and (a, b) = (3, 2); althoughwe defined asa ≤ b, it must be generalized intoa > b inthe case of well-known Klein’s quartic curve, which is one ofthe important examples not contained in Cb

a curves; we willalso take up codes on this curve later in section V. We notethat o(n) 6= o(n′) if and only if n 6= n′ for n, n′ ∈ Φ(i)(a),and this is false forΦ(2a − 1). ThusF ∈ K[X ] is uniquelyexpressed as

F (x, y) =∑

n∈Φ(a,o(F ))

Fnxn1yn2 . (4)

We denotexn1yn2 by zn and defineo(n) := o(zn) = n1a+n2b, whereo(·) is defined on bothZ2

0 andK[X ]; we rememberthat o(F ) = max{o(n)|Fn 6= 0}.

From a given received word(rj), we calculate syndromevalues{ul} for l ∈ Φ(2a − 1,m) by ul =

∑nj=1 rjz

l(Pj),where we haveul =

∑t

γ=1 ejγzl(Pjγ ) by the definition of

C(m). Our aim is to findI(E) and (ej) with {ul}.

III. I NVERSE-FREEBMS ALGORITHM

We continue to prepare notations to describe the algorithm.The standard partial order≤ on Z

20 is defined as follows: for

n = (n1, n2) andn′ = (n′1, n

′2) ∈ Z

20, n ≤ n′ ⇔ n1 ≤ n′

1

and n2 ≤ n′2. For l ∈ Φ(a,A′), let l(i) ∈ Φ(i)(a,A′) be

o(l(i)) = o(l) if there exists such anl(i) for l andi. Thenl(i)

is uniquely determined for eachl and i if it exists. Note thatl(0) = l from its definition. Table I illustratesl(i) ∈ Φ(i)(3, 15)for (a, b) = (3, 2), where “∗” indicates the nonexistence ofl(i)

from a gap-number ino(Φ(i)(a)).Before the description of the algorithm, we introduce the

important indexı for 0 ≤ i < a for updating in the algorithm.For 0 ≤ i < a and N ∈ Z0, we define a unique integer0 ≤ ı < a by ı ≡ b−1N − i (mod a), where the integer0 ≤ b−1 < a is defined byb b−1 ≡ 1 (mod a). If there isl(i) = (l

(i)1 , l

(i)2 ) ∈ Φ(i)(a) with N = o(l(i)), then ı = l

(i)2 − i

sincel(i)2 ≡ b−1N (mod a). Note thatı = i, and thatl(i) existsif and only if l(ı) exists withl(i) = l(ı).

TABLE IVALUES OF l(i) = (l

(i)1 , l

(i)2 ) ∈ Φ(i)(3, 15) WITH o(l(i)) = N

� � � � � � � � �� �� �� �� �� ��

� � � � � ! " # $ % & ' ( ) *

+ , - . / 0 1 2 3 4 5 6 7 8 9 :

; < = > ? @ A B C D E F G H I J

K L M N O P Q R S T U V W X Y Z

[ \ ] ^ _ ` a b c d e f g h i j

k l m n o p q r s t u v w x y z

{|}~�

�����

�����

�����

�����

�����

����

��� 

¡¢£¤

¥¦ § ¨ © ª « ¬ ­ ® ¯ ° ±² ³´ µ¶ ·¸ ¹º »¼

½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì

Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü

Ý Þ ß à á â ã ä å æ ç è é ê ë ì

í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü

ý þ ÿ � � � � � � � � � � �

� � � � � � � � � � � � � � �

��� !

"#$%&

'()*+

,-./0

12345

6789:

;<=>

?@AB

CDEF

GH

We definedegreedeg(F ) ∈ Φ(a) of F ∈ K[X ] uniquelyby o(deg(F )) = o(F ), and lets := deg(F ). From now on,Φ(a, o(s)) is abbreviated toΦ(a, s). Defining, for l ∈ Φ(a),

dFl :=

{ ∑

n∈Φ(a,s) Fnun+l(s2)−s if l(s2) ≥ s,

0 otherwise,(5)

where “otherwise” includes the vacant case ofl(s2), we calldFl discrepancyof F ∈ K[X ] at l. Let V (u,N) be the set ofF ∈ K[X ] whose discrepancies are zero at alll ∈ Φ(a,N),and letV (u,−1) := K[X ]. Then, for allN ∈ Z0 ∪ {−1},V (u,N) is an ideal in the ringK[X ] (as proved at Proposition1 in Appendix A). The BMS algorithm computes a Grobnerbasis ofV (u,N) for eachN , namely, a minimal polynomialideal-basis with respect to the pole ordero(·). We mayexpress the basis ofV (u,N) for eachN as a polynomials{F

(i)N+1(z)}0≤i<a by (4). For sufficiently largeB, we have

V (u,B) = I(E) (proved at Proposition 3 in Appendix B).Then{F (i)

B+1(z)} are callederror-locator polynomials, and theset of their common zeros agrees withE . Since the Goppadesigned distancedG of C(m) equalsm− 2g+2, we may set

m := 2t+ 2g − 1 for the correction up tot errors, (6)

and can obtainV (u,m) by using{ul}l∈Φ(a,m).In the following inverse-free BMS algorithm, we denote the

preserved condition (P) for updating formulae as follows: (P)⇔ d

(i)N = 0 or s(i)N ≥ l(i) − c

(ı)N .

Inverse-free BMS AlgorithmInput syndrome values{ul} for l ∈ Φ(2a− 1,m).Output error-locator polynomials{F (i)

m+1(z)}.In each step, the indicated procedures are carried outfor all 0 ≤ i < a.

Page 4: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

4 SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, 2007

Step 0 (initializing)N := 0, s(i)N := (0, i),c(i)N := (−1, i), v(i)N (Z) :=

n∈Φ(a,m) unZo(n),

w(i)N (Z) := 1, f (i)

N (Z) := 1, g(i)N (Z) := 0.

Step 1 (checking discrepancy) Ifl(i) exists ands(i)N ≤ l(i),thend(i)N := v

(i)N,N , elsed(i)N := 0;

moreover,e(i)N := w(i)N,N .

Step 2 (N -updating)

s(i)N+1 :=

{

s(i)N if (P),

l(i) − c(ı)N otherwise,

(7)

c(ı)N+1 :=

{

c(ı)N if (P),

l(i) − s(i)N otherwise,

(8)

f(i)N+1 := e

(ı)N f

(i)N − d

(i)N g

(ı)N , (9)

g(ı)N+1 :=

{

Zg(ı)N if (P),

Zf(i)N otherwise,

(10)

v(i)N+1 := e

(ı)N v

(i)N − d

(i)N w

(ı)N modZN , (11)

w(ı)N+1 :=

{

Zw(ı)N if (P),

Zv(i)N otherwise.

(12)

Step 3 (checking termination) IfN < m, thenN := N +1and go to Step 1, else stop the algorithm. ✷

In the formula (11), “modZN ” means thatv(i)N+1 is defined

by omitting the term ofZN in v(i)N . Then v

(i)N , w(i)

N can berepresented by

v(i)N (Z) =

m+N∑

h=N

v(i)N,hZ

h, w(i)N (Z) =

m+N∑

h=N

w(i)N,hZ

h,

and v(i)N,N , w(i)

N,N are defined by these. We obtain{F (i)N (z)}

through

F(i)N (z) :=

n∈Φ(a,s)

f(i)N,o(s−n)z

n with s := s(i)N .

Thend(i)N in the algorithm agrees with the discrepancy ofF(i)N

at o(l) = N , i.e., d(i)N = d(F(i)N )l.

This inverse-free BMS algorithm is a novel version thateliminates the inverse calculation

(

d(i)N

)−1from the parallel

BMS algorithm [16][27]. Compared with updating formulaein the original algorithm, which are later quoted at (16)–(19),we see that (9)–(12) have eliminated the use of divisions,and in consequence have usede(ı)N . It is possible that onecould remove the inverse calculation from the original (notparallel) BMS algorithmif the values ofe(ı)N , which areactually previous values ofd(i)N , are registered to memory-elements; in our parallel inverse-free BMS algorithm, we canconveniently takee(ı)N from the coefficients ofw(ı)

N (as donein Step 1).

The following theorem confirms that{F (i)N }0≤i<a is a

Grobner basis ofV (u,N − 1).

Theorem 1:We haveF (i)N ∈ V (u,N−1), deg(F (i)

N ) = s(i)N ,

s(0)N,1 ≥ s

(1)N,1 ≥ · · · ≥ s

(a−1)N,1 , and (13)

s(i)N,1 = min

{

ζ(i)N,1 ∈ Z0

F ∈ V (u,N − 1),

deg(F ) =(

ζ(i)N,1, i

)

}

. ✷ (14)

The proof of Theorem 1 is referred to Appendix D, in whichs(i)N,1 = c

(i)N,1 + 1 is also obtained for allN and i.

As explained at Proposition 3 in Appendix B, the integerBis required asB ≥ 2t+ 4g − 2 + a to correct up tot errors.Moreover, it is well-known [3][26] that the determination ofunknown-syndrome values has to be done to proceed the loopsfor N = m + 1,m + 2, · · · , B of BMS algorithm. In ourTheorem 1, as a result of division-less, “F

(i)N,s = 1” is not

generally true differently from Theorem 1 of [16], and this factdisables us from generating the candidate values of unknownsyndromes for majority voting. Therefore, in our inverse-free BMS algorithm, we avoid the determination of unknownsyndrome, and the loops of the algorithm are proceededonlyfor 0 ≤ N ≤ m by using the known syndrome values obtaineddirectly from the received word. Furthermore, we mainlyconsider the error-correction of generic errors [5][23] (definedin the next section). These techniques cause a slight decreasein the error-correcting capability; however, as describedlaterin section IV-B, it does not matter in practice.

IV. I NVERSE-FREE ARCHITECTURE

As the first of three kinds of architectures proposed in thispaper, we describeinverse-free architecture, which has theplainest structure of the three.

A. Model structure

In this subsection, we give a direct application of theinverse-free BMS algorithm, which corresponds to Kotter’sarchitecture [7] of which inverse-calculators have been re-placed by multipliers. To make the case clear, we describe thearchitecture for elliptic codes, that is, codes on ellipticcurves,although we take the generality into account; we can employit for other codes on algebraic curves without difficulty.

As shown in the model Fig. 3, the coefficients ofv(i)N , f (i)

N

are arranged in a sequence of shift-registers, and those ofw(i)N ,

g(i)N are arranged in another sequence. It is similar to Kotter’s

architecture [7] that the proposed architecture hasa-multiplestructure (i.e.a blocks) of the architecture for the Berlekamp–Massey algorithm [1][11] of RS codes. The difference is thata division-calculators in the Kotter’s architecture are replacedwith a multipliers in our architecture. Moreover, while thevalues of discrepancy are computed in the Kotter’s architecturewith one multiplier and a shift-register according to definition(5), our architecture derives the values from the coefficients ofv(i)N with discrepancy registersand reduces the one multiplier

for computing discrepancy.In Fig. 3, we omit input and output terminals, and the

initial (N = 0) arrangement of the coefficients in polynomialsis indicated. The number of registers in one shift-registersequence forv(i)N andf (i)

N should be equal to the total numberof coefficients inv(i)N andf (i)

N , i.e.,m+2 for C(m); although

Page 5: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

MATSUI et al.: INVERSE-FREE BERLEKAMP–MASSEY–SAKATA ALGORITHM AND SMALL DECODERS FOR ALGEBRAIC-GEOMETRIC CODES 5

IJKLMNO

PQRSTUV

WXYZ[\]^_`abcdef ghijklmn

o p

qrstuvw

xyz{|}~

�������

�������

�������

�������

����� ¡

¢£¤¥¦

§©ª«¬­

®°±²³´

µ¶·¸¹º»

¼½¾¿ÀÁÂ

ÃÄÅÆÇÈÉ

ÊËÌÍÎÏÐ

ÑÒÓÔÕÖ×

ØÙÚÛÜÝÞßàáâãäåæç èéêëìíîï

ðñòóô

õö÷øù

úûüýþ

ÿ����������� �������

�� �� ������� !

"# $% &'()*+,-.

/0 12 3456789:;

<= >? @ABCDEFGH

IJKLMNOP

QRSTUVWXYZ[\]^

_`abcdefghijkl

mnopqr

stuvwxyz {|}~����

��������������

��������������

� ¡¢£¤¥¦§¨©ª«¬­® ¯°±²³´µ¶

· ¸

¹º»¼½¾¿

ÀÁÂÃÄÅÆ

ÇÈÉÊËÌÍ

ÎÏÐÑÒÓÔ

ÕÖ×ØÙÚÛ

ÜÝÞßàáâ

ãäåæçèé

êëìíî

ïðñòóôõ

ö÷øùúûü

ýþÿ����

�����

�� ����

�������

�������

!"#$%&'()*+,-./ 01234567

89:;<

=>?@A

BCDEF

GHIJKLMNOPQRSTUVWXYZ[\

]^ _` abcdefghi

jk lm nopqrstuv

wx yz {|}~�����

�� �� ���������

��������

������� ¡¢£¤¥¦

§¨©ª«¬­®¯°±²³´

µ¶·¸¹º

»¼½¾¿ÀÁ ÃÄÅÆÇÈÉÊ

Fig. 3. Inverse-free architecture for elliptic codes, which is composed ofa = 2 blocks exchangingw(i)N

andg(i)N

.

ËÌ Í ÎÏÐÑÒÓÔÕÖ×ØÙ

ÚÛ ÜÝ Þß à

áâ ãäåæç èé êëì íî ïð ñò ó ô õ ö ÷ øùú û üý þÿ�������

�� ��� � ��� �� �� �� �� � � � �� !" # $% &'()*+,-.

/0 12345 67 89 :; <=> ?@AB C DE FGHIJKLMN

OP QRSTU VW XY Z[ \]^ _`ab c de fghijklmn

op qrs tu vwx yz{ |} ~�� ��� �� ��� ��� �� ���

�� � �� ��� � �� �� ��  ¡ ¢£ ¤¥¦ §¨©ª «¬ ­® ¯°

±² ³ ´µ ¶·¸ ¹º»¼ ½ ¾¿ ÀÁ ÃÄÅÆ

ÇÈÉ Ê ËÌÍÎÏ ÐÑ ÒÓÔÕ Ö×ØÙÚ ÛÜÝÞ

ßàá âãä åæç è é êë ìíîïðñò

óôõ ö÷ øùúûüýþÿ��� � �� � �� �� ���

��� -���� ������� � !"#$ %&'( )*+,./ 0123456

789 :; <=>?@ABCDEF G HI

JKL MNOPQRSTUVWXYZ[\]^_` abcdefghijklmnopqrstuv

wxy z{ |}~� �� ���������� ��� �� ���������

��� ��� ¡ ¢£¤ ¥¦ §¨©

ª«¬ ­®¯° ±²³ ´µ ¶·¸¹º»¼½¾

¿ÀÁ Âà ÄÅÆÇ ÈÉ ÊËÌÍÎÏÐÑÒÓ ÔÕÖ ×Ø ÙÚÛÜÝÞßàá

âãä åæçèé êëì íî ïðñ

òóô õö÷ø ùúû üý þÿ�������

��� ��

�� ������� �� ������ !" #$%&'() *+ ,-./01234

567 89:;<=> ?@ ABCDEFGHI JKLMNOP QR STUVWXYZ[

\]^ _`abcdefgh ij klmnopqrstuv wxyz{|}~�� �� ������������

��� ����������� �� � ¡¢£¤¥¦§¨©ª «¬­®¯°±²³´µ ¶· ¸¹º»¼½¾¿ÀÁÂÃ

ÄÅ

ÆÇÈ

É

ÊËÌÍ

Î

ÏÐÑÒÓ

ÔÕÖ×ØÙÚÛ

ÜÝÞ ßà áâãäåæçèéêë ì íî ïðñòóôõö÷ øù úûü ýþÿ������ �� ���

� �� �� � �������� �� � � ! "

#$% &'()*+,-. /0 123 456789: ;<= >?@ABCDE

FGH IJKLMNOPQ RS TUV WXYZ[\] ^_` abcdefgh

ijk lmno

pqr st uvwxyz{|}~� � �� � �������� �� � ��� �

��� �� ��� � � �� � ¡¢ £¤ ¥¦§¨©ª«¬­ ® ¯°±²³´

µ¶· ¸¹ º» ¼½¾¿À Á ÃÄ ÅÆÇÈÉÊ

ËÌÍ ÎÏÐÑÒ ÓÔ ÕÖ ×ØÙÚÛÜÝÞß à áâãäåæ çè éê ëìíîïðñòó ô õö÷øù

úûü ýþÿ'� �� ����� ��� � ��

��� ���� ���� �� �� !"#$% &( )*+

,-. /0 123 4 5 67 89:; <= >?@ABCDEF G HIJKLM

NOP QR ST UVWXY Z[ \] ^_`abc

def ghijk lm no pqrstuvwx y z{|}~� �� �� ��������� � �����

��� ����� �� ��� ¡ ¢£¤¥¦ §¨ ©ª

«¬­ ®¯°± ²³´µ ¶· ¸¹º »¼½¾¿ ÀÁ ÂÃÄ

ÅÆÇ ÈÉÊË

ÌÍÎ Ï ÐÑÒÓÔÕÖ× ØÙ Ú ÛÜÝ Þ

ßàá âã äåæ çè éêëìíîïðñòó ôõ ö÷øùúûü ýþÿ (���

��� �����1 � ���

��� ������ ����� ! "#$%&') *+,-./023 45 6789:;<=

>?@ ABCDE FGHIJKLMN OP QRSTUVWX YZ[\

]^_ `a bcd ef ghijklmnopq rs tuvwxyz {|} ~���

��� ��������� �� ���

��� ������ ����  ¡ ¢£¤¥¦§¨ ©ª«¬­®¯°± ²³ ´µ¶·¸¹º»

¼½¾ ¿ÀÁÂà ÄÅÆÇÈÉÊËÌ ÍÎ ÏÐÑÒÓÔÕÖ ×ØÙÚ

ÛÜÝ Þß àáâãäåæçèéê ë ìíî ïð ñò óô õö÷ø

ùúû üýþÿ � ��� �� ��� �� � ����

Fig. 4. Program simulating the inverse-free architecture for (24, 16, 8) elliptic codeC(8) over GF(24) with three-error correction.

it might seem that there is no space forf(i)N , it is made by

shortening and shifting ofv(i)N asN is increased. On the otherhand, the number of shift-registers required forw

(i)N andg(i)N

is one more than that forv(i)N andf (i)N because of the structure

of parallel BMS algorithm, and should bem+ 3.

If N ≡ 0 mod (m + 3), the switches in the discrepancyregisters are closed downward to obtain the values of dis-crepancyv(i)N,N = d

(i)N , and if N 6≡ 0 mod (m + 3), they

are closed upward to output the values of discrepancy ateach clock. The head-coefficient registers work similarly tothe discrepancy registers, and output the values of the headcoefficientw(i)

N,N = e(i)N of w(i)

N . The coefficients ofw(i)N and

g(i)N are transferred from the block ofv(ı)N to that ofv(ı)N+1 (ı forN+1). The switches A and B work according to the preserving

or updating ofw(i)N andg(i)N , i.e., “(P)” or “otherwise” in (10)

and (12).

Thus, one may only perform simple additions and multipli-cations for the values in the shift-register sequences forv

(i)N

and f(i)N to update them. On the other hand, as forw

(i)N and

g(i)N , one must not only perform additions and multiplications

but also set register-values to zero, or else old disused valuescorrupt v(i)N and f

(i)N . We describe this procedure in a later

subsection IV-C.

This inverse-free architecture has ana-multiple structurecloser to Kotter’s than to the latter two architectures, andhas been changed to division-free and parallel in the senseof using two types of polynomials,v(i)N andw(i)

N , to computediscrepancy. We see in Section VII that the total number of

Page 6: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

6 SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, 2007

TABLE IIVALUES OF REGISTERS IN FOUR SHIFT-REGISTER SEQUENCES, DISCREPANCYd

(i)N

, AND s(i)N,1 IN THE INVERSE-FREE ARCHITECTURE.

�����

�������� !"#$ %&'

()*+, -./01234 567

89:;<

=>?@ABCD EFGHIJ

KLMNO

PQRSTUVWXY Z[\

]_

ab

cdefg

hijklmn

o p q r s t u v w

x yz {| }~ �� �� �� � �� ��

� �� �� �� � �� � �� �� �

�� � � � �   ¡ ¢ £ ¤ ¥¦§

¨ © ª « ¬ ­ ® ¯ ° ± ²

³ ´ µ ¶ · ¸ ¹ º » ¼ ½

¾¿

À Á Â Ã Ä Å Æ Ç È ÉÊ Ë Ì Í Î Ï Ð Ñ Ò Ó ÔÕ Ö × Ø Ù Ú Û Ü Ý Þ ßà áâ ã ä å æ ç è é ê ë ìí îïðñ òó ôõ ö÷ ø ù ú û ü ý þÿ �� �� �� �� � � � � � �� �� �� �� �� �� �� �� ! "# $ %& '( )* +, -. /0 12 34 56 78

9: ;< => ? @ A B C D EF GH IJ KL MN O P Q RS T UV W XY Z[ \] ^_ `a bc de fg hi jk l mn op qr st uv wx yz {| }~ �� ��

�� �� � � � � � � �� �� �� �� �� � � � �� � �� �  ¡ ¢£ ¤¥ ¦§ ¨© ª« ¬­ ®¯ °± ²³ ´ µ¶ ·¸ ¹º »¼ ½¾ ¿À Á ÃÄ ÅÆ ÇÈ ÉÊ ËÌ

Í Î Ï Ð ÑÒ Ó ÔÕ Ö× ØÙ ÚÛ ÜÝ Þß àá â ã äå æç èé êë ìí îï ðñ òó ô õö ÷ø ùú ûü ýþ ÿ� �� �� �� �� � � �� �� �� �� �� ��

� � � �� � ! "# $% &' () *+ ,- . / 01 23 45 67 89 :; <= >? @ AB CD EF GH IJ KL MN OP QR ST UV WX YZ [\ ]^ _` ab cd ef gh

i j kl m no pq rs tu vw xy z{ | } ~� �� �� �� �� �� �� �� � �� �� �� �� �� �� �� �� �  ¡¢ £¤ ¥¦ §¨ ©ª «¬ ­® ¯° ±² ³´ µ¶ ·¸

¹ º» ¼ ½¾ ¿À Á ÃÄ ÅÆ ÇÈ ÉÊ Ë Ì ÍÎ ÏÐ ÑÒ ÓÔ ÕÖ ×Ø ÙÚ ÛÜ ÝÞ ßà áâ ãä åæ çè éê ëì íî ïð ñò óô õö ÷ø ùú ûü ýþ ÿ� �� �� �� �� �

� �� �� �� �� �� �� �� � � �� ! "# $% &' () *+ ,- . /0 12 34 56 78 9: ;< => ?@ AB CD E FG HI JK LM NO PQ RS TU VW XY Z[

\ ]^ _` ab cd ef gh ij k lm no pq rs tu vw xy z{ |} ~ � �� �� �� �� �� �� �� �� �� �� � � �� �� �� �� ��  ¡ ¢£ ¤¥ ¦§ ¨© ª«

¬­ ®¯ °± ²³ ´µ ¶· ¸¹ º »¼ ½ ¾¿ ÀÁ Âà ÄÅ ÆÇ ÈÉ ÊË Ì Í ÎÏ ÐÑ ÒÓ ÔÕ Ö× ØÙ ÚÛ ÜÝ Þß àá â ã äå æç èé êë ìí îï ðñ òó ôõ ö÷ øù úû

üý þÿ �� �� �� �� � � � �� �� �� �� �� �� � � �� �� ! "# $% &' () *+ ,- ./ 0 1 23 45 67 89 :; <= >? @A BC DE FG HI JK

LM NO PQ RS TU V WX Y Z[ \ ]^ _` ab cd ef g h ij kl mn op qr st uv wx yz {| } ~ �� �� �� �� �� �� �� �� �� �� �� �� �� ��

�� �� �  ¡¢ £ ¤¥ ¦ §¨ © ª« ¬­ ®¯ °± ²³ ´ µ ¶· ¸¹ º» ¼½ ¾¿ ÀÁ Âà ÄÅ ÆÇ ÈÉ Ê Ë ÌÍ ÎÏ ÐÑ ÒÓ ÔÕ Ö× ØÙ ÚÛ ÜÝ Þß àá âã äå æç èé

êë ìí îï ð ñò ó ôõ ö ÷ø ùú ûü ýþ ÿ� � � �� �� �� � � � �� �� �� �� � � �� �� �� � !" #$ %& '( )* +, -. /0 12 34 56 78

9: ;< = >? @ AB C DE FG HI JK LM N O PQ RS TU VW XY Z[ \] ^_ `a bc d e fg hi jk lm no pq rs tu vw xy z{ |} ~� �� �� �� ��

�� �� �� �� �� �� � �� �� �� �� �� �  ¡¢ £¤ ¥ ¦§ ¨ ©ª «¬ ­® ¯° ±² ³´ µ¶ ·¸ ¹ º »¼ ½¾ ¿À Á ÃÄ ÅÆ ÇÈ ÉÊ ËÌ ÍÎ ÏÐ ÑÒ ÓÔ ÕÖ ×Ø

ÙÚ ÛÜ ÝÞ ßà áâ ã äå æç èé êë ìí îï ðñ òó ô õö ÷ øù úû üý þÿ �� �� �� �� � � � �� �� �� �� �� �� �� �� �� ! "# $% &' ()*+ ,- ./ 01 2 34 56 78 9: ;< => ?@ AB C DE F GH IJ KL MN OPQ RS TU VW X Y Z[ \] ^_ `a bc de fg hi jk lm no pq rs tu vw xy z{

|}~���

�� ���

��

�����

������������� ���

�� ¡¢ £¤¥¦§¨©ª «¬­

®¯°±²

³´µ¶·¸¹º »¼½¾¿À

ÁÂÃÄÅ

ÆÇÈÉÊËÌÍÎÏ ÐÑÒ

ÓÔÕ

Ö×Ø

ÙÚÛÜÝ

Þßàá

âãä

å æ ç è é ê ë ì í

î ïð ñò óô õö ÷ø ùú û üý þÿ

� � �� �� � �� �� � �

�� � � � � � � � � � ���

� � ! " # $ % & ' (

) * + , - . / 0 1 2 3

45

6 7 8 9 : ; < = > ?@ A B C D E F G H I JK L M N O P Q R S T UV WX Y Z [ \ ] ^ _ ` a bc de

fg hi jk lm n o p q r s tu vw xy z{ |} ~ � � �� � � � �� �� �� �� �� �� �� �� �� �� � �� �� �  ¡¢ £¤ ¥¦ §¨ ©ª «¬ ­®

¯° ±² ³´ µ ¶ · ¸ ¹ º »¼ ½¾ ¿À ÁÂ ÃÄ Å Æ Ç ÈÉ Ê ËÌ Í ÎÏ ÐÑ ÒÓ ÔÕ Ö× ØÙ ÚÛ ÜÝ Þß àá â ãä åæ çè éê ëì íî ïð ñò óô õö ÷ø

ùú ûü ý þ ÿ � �� �� �� �� �� � � �� � �� �� � �� �� �� �� ! "# $% &' () * +, -. /0 12 34 56 78 9: ;< => ?@ AB

C D E F GH I JK LM NO PQ RS TU VW X Y Z[ \] ^_ `a bc de fg hi j kl mn op qr st uv wx yz { |} ~� �� �� �� �� �� �� �� ��

� � � �� � �� �� �� �� ��  ¡ ¢£ ¤ ¥ ¦§ ¨© ª« ¬­ ®¯ °± ²³ ´µ ¶ ·¸ ¹º »¼ ½¾ ¿À Á ÃÄ ÅÆ ÇÈ ÉÊ ËÌ ÍÎ ÏÐ ÑÒ ÓÔ ÕÖ ×Ø ÙÚ ÛÜ ÝÞ

ß à áâ ã äå æç èé êë ìí îï ðñ ò ó ôõ ö÷ øù úû üý þÿ �� �� � �� �� � � � �� �� �� �� �� �� �� �� � !" #$ %& '( )* +, -.

/ 01 2 34 56 78 9: ;< => ?@ A B CD EF GH IJ KL MN OP QR ST UV WX YZ [\ ]^ _` ab cd ef gh ij kl mn op qr st uv wx yz {| }~ ��

�� � �� �� �� �� �� �� �� � � �� �� �� �� �� ��  ¡ ¢£ ¤ ¥¦ §¨ ©ª «¬ ­® ¯° ±² ³´ µ¶ ·¸ ¹º » ¼½ ¾¿ ÀÁ Âà ÄÅ ÆÇ ÈÉ ÊË ÌÍ ÎÏ ÐÑ

Ò ÓÔ ÕÖ ×Ø ÙÚ ÛÜ ÝÞ ßà á âã äå æç èé êë ìí îï ðñ òó ô õ ö÷ øù úû üý þÿ �� �� �� �� �� � �� �� �� �� �� �� �� �� �� !

"# $% &' () *+ ,- ./ 0 12 3 45 67 89 :; <= >? @A B C DE FG HI JK LM NO PQ RS TU VW X Y Z[ \] ^_ `a bc de fg hi jk lm no pq

rs tu vw xy z{ |} ~ �� � �� �� �� �� �� �� �� � � �� �� �� �� �� �� ��  ¡ ¢£ ¤¥ ¦ § ¨© ª« ¬­ ®¯ °± ²³ ´µ ¶· ¸¹ º» ¼½ ¾¿ ÀÁ

Âà ÄÅ ÆÇ ÈÉ ÊË Ì ÍÎ Ï ÐÑ Ò ÓÔ ÕÖ ×Ø ÙÚ ÛÜ Ý Þ ßà áâ ãä åæ çè éê ëì íî ïð ñò ó ô õö ÷ø ùú ûü ýþ ÿ� �� �� �� �� � � � ��

�� �� �� �� � �� � �� � ! "# $% &' () * + ,- ./ 01 23 45 67 89 :; <= >? @ A BC DE FG HI JK LM NO PQ RS TU VW XY Z[ \] ^_

`a bc de f gh i jk l mn op qr st uv w x yz {| }~ �� �� �� �� �� �� �� � � �� �� �� �� �� �� �� �� �  ¡¢ £¤ ¥¦ §¨ ©ª «¬ ­®

¯° ±² ³ ´µ ¶ ·¸ ¹ º» ¼½ ¾¿ ÀÁ ÂÃ Ä Å ÆÇ ÈÉ ÊË ÌÍ ÎÏ ÐÑ ÒÓ ÔÕ Ö× ØÙ Ú Û ÜÝ Þß àá âã äå æç èé êë ìí îï ðñ òó ôõ ö÷ øù úû üý

þÿ �� �� �� �� �� � � �� �� �� �� �� �� � �� � � !" #$ %& '( )* +, -. / 0 12 34 56 78 9: ;< => ?@ AB CD EF GH IJ KL MN

OP QR ST UV WX Y Z[ \] ^_ `a bc de fg hi j kl m no pq rs tu vw xy z{ |} ~ � �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� ��

 ¡ ¢£ ¤¥ ¦§ ¨ ©ª «¬ ­® ¯° ±² ³´ µ¶ ·¸ ¹ º» ¼ ½¾ ¿À Á ÃÄ ÅÆÇ ÈÉ ÊË ÌÍ Î Ï ÐÑ ÒÓ ÔÕ Ö× ØÙ ÚÛ ÜÝ Þß àá âã äå æç èé êë ìí îï ðñ

òóô

õö÷

øù

úûü

ýþ

ÿ���

shift-registers in our architecture is nearly the same as thatin Kotter’s, i.e., the additional polynomials do not contributeessentially to the total number of registers.

B. Decoding of generic errors

To implement the inverse-free algorithm effectively, weconcentrate on decoding generict-errors [5][23], for whichthe degrees(i)N of error-locator polynomials is characterizedby o(s

(i)N ) ≤ t + g − 1 + a, while in general we have

o(s(i)N ) ≤ t+2g− 1+a. In other word, the error-locationE is

generic if and only if so-calleddelta set{l ∈ Φ(a) | l ≤ s(l2)N }

of error-locator polynomials corresponds to the firstt non-gapsin o (Φ(s)). Then the loops of BMS algorithm are required for0 ≤ N ≤ m + a − 1 to obtain the error-locator polynomialsfor generict-errors, while in general0 ≤ N ≤ m+2g−1+afor all errors; these facts are proved in Appendix C. Thus wesee that(t− ⌈(a− 1)/2⌉) errors are corrected inC(m) afterN -updating for0 ≤ N ≤ m. The merits of this method arenot only that it is inverse-free and there is no majority logic[3] but also that there are fewer loops of the BMS algorithm;we can cut it down to2g− 1 loops. Furthermore, this methodcan also be applied to Kotter’s and systolic-array architectures[16].

There are two drawbacks to this method. The first is thatnon-generic errors cannot be corrected. Since generic or non-generic is also defined by whether a matrix determinant6= 0or not (as shown in Appendix C), the ratio of generic errorsto all errors is estimated at(q − 1)/q, under the hypothesisfor the randomness of values{zl(Pj)} (which is supportedby numerical tests [12]). As for a practical sizeq = 28,the ratio is equal to255/256 = 0.9960 · · · . Moreover, forerrors less thant, the percentage of correctable errors increases

since o(s(i)N )s decrease. Thus we have less effect of this

drawback. The second is that the number of correctable errorsis decreased⌈(a− 1)/2⌉ for t-error correctable codesC(m).This corresponds tot − 1 errors for all elliptic codes, andt − 8 errors for Hermitian codes overF28 . However, thishas no serious effect on practical function; we might chooseC(m + a − 1) to correct t errors, and the remaining error-correcting capability is available for error-detection uptot+⌊(a− 1)/2⌋ errors. In the next subsection, we demonstratethe decoding ofC(m) with m := m+1 (i.e. a = 2) for t-errorcorrection in codes on elliptic curves.

C. Simulation and numerical example

In this subsection, we focus on an elliptic code, especiallyon the elliptic curve defined by the equationy2 + y = x3 + xover K := F16, and simulate a decoder for it. This curvehas 25K-rational points equal to the Hasse-Weil bound withgenus one, and we obtain codeC(m) of length 24.

We choose a primitive elementα of K satisfyingα4+α =1, and represent each non-zero element ofK as the number ofpowers ofα. Moreover, we represent zero inK as−1; notethat, e.g., 0 and−1 mean1 = α0 and 0, respectively. Let theset of error-locationsE := {(x, y) = (3, 7), (9, 11), (14, 4)},and let the error-values be 6, 8, 11, respectively.

In Fig. 4, we provide a brief description of MATLAB m-file program for our architecture, wheremod(x, Y ) returnsthe smallest non-negative integer satisfyingx ≡ mod(x, Y )(modY ). Comments are written next to “%.” At line 2, ll(1+i, 1+N), which corresponds to the(1+i, 1+N)-th componentof matrix ll in MATLAB m-file notations, definesl(i)1 withN = o(l(i)) of l(i) ∈ Φ(i)(2, 8) to decode3 errors inC(8)

with m = 8. In the casel(i)1 = ∗ in ll, the logical sentences atlines 16 and19 are regarded to be false.

Page 7: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

MATSUI et al.: INVERSE-FREE BERLEKAMP–MASSEY–SAKATA ALGORITHM AND SMALL DECODERS FOR ALGEBRAIC-GEOMETRIC CODES 7

�����

�� ����

�������

�������

!"#$%&

'()*+,-

./01234

56789:;

<=>?@AB

CDEFGHI

JKLMNOP

QRSTU

VWXY

Z[\]^_`abcd efghijkl

mnopqrstuvwxyz{|}~

�������� ���������������

�������

��� ¡¢£

¤¥¦§¨©ª

«¬­®°±

²³´µ¶·¸

¹º»¼½¾¿

À

ÁÂÃÄÅÆÇÈÉÊËÌÍÎ

ÏÐÑÒÓÔÕ

Ö×ØÙÚÛÜ

ÝÞßàáâãäåæçèéê

ëìíîïðñ

òóôõö÷ø

ùúûüýþÿ

�������

����

�������

�������

���� !"

#$%&'

()*+,-./0123456 789:;<=>

?@ABCDEFGHIJKLMNOP

QRSTUVWX YZ[\]^_`abcdefg

hijklmn

opqrstu

vwxyz{|

}~�����

�������

�������

Fig. 5. Serial architecture for Klein-quartic codes, whichhas a single structure with serially-arranged coefficients.

In the case of elliptic codesC(m + 1), the number ofregisters forv(i)N and f

(i)N should be(m + 1) + 2 = 2t + 4

by (6), and that forw(i)N and g

(i)N should be2t + 5, as in

lines 3–6 for t = 3. At line 15, the valueb0 (resp. b1)corresponds toı at N for i = 0 (resp. i = 1). At lines 25and 26, the shift-register values are shifted to the neighbors,and, e.g., “v f 0(1:9):=v f 0(2:10)” indicates the shifts ofnine valuesv f 0(1):=v f 0(2), · · · , v f 0(9):=v f 0(10), wherev f 0(n) corresponds to then-th component ofv f 0.

Table II shows that our architecture outputs the error-locator polynomials{F (i)

m+1(z)} and the auxiliary polynomials

{G(i)m+1(z)} for E . The top of Table II indicates the indexes of

registers of four shift-register sequences. The center columnindicates the values of “clo” in the program, which corre-sponds to the underlying clock of the architecture. The valuesof discrepancyd(i)N are indicated at the left bottom of Table II,

where “ �� ” indicates the state thatl(i) does not exist ors(i)N,1 > l

(i)1 . The values of discrepancyd(i)N are obtained atclo

= 11N from v f 0(1) or v f 1(1) if s(i)N,1 ≤ l

(i)1 . The values of

s(i)N are indicated at the right bottom of Table II.The most difficult point in the program is that suitable

register values must be settled to−1 at the lines45 and49 fornot changing the coefficients off (i)

N . Let t(i)N := deg(G(i)N (z))

and M (i) be the value ofN at which the last updating ofG

(i)N occurred; we havet(i)N = s

(ı)

M(i) with ı at M (i), and have

t(i)N,1 = T(1 + i), M (i) = M(1 + i) in the program.Then, we

claim thatg(i)N,N−M(i) , that is, the head coefficient of

g(i)N =

o(t(i)

N)+N−M(i)

h=N−M(i)

g(i)N,hZ

h

is located at the(10 − M (i))-th register ofw g 0 or w g 1according toı = 0 or 1 if mod(clo,11) = 0. For example,if clo = 66 and N = 6, we can see froms(i)N,1 in Table II

that M (0) = 4. Theng(0)6,2 = α10 is in w g 0(6). As another

example, ifclo = 77 andN = 7, we can see thatM (1) = 6,and theng(1)7,1 = α4 is in w g 0(4).

Noting that the value inw g 0(j) at mod(clo,11) = 0 isthe shifted value atmod(clo,11) = j − 1, e.g., w g 0(11):= w g 1(1), we obtain the upper and lower conditions ofw g 0(11) andw g 1(11) := −1 at lines45 and49, since each

N + 1−M (i) value ofw g 0(j) andw g 1(j) for j = 9−N ,9 − N + 2, · · · , 9 − M (i) must be−1 at mod(clo,11) = 0

in eachw(i)N . The condition “N<8” is required to obtain the

values ofe(i)9 := w(i)9,9 for error-evaluation (stated below).

Thus, the Grobner basis{F (0)9 = α13x2 + α13y + α12x +

α2, F(1)9 = α13xy + α11x2 + α10y + α2x + α4} of ideal

I(E) has been obtained together with the auxiliary polynomials{G

(0)9 = α10x+ α14, G

(1)9 = α4y + α2x}. We obtain the set

E of error-locations through the Chien search, and obtain eacherror-value by O’Sullivan’s formula [24]

ej =

(

0≤i<a

F(i) ′m+1(Pj)

F(i)m+1,s

G(i)m+1(Pj)

e(i)m+1

)−1

for Pj ∈ E , (15)

where F(i) ′m+1(z) is the formal derivative ofF (i)

m+1(z) withrespect tox, e.g., y ′ = x2 + 1. Note that the divisionsin this formula are independent from BMS algorithm, andare calculated by the repetitional multiplications using themultipliers in our architecture as follows.

Since we haveβ−1 = β2n−2 for 0 6= β ∈ F2n , and havean = 2n−1 for the sequence defined bya1 := 1 andan+1 :=2an + 1, we see that the calculation ofβ−1 consists of(n−2) multiplications ofβ and (n − 1) squares, and the total is(2n − 3) multiplications inF2n . Thus we can say that ourarchitecture eliminatesa inverse-calculators, each of whichcorresponds to(2n − 3) multipliers, with

a−12

slight dropof error-correction capability forC(m+ a− 1).

V. SERIAL ARCHITECTURE

As the second architecture, we describeserial architecture[13], which has a different structure from Kotter’s and thepreceding ones. In this section, we focus on well-known codeson Klein’s quartic curve overK := F8, and simulate a decoderfor it. Many articles so far have treated codes on this curve asexamples.

Klein’s quartic curve is defined by equationX3Y +Y 3Z+Z3X = 0 in projective planeP2 = {(X : Y : Z)}, whichcausesy3x + x3 + y = 0 by (x, y) := (Y/Z,X/Z) in theaffine form, and has the same number ofK-rational points asHasse–Weil–Serre upper bound 24 with genus 3. We denoteK-rational points(X : Y : Z) = (1 : 0 : 0) and (0 : 1 :0) asP(1:0:0) andP(0:1:0), and other 22 points as the values

Page 8: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

8 SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, 2007

�� � �������� ¡¢£

¤¥ ¦§ ¨© ª

«¬ ­®¯°± ²³ ´µ ¶· ¸¹ º» ¼½ ¾¿ ÀÁ Âà ÄÅ Æ ÇÈ ÉÊ ËÌ ÍÎ ÏÐÑ ÒÓ Ô Õ Ö× ØÙ Ú Û ÜÝ Þ ßà á â ãä åæ ç è é ê ëì í î ïð ñ ò ó ô õ ö ÷ ø ù ú ûüý þ ÿ� ��������

� ��� � �� ��� ��� ���� � �� !"#$%&'(

)* +,- ./ 012 34 5678 9:; <= >? @A BCDE

FG H IJ KLM N OP QR S TUV W XY Z[\ ] ^_` ab cd ef

gh i jk lmn op qrst u vw xyz {| }~��

�� � ����� �� ���� ����� ����

�� ��� ���   ¡ ¢£ ¤¥¦§¨©ª«

¬­® ¯° ±²³´µ¶·¸¹º» ¼ ½¾ ¿ ÀÁ ÂÃÄÅ ÆÇÈÉÊ ËÌÍÎ ÏÐÑÒÓÔÕ Ö×ØÙ

ÚÛÜ ÝÞß àá âãäåæçèéêëìíîïðñ ò ó ôõ ö÷øùúûüý

þÿ� ��� �� ������ ��1� � � �� ��������

�� !"#$% &' ()*+,-. /0234567 89 :;<=>?@AB

CDE FGHIJ KL MNOPQRS TUVWXYZ[ \] ^_`abcdef

ghi j klmnopqrs tu vwxyz{|}~�� ��������

��� �� ����������� � �� �� ��  ¡

¢£¤ ¥¦ §¨©ª«¬ ­® ¯°±²³´µ¶·¸¹º »¼½¾¿À Á ÃÄÅÆÇÈÉÊË

ÌÍÎ ÏÐÑÒÓ ÔÕÖ×ØÙ ÚÛ ÜÝÞ

ßàá âãäå

æçè éêëìí îïðñòó ôõ ö÷øùúû

üýþ ÿ���

��� ����� � � ������ ���������� !" #$%&'()*+,-.

/01 23456 78 9:;<=>?@A BCDEFGHIJKL MN OPQRSTUVWXYZ

[\]

^

_

`ab

c

d

efghijklmn

opqrstu

vwx

yz{|}~

���������

���������������� �� ������ ¡¢£¤ ¥ ¦§ ¨© ª« ¬­ ®¯° ±² ³´µ

¶·¸ ¹º»¼½ ¾¿À Á ÃÄÅÆÇ ÈÉÊËÌ ÍÎÏÐÑ

ÒÓÔ ÕÖ×Ø

ÙÚÛ ÜÝ Þßàáâãäåæç è éê ë ìíîïðñòóô õö ÷øùúûüýþ ÿ�������

��� ��� �� 7��� ��������� �� !"#$%

&'( )*+,- ./0123456 89 :;<=

>?@ ABCD

EFG H IJKLMNOP QR S TUV W

XYZ [\ ]^_`abcdefg h ij kl mn op

qrs tu vwxyz{ | } ~� ������ �� �������������������

��� ��  ¡ ¢£¤¥¦§¨ ©ª «¬ ­®¯°±²³

´µ¶ ·¸¹º» ¼½ ¾¿ ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒ ÓÔ ÕÖ ×ØÙÚÛÜÝÞßàáâãäåæçèé

êëì íîïðñò óô õö÷øùúû üýþÿ!� � �

��� ���� ���� �� ��� ������ �� ��"

#$% &'()

*+, - ./012345 67 8 9:; <

=>? @A BCDEFG HI JKLMNOPQRST UV WXYZ[\]^_`ab cdefghijk lm nop

qrs tuvwxy z{|}~�� � ������� ��������� �� ������

��� ��� ¡ ¢£¤¥¦§¨©ª «¬ ­®¯°± ²³´µ¶·¸

¹º» ¼½¾¿

ÀÁÂ ÃÄ ÅÆÇÈÉÊËÌÍÎÏ Ð ÑÒÓ ÔÕ Ö× ØÙ ÚÛÜÝ

Þßà áâãä å æçè éê ëìíî ïðñòó ôõö÷

øù

Fig. 6. Program simulating the serial architecture for(23, 10, 11) codeC(15) on Klein’s quartic over GF(23) with four-error correction.

of (x, y). Although it is not a Cba curve, the monomial basisof L(mP(0:1:0)) to makeC(m) is obtained by{xn1yn2 |n ∈Φ(3,m)}\{y, y2} with o(n) := 3n1 + 2n2 and the minimalpole ordera = 3 as in Fig. 2. We note thatx(P(1:0:0)) =(xy)(P(1:0:0)) = 0 and (xy2)(P(1:0:0)) = 1, and then obtaincodeC(m) of length 23.

We intend to correct generic errors inC(m+2) with m :=2t+5 (cf. IV-B). Let a primitive elementα of K beα3+α = 1.We represent each non-zero element ofK as the number ofpowers ofα as in IV-C. Let the set of error-locationsE :={(x, y) = (0, 1), (1, 0), (2, 0), (3, 3)}, and let error-values be1, 2, 5, 4, respectively.

As in the model Fig. 5, the serial architecture has a singlestructure similar to that of RS codes, while Kotter’s andthe preceding inverse-free architectures have ana-multiplestructure. The initial (N = 0) arrangement of the coefficientsin polynomials is also indicated in Fig. 5. In the case ofthe architecture for codes on Klein’s quartic, it is convenientto exchangei and ı in all updating formulae (7)–(12), andthe validity follows from ı = i. For the serial architec-ture, we employ not the inverse-free BMS algorithm but theoriginal parallel BMS algorithm [16][27], which is describedby exchanging updating formulae (9)–(12) into the following(quoted from [16]):

f(ı)N+1 := f

(ı)N − d

(ı)N g

(i)N , (16)

g(i)N+1 :=

{

Zg(i)N if (P),

(

d(ı)N

)−1Zf

(ı)N otherwise,

(17)

v(ı)N+1 := v

(ı)N − d

(ı)N w

(i)N modZN , (18)

w(i)N+1 :=

{

Zw(i)N if (P),

(

d(ı)N

)−1Zv

(ı)N otherwise.

(19)

Then the coefficients ofv(ı)N andf(ı)N are arrangedserially

in the orderı = 0, 2, 1 in one sequence of shift-registers, andthose ofw(i)

N and g(i)N are arranged in the orderi = 0, 1, 2

in another. This arrangement of coefficients is decided by thepair (ı, i), and is special to the codes on Klein’s quartic; forcodes on Cba curves, see the next subsection.

Instead of the round of{w(i)N , g

(i)N } (0 ≤ i < a) among

a blocks in the preceding architecture, the orderı = 0, 2, 1

of {v(ı)N , f(ı)N } at N ≡ 0 (mod a) is changed toı = 2, 1, 0 at

N ≡ 1, and to1, 0, 2 at N ≡ 2, and so on. Although one maychange the order of the coefficients of{w

(i)N , g

(i)N }, our layout

is easier because of the existence of updating (i.e., the switch“U” in Fig. 5).

The exchange register has this role of changing the order.We introduce a method to carry it out with only shift-registers and switches. The following is a small example; atmod(clo, 3) = 0, the switch is down to take the leftmost valuein the exchange register, and at other clo’s, the switch is upin order to pass it.

ú û ü ý þ ÿ � ��

� � � � � � �

� � � � � � ��

� � � � � � � ��

�� ! "

#$% & '

()* + ,

-./ 0 12

3

4

5 6 7 8 9 : ; <=

> ? @ A B C D EF

G H I J K L M NO

P Q R S T U V WX

YZ[ \ ]

^_` a b

cde f g

hij k lm

n

o

We can see that the exchange register works like a shift-register, since the order-changing has been finished atclo = 9

Page 9: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

MATSUI et al.: INVERSE-FREE BERLEKAMP–MASSEY–SAKATA ALGORITHM AND SMALL DECODERS FOR ALGEBRAIC-GEOMETRIC CODES 9

TABLE IIIVALUES OF REGISTERS IN TWO SHIFT-REGISTER SEQUENCES, DISCREPANCYd

(i)N

, AND s(i)N,1 IN THE SERIAL ARCHITECTURE.

p q r s t u v w x yz {| }~ �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �  ¡¢ £¤ ¥¦ §¨ ©ª «¬ ­® ¯° ±² ³´ µ¶ ·¸¹ º »¼ ½¾ ¿À Á ÃÄ ÅÆ ÇÈ ÉÊ Ë ÌÍ ÎÏ ÐÑ ÒÓ ÔÕ Ö ×Ø Ù Ú ÛÜ ÝÞ ß à áâ ã äå æ ç èé êë ì í î ï ðñ ò ó ô õ ö ÷

øùú û ü ýþ ÿ �� � � � � � � � � � � �� �� � � �� �� �� � �� �� ! " # $% &' () * +, -. /0 1 23 45

678 9 :; < => ? @ A B C D E F G H I J K LM NO P Q RS TU VW X YZ [\ ]^ _ ` ab cd ef g hi jk lm n op qr st

uvw xy z {| } ~ � � � � � � � � � � � �� �� � � �� �� �� � �� �� �� � � �  ¡¢ £¤ ¥ ¦§ ¨© ª« ¬ ­® ¯° ±² ³´

µ¶· ¸¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç ÈÉ Ê ËÌ ÍÎ ÏÐ Ñ Ò ÓÔ ÕÖ ×Ø Ù ÚÛ ÜÝ Þß à á âã äå æç è éê ëì íî ï ðñ òó

ôõö ÷ ø ù ú û ü ý þ ÿ � � � � �� � �� � � � � �� �� �� � �� �� �� � � � !" #$ % &' () *+ , -. /0 12

345 6 7 8 9 : ; < = > ? @ A B CD E FG HI JK L M NO PQ RS T UV WX YZ [ \ ]^ _` ab c de fg hi j kl mn op qr

stu v w x y z{ |} ~ � �� �� � � � �� � �� � �� �� �� � � �� �� �� � �� ��  ¡ ¢ £¤ ¥¦ §¨ ©ª «¬ ­® ¯° ±² ³´ µ¶ ·¸

¹ º » ¼ ½ ¾ ¿ À Á Âà ÄÅ ÆÇ ÈÉ ÊË ÌÍ ÎÏ ÐÑ ÒÓ ÔÕ Ö× ØÙ ÚÛ ÜÝ Þß àá âã äå æç èé êë ìí îï ðñ òó ôõ ö÷ øù úû üý þÿ ��

�� �� �� �� � � �� �� �� �� �� �� �� �� � !" #$ %& '( )* +, -. /0 12 34 56 78 9: ;< => ?@ AB CD EF GH IJ KL MN OP QR ST

UVW X YZ [\ ] ^_ `a b cd ef g hi jk l mn op qr st uv wx yz {| }~ �� �� �� �� �� �� �� �� � �� �� �� �� �� �� �� ��   ¡¢

£¤¥ ¦§ ¨© ª «¬ ­® ¯ °± ²³ ´ µ¶ ·¸ ¹ º» ¼½ ¾¿ ÀÁ Âà ÄÅ ÆÇ ÈÉ ÊË ÌÍ ÎÏ ÐÑ ÒÓ ÔÕ Ö× ØÙ ÚÛ Ü ÝÞ ßà áâ ãä åæ çè éê ëì í îï ð

ñòó ôõ ö ÷ø ùú û üý þÿ � �� �� � �� �� � �� �� �� �� �� �� �� �� �� ! "# $% &' ( )* +, -. /0 12 34 56 78 9 :; <= >

?@A B C DE F GH IJ K L MN O P QR ST UV WX Y Z [\ ]^ _` ab c de fg hi j kl mn op qr s tu vw xy z {| }~ �� �� �� ��

��� � �� � �� �� � � �� � � �� �� �� ��   ¡ ¢£ ¤¥ ¦§ ¨© ª «¬ ­® ¯° ± ²³ ´µ ¶· ¸¹ º »¼ ½¾ ¿À Á Âà ÄÅ ÆÇ ÈÉ ÊË ÌÍ Î

ÏÐÑ ÒÓ Ô ÕÖ ×Ø Ù Ú ÛÜ Ý Þ ßà áâ ãä åæ ç è éê ëì íî ïð ñ òó ôõ ö÷ ø ùú ûü ýþ ÿ� � �� �� �� � � � � �� �� �� �� �

��� �� �� � !" #$ %& '( )* +, -. /0 12 34 56 78 9 : ;< => ?@ AB C DE FG HI J KL MN OP QR S TU VW XY Z [\ ]^ _` ab cd ef

ghi

jkl

mnop

q

rstuv

wxyz{|}~����� ���

����� �������� ���

�� � � � ��� � ¡¢ £¤¥¦§ ¨©ª«¬­

® ¯ ° ± ² ³

´ µ ¶ · ¸ ¹

º » ¼ ½ ¾ ¿

ÀÁÂÃÄÅÆ

ÇÈÉÊ

ËÌÍ

Î

Ï

Ð

Ñ

Ò

Ó

Ô

Õ

Ö × Ø Ù Ú Û Ü ÝÞ ßà áâ ãä åæ çè

é ê ëì í îï ð ñ òó ô õö ÷ ø ùú û ü ý

þ ÿ� �� �� �� � �� � � �� � � � � ��

� �� �� �� �� ! "# $ %& '( ) *+ , - ./ 01

2 3 4 5 6 7 8 9 : ;< => ?@ AB CD EF GH IJ KL MN OP QR ST UV WX YZ [\ ]^ _` ab cd ef gh ij kl mn op qr st uv wx yz

{ | }~ �� �� �� �� �� �� �� � �� �� �� �� �� � �� � � �� �  ¡ ¢ £¤ ¥ ¦§ ¨ © ª« ¬­ ® ¯ ° ± ²³ ´ µ ¶ · ¸ ¹

º»¼ ½ ¾ ¿À Á ÂÃ Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð ÑÒ ÓÔ Õ Ö ×Ø ÙÚ ÛÜ Ý Þß àá âã ä å æç èé êë ì íî ïð ñò ó ôõ ö÷

øùú û üý þ ÿ� � � � � � � � � � � �� �� � � �� �� �� � �� �� � ! " #$ %& '( ) *+ ,- ./ 0 12 34 56

789 :; < => ? @ A B C D E F G H I J K LM NO P Q RS TU VW X YZ [\ ]^ _ ` ab cd ef g hi jk lm n op qr st uv

wxy z{ | } ~ � � � � � � � � � � � �� � �� �� �� � � �� �� �� � �� ��  ¡ ¢ £ ¤¥ ¦§ ¨© ª «¬ ­® ¯° ± ²³ ´µ

¶·¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ ÇÈ É ÊË ÌÍ ÎÏ Ð Ñ ÒÓ ÔÕ Ö× Ø ÙÚ ÛÜ ÝÞ ß à áâ ãä åæ ç èé êë ìí î ïð ñò óô

õö÷ ø ù ú û ü ý þ ÿ � � � � �� � �� � � � � �� �� �� � �� �� �� � � � !" #$ % &' () *+ , -. /0 12 34

567 8 9 : ; <= >? @ A BC DE F G H IJ K LM N OP QR ST U V WX YZ [\ ] ^_ `a bc d ef gh ij kl mn op qr st uv wx yz

{ | } ~ � � � � � �� �� �� �� �� �� �� �� �� �� �� �� �� ��  ¡ ¢£ ¤¥ ¦§ ¨© ª« ¬­ ®¯ °± ²³ ´µ ¶· ¸¹ º» ¼½ ¾¿ ÀÁ ÂÃ

Ä ÅÆ ÇÈ ÉÊ ËÌ ÍÎ ÏÐ ÑÒ ÓÔ ÕÖ ×Ø ÙÚ ÛÜ ÝÞ ßà áâ ãä åæ çè éê ëì íî ïð ñò óô õö ÷ø ùú ûü ýþ ÿ� �� �� �� �� � � � �� �� �� ��

��� � �� �� � ! "# $ %& '( ) *+ ,- . /0 12 34 56 78 9: ;< => ?@ AB CD EF GH IJ KL MN OP Q RS TU VW XY Z[ \] ^_ `a b cd

efg hi jk l mn op q rs tu v wx yz { |} ~� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� � �  ¡¢ £¤ ¥¦ §¨ ©ª «¬ ­® ¯ °± ²

³´µ ¶· ¸ ¹º »¼ ½ ¾¿ ÀÁ  ÃÄ ÅÆ Ç ÈÉ ÊË ÌÍ ÎÏ ÐÑ ÒÓ ÔÕ Ö× ØÙ ÚÛ ÜÝ Þß àá âã äå æç èé ê ëì íî ïð ñò óô õö ÷ø ùú û üý þÿ

��� � � �� � �� � � �� � � �� �� �� �� � � �� � !" #$ % &' () *+ , -. /0 12 34 5 67 89 :; < => ?@ AB CD EF GH

IJK L MN O PQ RS T U VW X Y Z[ \] ^_ `a b c de fg hi jk l mn op qr s tu vw xy z{ | }~ �� �� � �� �� �� �� �� �� �

��� �� � �� �� � � �� �   ¡¢ £¤ ¥¦ §¨ © ª «¬ ­® ¯° ±² ³ ´µ ¶· ¸¹ º »¼ ½¾ ¿À Á à ÄÅ ÆÇ ÈÉ Ê ËÌ ÍÎ ÏÐ ÑÒ ÓÔ ÕÖ ×Ø Ù

ÚÛÜ ÝÞ ßà áâ ãä åæ çè éê ëì íî ïð ñò óô õö ÷ø ùú û ü ýþ ÿ� �� �� � �� �� � � �� �� �� � �� �� �� � �� � !" #$ %& '(

)*+

,-.

/012

3

45678

9:;<=>?@ABCDE FGH

IJKLM NOPQRSTU VWX

YZ [ \ ] ^_` abcd efghi jklmno

p q r s t u

v w x y z {

| } ~ � � �

�� � ��� ���� ����� ������

� � � � � �

� � �   ¡ ¢

£ ¤ ¥ ¦ § ¨

©ª«¬­®¯

°±²³

´µ¶

·

¸

¹

º

»

¼

½

¾

¿ À Á Â Ã Ä Å ÆÇ ÈÉ ÊË ÌÍ ÎÏ ÐÑ

Ò Ó ÔÕ Ö ×Ø Ù Ú ÛÜ Ý Þß à á âã ä å æ

ç èé êë ìí îï ð ñò óô õ ö÷ øù ú û ü ý þÿ

�� �� �� �� �� � �� �� � �� � � �� ��

and the omission bymodZN in (11) has been done afteramore clo’s.

The number of registers in one shift-register sequencefor v

(i)N s and f

(i)N s should be equal to the total number of

coefficients minus one, i.e.,3(m+ 2)− 1 for C(m), and thisworks like 3(m+2) together with the exchange registers. Onthe other hand,w(i)

N s andg(i)N s requirea more shift-registersthanv(i)N s andf (i)

N s because of the structure of parallel BMSalgorithm. Thus the number of registers forw(i)

N s andg(i)N sshould be3(m+ 2) + 3. Then6t+ 26 and6t+ 30 registersare required forC(m+ 2) with m = 2t+ 5.

In Fig. 6, we describe the architecture with a MATLAB m-file program, where the notations are the same as in Fig. 4. Atline 6, the values of[s(0)N,1, s

(1)N,1, s

(2)N,1] and [c

(0)N,1, c

(1)N,1, c

(2)N,1]

are initialized differently from all 0 and−1 because of theexclusion of{(0, 1), (0, 2)} from Φ(3).

The most difficult point in the program is again that suitableregister values should be settled to zero at line40 in thesuccessive loop for not meeting the coefficients off

(i)N . Since

α0 = f(0)0,0 is at the 49-th register in the initial values of

v f r, we claim thatg(i)N,N−M(i) (the head coefficient ofg(i)N ) is

located at the(49−3M (i))-th register ofw g r if mod(clo,54)= i. For example, ifclo = 648 and N = 12, we cansee froms

(i)N,1 in Table III that M (0) = M (1) = 11. Then

g(0)12,1 = g

(1)12,1 = α4 are inw g r(16) at clo = 648 and 649.

Similarly as in Subsection IV-C, we note that the value in

w g r(j) atmod(clo,54) = i is the shifted value atmod(clo,54)= i + j − 1, e.g.,w g r(54) := v f r(1). Moreover, since eachN+1−M (i) value ofw g r(j) for j = 46−3N , 46−3N+3,· · · , 46−3M (i) must be−1 at mod(clo,54) = i in eachw(i)

N ,we obtain the upper and lower conditions ofw g r(54) := −1at line 40 as the union of

i = 0 ⇒ j = 45− 3N, · · · , 45− 3M (0),

i = 1 ⇒ j = 46− 3N, · · · , 46− 3M (1),

i = 2 ⇒ j = 47− 3N, · · · , 47− 3M (2).

Thus we have obtained the error-locator polynomials

F(0)16 = x3 + x2 + α3xy + α2x+ α,

F(1)16 = x2y + αx2 + α6xy + α2x+ α6,

F(2)16 = xy2 + α2x2 + xy + α6x+ α5,

whose common zeros in the rational points decideE , and theauxiliary polynomials

G(0)16 = α4xy + α6x+ α6, G

(1)16 = 0,

G(2)16 = α4x2 + α6x+ α4.

Then we obtain each error-value by O’Sullivan’s formula [24]

ej =

(

0≤i<a

F(i) ′m+1(Pj)G

(i)m+1(Pj)

)−1

for Pj ∈ E ,

Page 10: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

10 SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, 2007

�����

!"#$%&'

()*+,-.

/012345

6

789:;<=> ?@ABCDEF

GHIJK

LMNOPQRSTUV WXYZ[\]^

_`abcdefghijk lmnopqrst

uvwxyz{|}~������ ��������

�������

�������

����� ¡

¢£¤¥¦§¨

©ª«¬­®¯

°±²³´µ¶

·¹º»¼½

¾¿ÀÁÂÃÄ

ÅÆÇÈÉÊË

ÌÍÎÏÐÑÒ

ÓÔÕÖ×

ØÙÚÛÜÝÞ

ßàáâãäå

æçèéêëì

íîïðñòó

ôõö÷øùú

ûüýþÿ��

������

��� �

�������

�������

��� !"#

$%&'()*

+,-./01

2345678

9

:;<=>?@A BCDEFGHI

JKLMN

OPQRSTUVWXY Z[\]^_`a

bcdefghijklmn opqrstuvw

xyz{|}~��������� ��������

�������

�������

�� ¡¢£¤

¥¦§¨©ª«

¬­®¯°±²

³´µ¶·¸¹

º»¼½¾¿À

ÁÂÃÄÅÆÇ

ÈÉÊËÌÍÎ

ÏÐÑÒÓÔÕ

Ö×ØÙÚ

ÛÜÝÞßàá

âãäåæçè

éêëìíîï

ðñòóôõö

÷øùúûüý

þÿ�����

Fig. 7. Serial inverse-free architecture for Hermitian codes, which is the closest to the RS-code error-locator ones.

�� � ��� ������

�� �� �� �

�� ��� ! "# $% &' () *+ ,- ./ 01 23 45 67 89 :; <= >? @A BC D EF GH IJK L MN OP QR ST UV WX YZ [\ ]^ _` ab cd ef gh i j kl mn op qr st uvwx yz {| }~ � �� �� �� � � �� �� � � � �� � � � � �� �� �� �� � � � ¡¢ £ ¤ ¥ ¦§ ¨ © ª « ¬­ ®¯ °± ²³ ´ µ ¶· ¸¹ º » ¼ ½¾ ¿À Á ÃÄ ÅÆ ÇÈ ÉÊ Ë Ì Í ÎÏÐ Ñ ÒÓÔ ÕÖ×ØÙÚÛÜÝ

Þß àáâãä åæ çè é ê ë ìí îïð ñòóô õ ö÷ø ùúûüýþÿ��

�� ��� � ��� � � ���� �� �� ��� �� �� �!"# $%& '( )* +, -. /012

34 5678 9: ;<= >? @A BCDE FGHI JK LMN OP QR STUV

WX Y Z[ \]^ _ `a bc d e fgh i jk lmn op qr stuv wx yz {|

}~ � �� ��� �� �� ���� � �� ��� �� �� ����

�� ���  ¡¢ £ ¤ ¥ ¦§¨©ª«¬­® ¯ °±²³´ µ¶ ·¸¹º »¼½¾¿ ÀÁÂÃ

ÄÅÆ ÇÈ ÉÊËÌÍÎÏÐÑÒÓÔ Õ Ö× Ø ÙÚ ÛÜÝÞ ßàáâãäåæç èéêëìíî ïðñò

óôõ ö÷ø ùú ûüýþÿ ��������� �� ��������

��� ��� �� �� !"#$+%&'()* , - ./ 01234567

89: ;<=>?@ AB CDEFGHIJ KLMNOPQRS TU VWXYZ[\]^_ `abcdef gh ijklmnopq

rst uvwxyz {| }~������ ��������� �� ���������� ������  ¡¢ £¤¥¦§¨©ª«

¬­® ¯°±²³ ´µ ¶·¸¹º»¼ ½¾¿ÀÁÂÃÄ ÅÆ ÇÈÉÊËÌÍÎÏ ÐÑÒÓÔ ÕÖ ×ØÙÚÛÜÝ

Þßà áâãäåæçè éê ëìíîïðñòó ôõö÷ø ùú ûüýþÿ � �������� �� ������

��� �� �������!"#$% & '( )* +, -. /0

123 45 6789:; <= >?@ABCDEFGHI JKLMNO PQ RSTUVWXYZ

[\] ^_`ab cdefgh ij klm

nop qrst uvwxyz {| }~�������

��� ����� ������ �� ������ ���� ¡ ¢£ ¤¥¦§¨©

ª«¬ ­®¯°

±²³ ´µ¶·¸¹º»¼½¾¿ ÀÁ ÂÃÄÅÆÇÈÉÊËÌÍÎ ÏÐÑÒÓÔÕÖ×ØÙÚ ÛÜ ÝÞßàáâãäåæçèé

êëì íî ïðñòóôõö÷øùú û üý þÿ 1� �� �� 6�� � ���

�� ���� ��� �� ���� ���!"# $%&'( )*+,-./

023 4578

9:; <= >?@ABCDEFG H IJ KLMNOP QR STUV WXYZ[\]^_` ab cdefgh

ijk lmnop qrstuvwxyz {| }~�� ����

��� � �������� �� � ��� �

��� �� ��� ¡¢£¤¥¦§¨ © ª« ¬­ ®¯ °± ²³

´µ¶ ·¸ ¹º»¼½¾ ¿ À Á ÃÄÅÆÇÈ ÉÊ ËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝ

Þßà áâ ãä åæçèéêë ìí îï ðñòóôõö

÷øù úûüýþ

ÿ�� �� � ����������%������

��� �� �� � !"#$&'()*+,-./012

345 6789:; <= >?@ABCD EFGHIJ KL MN

OPQ RSTU

VWX YZ[\]^ _` abc defghi jk lmn

opq rstu

vwx y z{|}~��� �� � ��� �

��� �� ������� �� ��������� ¡¢ £¤ ¥¦§¨©ª«¬­®¯° ±²³

´µ¶·¸

¹º» ¼½¾¿ÀÁÂÃÄÅ ÆÇ ÈÉÊ

ËÌÍ ÎÏÐÑÒÓ ÔÕÖ×ØÙÚ Û ÜÝÞßàáâ ãäåæçèéêëì íî ïðñòóôõ

ö÷ø ùúûüý þÿ�������� � ����� ����

��� �� ������ !"#$% & '()* +, -. /0 1234

567 89:; < =>? @A BCDE FGHIJ KLMN

O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g

h i j k l m n o p q r s t u v w x y z { | } ~ � �

� � � � � � � � � � � � � � � � � � � � � � � � �

� � � � � �   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° ± ²

³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë

Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à á â ã ä

å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý

þ ÿ � � � � � � � � � � � � � � � � � � � �

Fig. 8. Program simulating the serial inverse-free architecture for(64, 45, 14) Hermitian code over GF(24) with five-error correction.

where F(i) ′m+1(z) is the formal derivative ofF (i)

m+1(z) withrespect tox, e.g.,y ′ = (x2 + y3)(xy2 + 1)−1. The divisionsin (15) are not required in this architecture sinceF

(i)m+1,s and

e(i)m+1 have been normalized asα0.The definite difference from the preceding one is that the

serial architecture has a compact structure analogous to theRS-code case, with one inverse-calculator for the parallelBMSalgorithm (not inverse-free). In the next section, we will tryto remove it from the serial architecture.

VI. SERIAL INVERSE-FREE ARCHITECTURE

We describeserial inverse-free architecture[17], whichhas the smallest circuit-scale we have ever obtained and is

the last among the three kinds of proposed architectures. Inthis section, we focus on Hermitian codes, that is, codes onHermitian curves. These codes overF256 have the outstandingproperties, and are ones of the most promising candidates forpractical use. For simplicity, here we simulate the architecturefor a Hermitian code overK := F16. The Hermitian curvedefined by equationy4 + y = x5 is one of C54 curves, and has65 K-rational points equal to the Hasse–Weil upper boundwith genus6. Then codes on this curve can have code-length64.

As in the preceding two sections, we intend to correctgeneric errors inC(m + 3) with m := 2t + 11. The no-tations concerningK are the same as in subsection IV-C.

Page 11: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

MATSUI et al.: INVERSE-FREE BERLEKAMP–MASSEY–SAKATA ALGORITHM AND SMALL DECODERS FOR ALGEBRAIC-GEOMETRIC CODES 11

TABLE IVVALUES OF REGISTERS IN TWO SHIFT-REGISTER SEQUENCES, DISCREPANCYd

(i)N

, AND s(i)N,1 IN THE SERIAL INVERSE-FREE ARCHITECTURE.

���

��

� � � � ! " # $ %& '( )* +, -. /0 12 34 56 78 9: ;< => ?@ AB CD EF GH IJ KL MN OP QR ST UV WX YZ [\]

^ _ `a bc de fg hi jk lm no pq rs tu vw xy z{ |} ~ �� �� �� � � �� �� �� �� �� �� �� �� �� �� �� �� �  ¡¢ £

¤¥¦§ ¨ © ª « ¬ ­ ®¯ ° ±² ³´ µ¶ ·¸ ¹ º » ¼ ½¾ ¿ À Á ÂÃ Ä ÅÆ Ç È ÉÊ Ë Ì ÍÎ ÏÐ ÑÒ ÓÔ ÕÖ × Ø ÙÚ ÛÜ

ÝÞßà á âã äå æç èé êë ì í î ï ðñ ò ó ô õö ÷ø ù úû ü ýþ ÿ� � � �� �� �� � � � � �� �� �� �� ��

��� � �� ! "# $ % &' () *+ , -. /0 12 34 5 67 8 9: ;< = > ? @A BC DE F G HI JK LM N O PQ RS TU V

WX YZ [\ ]^ _` ab cd ef gh ij kl mn op qr st uv wx yz {| }~ �� �� �� �� �� �� ��

��� � �� �� �� �� � �� �� ��  ¡ ¢£ ¤¥ ¦§ ¨© ª« ¬ ­® ¯° ±² ³´ µ¶ ·¸ ¹º »¼ ½¾ ¿À Á

Â Ã Ä Å Æ Ç È É Ê ËÌ ÍÎ ÏÐ ÑÒ ÓÔ ÕÖ ×Ø ÙÚ ÛÜ ÝÞ ßà áâ ãä åæ çè éê ëì íî ïð ñò óô õö ÷ø ùú ûü ýþ ÿ� ���

� � � � �� � � �� �� �� �� �� �� �� �� � !" #$ %& '( )* +, -. /0 12 34 56 78 9: ;< => ?@ AB CD EF GH IJ

KLMN O P Q RS TU VW XY Z[ \] ^_ `a bc de fg hi jk l mn op qr s tu vw x y z{ |} ~ � �� �� � �� �� �� �� ��

���� � � � � � �� �� � �� �  ¡¢ £¤ ¥ ¦§ ¨© ª «¬ ­® ¯° ± ²³ ´µ ¶· ¸ ¹ º» ¼½ ¾ ¿À Á ÃÄ ÅÆ ÇÈ ÉÊ ËÌ ÍÎ ÏÐ

ÑÒÓ Ô Õ Ö × ØÙ ÚÛ ÜÝ Þß àá âã äå æç èé êë ìí îï ðñ òó ôõ ö÷ øù úû üý þÿ �� �� �� �� �� � �� �� �� �� ��

�� �� �� �� ! "# $% &' () *+ ,- ./ 01 23 45 67 89 :; <= >? @A BC DE FG HI JK LM NO PQ RS TU VW XYZ[\ ] ^_ `a bc de fg hi jk lm no pq rs t uv wx yz { |} ~� �� �� �� �� �� �� �� �� �� �� �� �� � �

���

���

 ¡¢£¤

¥¦§¨©ª«¬­®¯°± ²³´

µ¶·¸¹ º»¼½¾¿ÀÁ ÂÃÄ

Å

Æ

Ç

È

É

Ê

Ë

Ì

Í Î Ï Ð Ñ ÒÓ ÔÕ Ö× ØÙ ÚÛ ÜÝ Þß àá âã äå æç èé êë ìíî ï ð ñò ó ôõ ö÷ øù úû üý þÿ �� � �� �� �� � � ��

� �� �� � �� � �� �� �� � ! "# $ %& '( )* + , -. /0

1 23 45 67 89 :; < => ?@ A BC DE FG H IJ KL MN OP QR ST

U VW XY Z[ \] ^_ `a bc de fg hi jk lm no pq r st uv w xy

z{|}~

��

� ��� ���� ����� ������

� � � � � �

� � � � � �

  ¡ ¢ £ ¤ ¥

¦ § ¨ © ª «

¬­®¯°±

²³

´

µ¶·¸¹º»¼

½¾

¿ À Á Â Ã Ä Å Æ Ç ÈÉ ÊË ÌÍ ÎÏ ÐÑ ÒÓ ÔÕ Ö× ØÙ ÚÛ ÜÝ Þß àá âã äå æç èé êë ìí îï ðñ òó ôõ ö÷ øù úû üý þÿ�

� �� �� �� �� � � �� �� �� �� �� �� �� �� � ! "# $% &' ( ) *+ ,- ./ 01 23 45 67 89 :; <= >? @A BC DE F

GHIJ K L M N O P QR S TU VW XY Z[ \ ] ^ _ `a b c d ef g hi j k lm n o pq rs tu vw xy z { |} ~�

���� � �� �� �� �� �� � � � � �� � � � �� �� � �� �  ¡ ¢£ ¤ ¥ ¦§ ¨© ª« ¬­ ® ¯ ° ± ² ³´ µ¶ ·¸ ¹º »¼

½¾¿ À Á ÃÄ ÅÆ Ç È ÉÊ ËÌ ÍÎ Ï ÐÑ ÒÓ ÔÕ Ö× Ø ÙÚ Û ÜÝ Þß à á â ãä åæ çè é ê ëì íî ïð ñ ò óô õö ÷ø ù

úû üý þÿ �� �� �� �� � � � �� �� �� �� �� �� �� �� �� ! "# $% &' () *+ ,- ./

012 3 45 67 89 :; < => ?@ AB CD EF GH IJ KL MN O PQ RS TU VW XY Z[ \] ^_ `a bc d

e f g h i j k l m no pq rs tu vw xy z{ |} ~� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� ��  ¡ ¢£ ¤¥¦

§ ¨ © ª « ¬­ ®¯ °± ²³ ´µ ¶· ¸¹ º» ¼½ ¾¿ ÀÁ Âà ÄÅ ÆÇ ÈÉ ÊË ÌÍ ÎÏ ÐÑ ÒÓ ÔÕ Ö× ØÙ ÚÛ ÜÝ Þß àá âã äå æç èé êë ìí

îïðñ ò ó ô õö ÷ø ùú ûü ýþ ÿ� �� �� �� �� � � � � �� �� �� � �� �� � � �� � ! " #$ %& ' () *+ ,- ./ 01

2345 6 7 8 9 : ;< => ? @A BC DE FG H IJ KL M NO PQ RS T UV WX YZ [ \ ]^ _` a bc de fg hi jk lm no pq rs

tuv w x y z {| }~ �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �  ¡¢ £¤ ¥¦ §¨ ©ª «¬ ­® ¯° ±² ³´ µ¶ ·¸ ¹º

»¼ ½¾ ¿À Á ÃÄ ÅÆ ÇÈ ÉÊ ËÌ ÍÎ ÏÐ ÑÒ ÓÔ ÕÖ ×Ø ÙÚ ÛÜ ÝÞ ßà áâ ãä åæ çè éê ëì íî ïð ñò óô õö ÷ø ùú ûü

ýþÿ � �� �� �� �� � � � �� �� �� �� � �� �� �� � � !" #$ %& '( )* +, -. /0 12 34 56 78 9: ; <

=>?

@AB

CDEFG

HIJKLMNOPQRST UVW

XYZ[\ ]^_`abcd efg

h

i

j

k

l

m

n

o

p q r s t uv wx yz {| }~ �� �� �� �� �� �� �� �� ��� � � �� � �� �� �� �� �  ¡¢ £¤ ¥ ¦§ ¨© ª« ¬ ­® ¯° ±²³ ´µ ¶· ¸ ¹º » ¼½ ¾¿ ÀÁ  ÃÄ ÅÆ Ç ÈÉ ÊË ÌÍ Î Ï ÐÑ ÒÓÔ ÕÖ ×Ø ÙÚ ÛÜ ÝÞ ß àá âã ä åæ çè éê ë ìí îï ðñ òó ôõ ö÷ø ùú ûü ýþ ÿ� �� �� �� �� � � � �� �� �� � �� �� � ��

��� !

"#

$ %&' ()*+ ,-./0 123456

7 8 9 : ; <

= > ? @ A B

C D E F G H

I J K L M N

OPQRST

UV

W

We demonstrate 5-error correction, and set the error-locationsE := {(x, y) = (−1, 0), (5, 3), (9, 8), (10, 13), (12, 2)}, andlet error values be 11, 13, 2, 12, 9, respectively.

As shown in the model Fig. 7, the serial inverse-freearchitecture also has the same single structure as that of RScodes. Initially, the coefficients ofv(i)N s andf (i)

N s are arrangedserially in the orderi = 0, 1, 2, 3 in a sequence of shift-registers, and those ofw(ı)

N s andg(ı)N s are arranged in the orderı = 0, 3, 2, 1 in another. This arrangement of coefficients isdecided by the pair(i, ı) with i+ı ≡ 0(mod4), and in generalfor other codes on Cba curves, one can also arrange them in asimilar manner withi + ı ≡ 0 (mod a). Then the exchangeregister changes the orderi = 0, 1, 2, 3 of {v

(i)N , f

(i)N }s at

N ≡ 0 (mod 4) into i = 1, 2, 3, 0 at N ≡ 1, · · · , i = 3, 0, 1, 2atN ≡ 3. In general, for other codes on Cb

a curves, it changesthe order ofi so as to keepi + ı ≡ b−1N (mod a) as thedefinition of ı.

In the case of the serial inverse-free architecture, we requiretwo other sequences ofa shift-registers,supplementary regis-ters, as in Fig. 7. These do not appear in the algorithm but aredue to technical reasons in the architecture. For example, wecan see in Table IV that the valuess(0)17,1 = 2 ands(1)17,1 = 1 areincreased to 3 and 2 at the sameN = 18. For such cases, thesupplementary registers hold the values of the head coefficientsv(i)N,N andw(ı)

N,N ; otherwise the valuew(ı)N,N cannot be updated

to v(i)N,N .

For the same reason as the previous ones, suitable register

X Y Z [\ ]^ _` ab cd

e fg hi jk lm no pq rs

t uv wx yz

{ | }~ �� � � �� � �� �� ��

� �� � � � � �� �

� � � � �

�� � �

� ¡¢£¤

¥¦§¨©ª

«¬­®¯°

±²³´µ¶

·¸¹º»¼

½¾¿ÀÁÂ

ÃÄÅÆÇÈ

ÉÊËÌÍÎ

Ï Ð Ñ ÒÓ ÔÕ Ö× ØÙ ÚÛ

Ü ÝÞ ßà áâ ãä åæ çè éê

ë ìí îï ðñ

ò ó ôõ ö÷ ø ù úû ü ýþ ÿ� ��

� �� � � � � �

� � � �

�� � �

�����

����

� !

"#$%&

'()*

+,-

./012

3456

789

:;<=>

?@AB

CDE

Fig. 9. Output of the serial inverse-free architecture, where polynomials aredepicted onΦ(4, 9).

values should be set to zero at line41, where the condition isderived by taking the supplementary registers into accountasfollows: Sinceα0 = f

(0)N,0 is at the 101-th register in the initial

values ofv f r as seen in line3, we claim that the head coef-ficient g(i)

N,N−M(i) is located at the(101− 4M (i))-th registerof w g r if mod(clo,112) = i. For example, ifN = 18, wecan see froms(i)N,1 in Table IV thatM (0) = M (1) = 17. Then,

in w g r(33), g(0)18,1 = α11 is at clo = 2016, andg(1)18,1 = α11

is at clo = 2019.Similarly as in section V, we note that the value inw g r(j)

at mod(clo,112) = i is the shifted value atmod(clo,112)= i+ j − 1 + 4, where “+4” is caused by the supplementaryfour shift-registers. Moreover, since eachN +1−M (i) valueof w g r(j) for j = 97 − 4N , 97 − 4N + 4, · · · , 97 − 4M (i)

Page 12: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

12 SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, 2007

must be−1 at mod(clo,112) = i in eachw(i)N , we obtain the

upper and lower conditions ofw g r(108) := −1 at line 41as the union of

i = 0 ⇒ j = 100− 4N, · · · , 100− 4M (0),

...

i = 3 ⇒ j = 103− 4N, · · · , 103− 4M (3).

Thus, the Grobner basis of idealI(E) and the auxiliarypolynomials have been obtained as in Fig. 9, e.g.,

F(0)25 = α11x3 + α10xy + α8x2 + α2y + αx+ α2,

and obtain each error-value by O’Sullivan’s formula (15).In this manner, we have constructed the smallest-scale

architecture, which uses the supplementary registers differentlyfrom the others. In our example, the total number of shift-registers for polynomials is 215, while for the supplementaryregisters, it is 8, i.e., 3.7%. Furthermore, this percentage isdecreased for largert, and approximately1/m, as seen inthe next section; we have, e.g.,m = 2t + 239 for the otherHermitian codes overF256. Hence we can say that2a shift-registers for the supplementary registers are reasonably smallin the whole architecture.

VII. PERFORMANCE ESTIMATION

In this section, we estimate the numbers of multipliers,calculators for inverse, and registers, and the total runningtime. Although the estimation at Section IX in [16] was donewith respect to the upper boundλ = t+2g−1+a of o(s(i)N )s, itis now convenient to estimate with respect tom = 2t+2g−1of the codeC(m) since we consider architectures without thedetermination of unknown-syndrome values.

We quote the result of the systolic array in [16]; the numbersof multipliers and calculators for inverse are2am andam/2,respectively, as seen at the upper part of Fig.4 in [p.3866,16].The number of registers and the total running time are(4m+9)a/2 andm+ 1, respectively.

The Kotter’s architecture [7] has3a multipliers,a calcula-tors for inverse, anda(4λ+5) registers, whereλ = (m+1)/2−1+a since we restrict correctable errors to the generic errors.The total running time takes2(λ+1)(m+1) = (m+3)(m+1).

The serial architecture and the serial inverse-free architec-ture have two multipliers, and the inverse-free architecture hasa times two multipliers. There is one calculator for inverseonly in the serial architecture. The number of registers forthese three architectures is equal to2a times m + 2, whichconsists of the number of syndromes including the gaps plusone for the initial value off (i)

N ; we ignore the contributionof the discrepancy, exchange, and supplementary registerssince these are at most a few multiples ofa and disappearin the order ofm. The total running time for the inverse-free architecture agrees withm + 1 times the number ofregisters in the sequence forw(i)

N and g(i)N , which is equal

to (m + 1)(m + 2). Those for the other two agree witha(m+ 1)(m+ 2).

We summarize these results in Table V, where we denoteonly the terms of the highest orders form in the estimations. In

TABLE VPERFORMANCE OF VARIOUS ARCHITECTURES.

FGHIJKLMNOPQ

RSTUVWXYZ[\]

^_`abc

defghi

jklmnopqrstu

vwxyz{|}

~������� �����

�������

����

������ ��

�� ¡¢£¤¥¦

§¨©ª«¬

­®

¯°±²³´

µ¶·¸¹º»¼½¾¿ÀÁÂ

ÃÄÅÆÇÈÉÊËÌÍÎ

ÏÐÑÒÓÔÕÖ×ØÙÚ

ÛÜÝÞßà

áâãäåæ

çèéêëìíîïðñò

óôõö÷øùú

ûüýþÿ�� �����

���������

������ ������� !"#

$%&'()*+

,-./0123

456789:;<=>?

@ABC

DE F

GH I JK

L M

NO P

QRS

TU

V W

XYZ

[\]^

_`

abc

d

ef

addition, there is an architecture between Kotter’s and Inverse-free that employs the parallel BMS algorithm (not inverse-free); we call this temporarilyparallel-BMS architectureandadd it to the table. For example, in the case of Hermitiancodes over28-element finite field,a and m is equal to 16and2t + 239, respectively. Since the numbers of registers inall architectures have an unchanged order2am in Table V,we can see that these architectures have optimized their spacecomplexity.

Then we can see in Table V thata multipliers havebeen reduced from Kotter’s to Parallel-BMS, and thatainverse-calculators have been reduced from Parallel-BMS toInverse-free. Both contribute to the reduction of computationalcomplexity. It is noticed that the latter reduction has beenaccompanied inC(m+a−1) by the slight decrease

a−12

ofcorrectable errors that is assignable to error-detection.On theother hand, two types of serial architectures have the constantnumbers of finite-field calculators, and their running timetakesa times longer than that of non-serial types. Thus ourserializing method has provided a preferred trade-off betweencalculators and delay.

VIII. C ONCLUSIONS

In this paper, we have proposed the inverse-free paral-lel BMS algorithm for error-location in decoding algebraic-geometric codes. Thus we have improved decoding boundt ≤ ⌊(dG − g − 1)/2⌋ in [6] based on linear system withoutthe determination of unknown syndromes for AG codes, tot ≤ ⌊(dFG − a)/2⌋ for generic errors, where, e.g.,g = 120anda = 16 for Hermitian codes overF28 . Moreover, we haveconstructed three kinds of error-locator architectures using ouralgorithm. These architectures were not implemented untilthedetermination procedure of unknown syndromes was removedfrom the error-location algorithm. Our novel algorithm andarchitectures have a wide range of applications to Grobner-basis schemes in various algebraic-coding situations, suchas Sudan algorithm [29], Guruswami–Sudan algorithm [4],Koetter–Vardy algorithm [8], and encoding of algebraic codes[19].

We have aimed to construct our architectures with onlyshift-registers, switches, and finite-field calculators. The com-

Page 13: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

MATSUI et al.: INVERSE-FREE BERLEKAMP–MASSEY–SAKATA ALGORITHM AND SMALL DECODERS FOR ALGEBRAIC-GEOMETRIC CODES 13

position of shift-registers is superior to that of RAMs (random-access memories) in decoding speed, and moreover, our ap-proach is useful for revealing their regularity.

We can conclude that the error-locator architectures correct-ing generic errors have been completed by the whole from sys-tolic array (max. parallelism) to serial inverse-free ones(min.parallelism). These architectures enable us to fit the decoderof the codes to various sizes and speeds in many applications.It may also be concluded that our methodology, which is thedirect decoding from only the received syndromes, correctlygeneralizes the RS-code case.

APPENDIX APROOF THATV (u,A) IS AN IDEAL

We first note that, by (5) and the following lemma,

f ∈ V (u,A) ⇔ dfl = 0 for l ∈ Φ(a,A)

⇔∑

n∈Φ(a,s)

fnun+h = 0 for h ∈ Φ(a,A− o(s)). (20)

Lemma 1:We have{l(s2) − s | l ∈ Φ(a,A), l(s2) ≥ s} =Φ(a,A− o(s)). ✷

Proof. Obviously{l(s2) − s | l ∈ Φ(a,A), l(s2) ≥ s} equals

{l− s | l ∈ Φ(s2)(a,A), l ≥ s} = Φ(a,A− o(s)),

where the last equality follows from correspondencel− s =:h ∈ Φ(a,A− o(s)). ✷

For simplicity, we denotePj and ej as Pγj∈ E and the

error-valueeγjwithout loss of generality. Then we convert

the sum∑

fnun+h in (20) as

n∈Φ(a,s)

fn

t∑

j=1

ejzn+h(Pj) =

t∑

j=1

ejzh(Pj)

n∈Φ(a,s)

fnzn(Pj)

=

t∑

j=1

ejzh(Pj)f(Pj). (21)

Proposition 1: For all A ∈ Z0, the setV (u,A) ⊂ K[X ] isa polynomial ideal. ✷

Proof. Suppose thatf andg ∈ V (u,A) with s := deg(f)andt := deg(g). Then we show thatf+g andzhf ∈ V (u,A).Note that, by (21),

d(f + g)l =

t∑

j=1

ej(f + g)(Pj)zl(s2+t2)−s−t(Pj)

=∑

ejf(Pj)zl(s2+t2)−s−t(Pj)

+∑

ejg(Pj)zl(s2+t2)−s−t(Pj),

and the last two sums are zero from the assumption and{l(s2+t2) − s− t} = Φ(a,A− o(s)− o(t)) ⊂ Φ(a,A− o(s)),Φ(a,A− o(t)) by Lemma 1. Forzhf , note that

d(zhf)l =∑

ej(zhf)(Pj)z

l(s2+h2)−s−h(Pj)

=∑

ejf(Pj)zl(s2+h2)−s(Pj),

and{l(s2+h2) − s} = Φ(a,A − o(s) − o(h)) + h by Lemma1. AlthoughΦ(a,A − o(s) − o(h)) + h 6⊂ Φ(a,A − o(s)) in

general, the monomialzl(s2+h2)−s is represented as the linear

combination of elements in{zl | l ∈ Φ(a,A−o(s))}. Then weobtaind(zhf)l = 0 from the assumption, which completes theproof. ✷

APPENDIX BPROOF OFV (u,B) = I(E)

This follows from the next Corollary and Lemma 2.Proposition 2: Let f ∈ K[X ] be satisfying∑

h∈Φ(a,s)

fhuh+lj = 0 for lj ∈ Φ(a) with j = 1, · · · , t

anddet([

zlj(Pj′ )])

6= 0. Thenf ∈ I(E) holds. ✷

Proof. Since∑

h∈Φ(a,s) fhuh+l is converted as (21).✷

Using Riemann–Roch Theorem, we see that the map

L((t+ 2g − 1)P∞) → Ftq (f 7→ [f(P1), · · · , f(Pt)])

is surjective. Hence there are linearly independentt vectors ofthe form

[

zl(P1), · · · , zl(Pt)

]

for l ∈ Φ(a, t + 2g − 1), andwe obtain the following sufficient condition for all errors.

Corollary : Let f ∈ K[X ] be satisfying∑

h∈Φ(a,s)

fhuh+l =

0 for all l ∈ Φ(a, t+ 2g − 1). Thenf ∈ I(E) holds. ✷

Lemma 2:We can choose a Grobner basis{f (i)}0≤i<a ofI(E) aso(f (i)) ≤ t+ 2g − 1 + a for all i. ✷

Proof.First, we notice that an elementf (i) of Grobner basismay be determined uniquely by

o(f (i)) = minf∈I(E)

{

o(f)∣

∣ o(f) ≡ imod a}

. (22)

Let ni be one of{t + 2g, t + 2g + 1, · · · , t + 2g − 1 + a}satisfyingni ≡ imod a. We temporarily denote asℓ(D) :=dimL(D), where L(D) := {f ∈ K[X ] | divisor(f) +D is positive} ∪ {0} for a divisorD. Since we have

ℓ(

(t+ 2g − 1)P∞ − E)

= g,

ℓ(

(t+ 2g)P∞ − E)

= g + 1,

...

ℓ(

(t+ 2g − 1 + a)P∞ − E)

= g + a,

whereE :=∑t

j=1 Pj , there isf ∈ I(E) satisfyingo(f) = ni.Theno(f (i)) ≤ ni is obtained by (22), andmax{o(f (i)) | 0 ≤i < a} ≤ max{ni | 0 ≤ i < a} = t+2g− 1+ a leads Lemma2. ✷

Proposition 3: B ≥ 2t+4g− 2+ a ⇒ V (u,B) = I(E)✷Proof. If f ∈ K[X ] and s := deg(f) ≤ l(s2), then dfl is

converted similarly as (21) to

dfl :=∑

eif(Pi)zl(s2)−s(Pi).

Hence, if f(P1) = · · · = f(Pt) = 0, then we havedfl = 0, and thusI(E) ⊂ V (u,B) is obvious. To prove⊃, let {f (i)

B+1}0≤i<a be a Grobner basis ofV (u,B), where“B + 1” is for consistency in the previous notation. SinceI(E) ⊂ V (u,B), we can choose it aso(f (i)

B+1) ≤ t + 2g −1 + a from Lemma 2 and its proof. Now we suppose that

Page 14: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

14 SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, 2007

d(f(i)B+1)l =

h f(i)B+1,huh+l(i)−s

(i)

B+1

= 0 for all l ∈ Φ(a,B)

with l(i) ≥ s(i)B+1. Then we have, by Lemma 1,{l(i)−s

(i)B+1} =

Φ(a,B − o(s(i)B+1)) ⊂ Φ(a, t+ 2g − 1). Thus we see that the

inverse inclusion follows from Corollary of Proposition 2.✷

APPENDIX CGENERIC CASE

Let mt := min {m ∈ Z0 | dimL(mP∞) = t}; recall thatdimL(mP∞) is equal to the number ofl ∈ Φ(a,m). If t > g,then we havemt = t+ g− 1 sincedimL((t+ g− 1)P∞) = tand dimL((t + g − 2)P∞) = t − 1. However, for t ≤ g,we have for examplem6 = 10 < t + g − 1 for Hermitiancurve y4 + y = x5 over F24 . We define thatt-error positionE is generic if det

([

zlj(Pj′ )])

6= 0 for Pj′ ∈ E andlj ∈ Φ(a,mt). If E is generic, we obtain a Grobner basis{

f (i) = zs(i)

−∑

lj∈Φ(a,mt)f(i)lj

zlj}

of I(E) by solving

zl1(P1) · · · zlt(P1)...

...zl1(Pt) · · · zlt(Pt)

f(i)l1...

f(i)lt

=

zs(i)

(P1)...

zs(i)

(Pt)

with s(i) ∈ Φ(a,mt+i+1)\Φ(a,mt+i). Then Lemma 2 isimproved too(f (i)) ≤ t+ g − 1 + a for genericE .

Conversely, if det([

zlj (Pj′ )])

= 0, then the equationfrom the linear dependency givesf ∈ I(E) with deg(f) ∈Φ(a,mt). Thus we see thatE is generic if and only if thedelta set{l ∈ Φ(a) | l ≤ s(l2)} (footprint in [12]) agrees withΦ(a,mt). Namely, our definition of generic is equivalent tothe definition of generic in [23] and that of “independent” in[5].

Proposition 4: Suppose thatE is generic.If f ∈ V (u,mt+o(f)), then we havef ∈ I(E). In particular,V (u,m+ a− 1) = I(E) with m = 2t+ 2g − 1. ✷

Proof. Since{l(s2) − s | l ∈ Φ(a,mt + o(f)), l(s2) ≥ s}agrees withΦ(a,mt) by Lemma 1, it follows from Proposition2. ✷

APPENDIX DPROOF OFTHEOREM 1

Theorem 1 is proved by the following three lemmas.Lemma 3:Suppose thatG(z) ∈ V (u,M − 1), dGk 6= 0,

andt ≤ k with t = deg(G), k ∈ Φ(t2)(a,M), ando(k) = M .Moreover, suppose thatF (z) ∈ V (u,M) and dFs 6= 0 withs = deg(F ). Then, at least one condition ofs1 ≥ k1 − t1 + 1ands2 6= k2 − t2 holds. ✷

Proof. We suppose thats1 ≤ k1 − t1 and s2 = k2 − t2.SinceG ∈ V (u,M − 1) andF ∈ V (u,M), we have

−∑

n∈Φ(a,t)\{t}

Gnun+l−t = Gtul for l ∈ Φ(t2)(a,M − 1), t ≤ l,

−∑

r∈Φ(a,s)\{s}

Frur+l−s = Fsul for l ∈ Φ(s2)(a,M), s ≤ l.

Sincen2+k2− t2 ≤ a−1+s2 andn+k− t ≥ n+s ≥ s forn ∈ Φ(a, t), we haven+k−t ∈ Φ(s2)(a,M) ands ≤ n+k−t

for n ∈ Φ(a, t), and moreover,

−∑

n∈Φ(a,t)\{t}

Gnun+k−t

=∑

n∈Φ(a,t)\{t}

Gn

1

Fs

r∈Φ(a,s)\{s}

Frur+(n+k−t)−s

=1

Fs

r∈Φ(a,s)\{s}

Fr

n∈Φ(a,t)\{t}

Gnun+(r+k−s)−t

= −Gt

Fs

r∈Φ(a,s)\{s}

Frur+k−s,

where the last equality follows fromr+k−s ∈ Φ(t2)(a,M−1)and t ≤ r + k − s for r ∈ Φ(a, s)\{s} sincer2 + k2 − s2 ≤a−1+t2 andr+k−s ≥ r+t ≥ t for r ∈ Φ(a, s), and the lastsum agrees withGtuk sinces2 ≤ k2 = s2 + t2 ≤ s2 + a− 1andk ∈ Φ(s2)(a,M). This contradictsdGk 6= 0. ✷

Lemma 4:We haves(i)N,1 = c(i)N,1 + 1. ✷

Proof.We prove it by induction. The case ofN = 0 followsfrom the initializing. Assumings(i)N,1 = c

(i)N,1 + 1 for all i, we

proves(i)N+1,1 = c(i)N+1,1+1. We may assume that there isl(i) =

l(ı). It follows that s(i)N,1 ≥ l(i)1 − c

(ı)N,1 ⇔ s

(ı)N,1 ≥ l

(ı)1 − c

(i)N,1.

Thus we may assume thats(i)N,1 < l

(i)1 −c

(ı)N,1, s

(ı)N,1 < l

(ı)1 −c

(i)N,1,

and d(i)N 6= 0 without loss of generality. Ifd(ı)N = 0, then

it contradicts Lemma 3 sinceF (i)N ∈ V (u,N − 1), F

(ı)N ∈

V (u,N), s(ı)N,1 ≤ l(i)1 − s

(i)N,1, andı = l

(i)2 − i. Thus, we obtain

d(ı)N 6= 0 ands(i)N+1,1 − c

(i)N+1,1 = s

(ı)N,1 − c

(ı)N,1. ✷

Lemma 5:Let F (z) ∈ V (u,N−1), s ≤ l with s = deg(F )for l ∈ Φ(s2)(a,B), and letG(z) ∈ V (u,M − 1), t ≤ k witht = deg(G) for k ∈ Φ(t2)(a,B). Suppose thatdGk 6= 0,M = o(k) < N = o(l) andk2 − t2 = l2 − s2. Then we have

H(z) := dGkzr−sF − dFlz

r−l+k−tG ∈ V (u,N),

and deg(H) = r, where r := s if dFl = 0, and r :=(max{s1, l1 − k1 + t1}, s2) otherwise. ✷

Proof. Sincer2 = s2 and

o(

zr−sF)

− o(

zr−l+k−tG)

= r1a+ s2b− (r1 − l1 + k1)a− t2b (23)

= o(l)− o(k) > 0,

we obtaindeg(H) = r. Next, sinceF ∈ V (u,N − 1) andG ∈ V (u,M − 1), we have

n∈Φ(a,s)

Fnun+p−s =

{

0 p ∈ Φ(s2)(a,N − 1), s ≤ pdFl p = l,

n∈Φ(a,t)

Gnun+p−t =

{

0 p ∈ Φ(t2)(a,M − 1), t ≤ pdGk p = k.

We may assume thatdFl 6= 0. If p ∈ Φ(s2)(a,N − 1) andr ≤ p, then we havep−l+k ∈ Φ(t2)(a,M−1) andt ≤ p−l+k

Page 15: SUBMITTED TO IEEE TRANSACTINS ON INFORMATION THEORY, … · 2018-05-29 · In the sequel, Sakata et al. [26] and independently Ko¨tter [7] modified and applied Feng–Rao’s method

MATSUI et al.: INVERSE-FREE BERLEKAMP–MASSEY–SAKATA ALGORITHM AND SMALL DECODERS FOR ALGEBRAIC-GEOMETRIC CODES 15

from l − k + t ≤ r, and moreover,∑

n∈Φ(a,r)

Hnun+p−r

= dGk

n∈Φ(a,s)

Fnun+(r−s)+p−r − dFl

n∈Φ(a,t)

Gnun+(r−l+k−t)+p−r

= dGk

n∈Φ(a,s)

Fnun+p−s − dFl

n∈Φ(a,t)

Gnun+(p−l+k)−t

=

{

0 p ∈ Φ(s2)(a,N − 1), r ≤ pdGk · dFl − dFl · dGk = 0 p = l.

Proof of Theorem 1.If d(i)N 6= 0 and G

(ı)N = 0, then

s(i)N+1,1 := l

(i)1 + 1 andF (i)

N+1 := xl(i)1 +1F

(i)N . Thusd(i)N+1 = 0

and deg(F(i)N+1) = s

(i)N+1 hold. Supposing thatG(ı)

N 6= 0, let

M < N be satisfyingG(ı)N :=

(

d(j)M

)−1

F(j)M , o(k(j)) = M ,

and ı = k(j)2 − j, then we havec(ı)N = k(j) − s

(j)M . Thus the

theorem except for (13) and (14) follows from Lemma 5. Weprove (14) by induction. The case ofN = 0 in (14) holds bythe definition. Supposing that the equality is true fors

(i)N,1, we

prove it fors(i)N+1,1. Let ς(i)N,1 be the minimum ofζ(i)N,1 in (14).

If (P), then s(i)N,1 = ς

(i)N,1 ≤ ς

(i)N+1,1 ≤ s

(i)N+1,1 = s

(i)N,1, thus

ς(i)N+1,1 = s

(i)N+1,1 holds. If d(i)N 6= 0 and s

(i)N > l(i) − c

(ı)N ,

then we haved(ı)N 6= 0 as in the proof of Lemma 4 andς(i)N+1,1 ≤ s

(i)N+1,1 = l

(i)1 −s

(ı)N,1+1, which is actually the equa-

tion ς(i)N+1,1 = s

(i)N+1,1 by Lemma 3 forF (ı)

N ∈ V (u,N − 1)

and F ∈ V (u,N) satisfyingdeg(F ) = (ς(i)N+1,1, i). Finally,

as for (13), if we supposes(i)N,1 < s(j)N,1 with i < j, then we

haveyj−iF(i)N ∈ V (u,N − 1) anddeg(yj−iF

(i)N ) = (s

(i)N,1, j),

which contradict the minimality ofs(j)N,1. ✷

Thus we have proved the theorem for an algorithm that isnot a parallel version, i.e., the algorithm with direct calculationof d

(i)N by (5) without v(i)N and w

(i)N . To prove our parallel

inverse-free BMS algorithm described in Section III, we haveto show further thatd(i)N is obtained by the coefficient ofv(i)N ;we omit this procedure and refer to similar cases [14][16] ofordinary parallel BMS algorithm.

REFERENCES

[1] E. R. Berlekamp,Algebraic coding theory,McGraw-Hill, New York,1968.

[2] D. Cox, J. Little, D. O’Shea,Ideals, varieties, and algorithms,UTMSpringer–Verlag, 1992.

[3] G.-L. Feng, T. R. N. Rao, “Decoding algebraic-geometriccodes up to thedesigned minimum distance,”IEEE Trans. Inf. Theory,vol.39, pp. 37–45,Jan. 1993.

[4] V. Guruswami, M. Sudan, “Improved decoding of Reed–Solomon andalgebraic-geometric codes,”IEEE Trans. Inf. Theory,vol.45, no.6,pp.1757–1767, Sep. 1999.

[5] H. E. Jensen, R. R. Nielsen, T. Høholdt, “Performance analysis ofa decoding algorithm for algebraic-geometry codes,”IEEE Trans. Inf.Theory,vol.45, no.5, pp.1712–1717, July 1999.

[6] J. Justesen, K. J. Larsen, H. E. Jensen, A. Havemose, T. Høholdt,“Construction and decoding of a class of algebraic geometrycodes,”IEEETrans. Inf. Theory,vol.35, no.4, pp.811–821, July 1989.

[7] R. Kotter, “A fast parallel implementation of a Berlekamp–Masseyalgorithm for algebraic-geometric codes,”IEEE Trans. Inf. Theory,vol.44,no.4, pp.1353–1368, July 1998.

[8] R. Koetter, A. Vardy, “Algebraic soft-decision decoding of Reed–Solomoncodes,”IEEE Trans. Inf. Theory,vol.49, no.11, pp.2809–2825, Nov. 2003.

[9] K. Lee, M. E. O’Sullivan, “An interpolation algorithm using Grobnerbases for soft-decision decoding of Reed–Solomon codes,”Proc. IEEEInt. Symp. Information Theory,Seattle, July 2006.

[10] K. Lee, M. E. O’Sullivan, “Sudan’s list decoding of Reed–Solomoncodes from a Grobner basis perspective,” arXiv:math.AC/0601022.

[11] J. L. Massey, “Shift-register synthesis and BCH decoding,” IEEE Trans.Inf. Theory,vol.IT-15, pp.122–127, Jan. 1969.

[12] H. Matsui, S. Mita, “Footprint of polynomial ideal and its applicationto decoder for algebraic-geometric codes,”Proc. Int. Symp. InformationTheory and Its Applications (ISITA),pp.1473–1478, Parma, Italy, Oct.2004.

[13] H. Matsui, E. Yamamoto, S. Mita, “Reduction of decoder for codes onalgebraic curves as an application of footprint,” (in Japanese)Proc. 27thSymp. Information Theory and Its Applications (SITA),pp.471–474, Dec.2004.

[14] H. Matsui, S. Sakata, M. Kurihara, “Fast parallel decoding on systolicarray architecture for codes on a class of algebraic curves,” RIMSKokyuroku (Lecture note at Research Institute for Mathematical Sciencesin Kyoto University),vol.1420Cpp.193–205, April 2005.

[15] H. Matsui, S. Mita, “On small-scale decoders for codes on Cba curves,”

Proc. Hawaii, IEICE and SITA Joint Conference on Information Theory,IT2005-16, pp.91–95, May 2005.

[16] H. Matsui, S. Sakata, M. Kurihara, S. Mita, “Systolic array architectureimplementing Berlekamp–Massey–Sakata algorithm for decoding codeson a class of algebraic curves,”IEEE Trans. Inf. Theory,vol.51, no.11,pp.3856–3871, Nov. 2005.

[17] H. Matsui, “On the smallest-scale decoder for codes on algebraiccurves,”Proc. 28th Symp. Information Theory and Its Applications (SITA),pp.547–550, Nov. 2005.

[18] H. Matsui, S. Mita, “Inverse-free implementation ofBerlekamp–Massey–Sakata algorithm for decoding codes on algebraiccurves,”Proc. IEEE Int. Symp. Information Theory,pp.2250–2254, Seat-tle, July 2006.

[19] H. Matsui, S. Mita, “Efficient encoding via Grobner bases and discreteFourier transforms for several kinds of algebraic codes,” Submitted in2007 IEEE Int. Symp. Information Theory,arXiv:cs.IT/0703104.

[20] R. Matsumoto, “TheCba curve—A generalization of the Weierstrass

form to arbitrary plane curves,” in his website.[21] S. Miura, “Algebraic geometric codes on certain plane curves,”

(Japanese)Trans. IEICE,J75–A, no.11, pp.1735–1745, Nov. 1992.[22] Y. Numakami, M. Fujisawa, S. Sakata, “A fast interpolation algorithm

for list decoding of Reed–Solomon codes,” (Japanese)Trans. IEICE,vol.J83–A, no.11, pp.1309–1317, Nov. 2000.

[23] M. E. O’Sullivan, “Decoding Hermitian codes beyond(dmin − 1)/2,”Proc. IEEE International Symposium on Information Theory,p.384, Ulm,Germany, June 29–July 4, 1997. See also “Decoding of Hermitian codes:Beyond the minimum distance bound,” in his website.

[24] M. E. O’Sullivan, “On Koetter’s algorithm and the computation of errorvalues,”Designs, Codes and Cryptography,vol.31, pp.169–188, 2004.

[25] S. Sakata, “Finding a minimal set of linear recurring relations capableof generating a given finite two dimensional array,”Journal of SymbolicComputation,no.5, pp.321–337, Nov. 1988.

[26] S. Sakata, H. E. Jensen, T. Høholdt, “Generalized Berlekamp–Masseydecoding of algebraic geometric code up to half the Feng–Raobound,”IEEE Trans. Inf. Theory,vol.41, no.6, Part I, pp.1762–1768, Nov. 1995.

[27] S. Sakata, M. Kurihara, “A systolic array architecturefor fast decodingof one-point AG codes and scheduling of parallel processingon it,” Proc.AAECC–13 (Eds., M. Fossorier, H. Imai, S. Lin, A. Poli), Lecture Notesin Computer Science,vol.1719, pp.302–313, Springer Verlag, 1999.

[28] S. Sakata, “Applications of the BMS algorithm to decoding of algebraiccodes,” preprint for Workshop on Grobner bases in Cryptography, CodingTheory and Algebraic Combinatorics, Linz, April 30–May 5, 2006.

[29] M. Sudan, “Decoding of Reed–Solomon codes beyond the error-correction bound,”Journal of Complexity,vol.13, no.1, pp.180–193, 1997.

[30] Y. Sugiyama, M. Kasahara, S. Hirasawa, T. Namekawa, “A methodfor solving key equation for decoding Goppa codes,”Information andControl, vol.27, pp.87–99, 1975.