Tehnical Report CS0535 - 1989 - CS Technion

Report 2 Downloads 41 Views
TECHNION - Israel Institute of Technology

Technion - Computer Science Department - Tehnical Report CS0535 - 1989

Computer Science Dept.

APPLICATION OF CIRCULANT "MATRICES. TO THE CONSTRUCTION AND DECODING OF LINEAR'CODES by.

R.t

Technion - Computer Science Department - Tehnical Report CS0535 - 1989

, which are zeros of both d(x) and l1'(x). Clearly,

.

P'1(0) +Pl(Y) S k

(8)

+ Pl(O,v) .

Let c = [u u A]. Ifed 7! o*a = v,we have Pl (0, 0* a) S de~ ( [x'+t+m '(£li(x) -li(x

»] mod (xl -

I)} ~ k - 1 - s ,

which, together with (8) yields (9)

On the other hand, if ell = 0* a7! 0, 0 must'have zeros in the t positions occupied in a by the CJ)i and, consequently, Pl(O) + Pl(u*a) = 2pl(0) S 2 de~ { (xm'd(x) mod (xl -I)} S 2(k - 1- t) . By (6),(9) and (10) it follows that d ~ min{s+l,2t+2}.

(10)

0

By Theorem 1, we can ob~ F -transform codes with high lower bounds on their minimum distance by assigning values of F to the cyclotomic cosets modulo k so that the runs of e and non-e values will be as large as possible with the appropriate ratio of 2: 1 between s and t, as reflected in (7). Theorem 1 resembles

th~

well-known BCH bound. As a matter of fact, the decoding pro-

cedure for F -transfonn codes up to the designed distance, given by the right-hand side of (7), is as easy as that for BCH codes. Assume sis even, so that the designed distance is at least 2't + I, where 't ~ min {s /2, t }. We now show how to correct 't err~. Suppose a cOdeword c = [u u A] is transmitted and the word

Y=c + e =[u + el u A + eo] = [YI Yo] is received, with,the error word e having weight S,'t. Since eo - (0* a) contains s consecutive zeros, we may regard eo - uA as a codeword of a BCH code of length k and designed distance

s +1. Applying the standard BCH decoding technique to ey I - Yo yields the vector e ~ Eel -

eo

of wei.ght S s /2 [4, Ch. 9]. Denote by 8(v) the support of a vector v and by w(v) ~ Ie(v) I its Hamming weight. Define Y

~ 8(e) and Z ~ 8(el) --c: Y = 8(eo) - Y. That is, Z is the set of

7

Technion - Computer Science Department - Tehnical Report CS0535 - 1989

coordinates in which the nonzero entries of eel and eo are identical. We have,

IYI +21ZI

~w(e)~t~t.

Having found e, we know the set Y and the vector ED - (0* a), by which we obtain t consecutive values of 0 and, hence,. of e1' Therefore, we may apply this infonnalion and the BCH decoding algorithm to Y1 to correct I Y I erasures and 1Z I ~ ~(t - IY I> errors [4, §9 .~], thus retrieving e1 and, subsequently, u. Example 1. 'IJte following is an example of an F -~p.sfonn code over GF (2) with

s =21112+1_2 and t

=21112_1.

Let k

=211 -

I, h even, resultin~ in a [2 11 +1-2,211 -1] double-

circulant code C. For ~ integer;, 0 ~; ~ 21i -2, denote by i =

[i1l-1 ;11-2 ••• ; ~

the base-2

representation of ; . Let 0; be the cycJQta.U.c coset modulq 211 - 1 containing ; '. Then 0; contains all integers j such that j is. a cycl,c shift of i. Let s = 21112+1 _ 2 and assign dj = 1 for all j

E

0;, 1 ~;

~ s . Here,

w(j)

~

h /2 and so the largest index j max for w~ich dj

IIID

= 1 is given .by

jmax: = [ 1 1 ... 1 0 0 .. , 0], +- 1112 ~

Le., j max = 211

-

+- 1112 ~

21112• Hence, we may set dl = 0 for all 211

-

21112 + 1 ~ j ~ 211

-

2 and for j = O.

Thus we have t ,~21112 - I, which implies

Example 2. We show now how a ~ode of Example 1 can be extended into a [211 +1, 211 , 21112+1] code. Consider the affine space t

C' = {[u u A + 1]

IU E

F" } ,

where A corresponds to the F -transfomp 'code C of Example 1 and 1 is the all-one k-vector. •J.t2.

Note that 1· T = [100 ... 0] and, the~fore, the Fourier transform of v = uA and v +.1 are identical except for-the first entry ·\1'0' By arguments similar to those in Example I, we conclude that the weight of each word in C' is lower-bounded by 21112+1 - 2. Sfuce do = 0, a has even weight and, so, the [211 +1, 211 ] bordered double-circulant code, generat~ by

Technion - Computer Science Department - Tehnical Report CS0535 - 1989

8

G

=[

I

1 0] A

l'

,.

must have even minimum distance ~ 21112+1 - 1, Le., d- ~ 21112+1• For instance, h

=2

yields a [6,3,3] double-cirCulant code with a

=[0 1 1]

and the

corresponding bordered double-eirculant c~ is tl}e [8,4,4] self-dual.extended Hamming code. For

h

=4

we

obtain

a

[32,16,8]

bordered

double-circulant

code

with

a = [0 00 00 1 0 1 00 1 1 0 1 1]. Remark 1. The bound d'~ 2"{2+1 applies ~lso to the [211 +1, 2"] binary Reed-Muller code RM(.!!.,h+l) of order.!!. [2, §15.3J, although the two code families are not equivalent; the 2 .2 weights of the codewords in RM( ~,h+l) are multiples.of 4 [12, p. 447], whereas the [32,16,8] bordered F -transform code of Example 2 contains codewords of weights 10, 14, 18 and 22. However, there exists a close relationship, between, (bordered) F -transform codes and ReedMuller codes. As a special case of Example 1, we can assign dj = 1 for all j 'where 1 S; w(j) S; h/2, and dj = 0 otherwise. In this manner we can use

~

majority-logic decoder of the

punctured Reed-Muller code RM( ~ l,h)* [12, p. 377] as the fIrst decoding step, and then fill erasure-anti-error decoder of RM( ~ ,h)l (enhanced by a parity bit corresponding to do = 0) as the ~ond decoding step. Remark 2. The bound 2"k+l- 1 is attainable also for general q and even h with k = q" - 1. For odd h, nne can readily verify the bound d ~ q ~(h+l) - 0 (q).

We turn now to the more general case where' js not necessarily in F Ic • Theorem 2. Let C be a [2k, k] double-circlflant code over F

=Of ~q). (k,q) = 1, with a

being the Fourier transfo'!tl of the defining polynomial of C . Let s be the longest cyclic run of

.

any eleTn!!nt £

~

F in 11. Then the mi!.'imum distance d of C satisfies d

~

s

+ 1.

Proof. Consider the vector t

=eli .... (u* a), correspOnding to some input vector U E pl.

Technion - Computer Science Department - Tehnical Report CS0535 - 1989

-th entry in y, 0 Sm S t-l, 0 Sj S r-1. Given that

't

S ; errors have

occurred at'locations {<mi ,it> }1:1' A(x) is defined by 't..

A(x) = ~AiX' i=O

't.

't

.

= 1+.~AiX' = Il(l-xoam,~lI)o i=1

(11)

i=1

Recall that a is an element of order n. ~ =et is an element of order r, and

a=a!'

with

(b,t) = 1. Regarding the coefficients of A(x) ~as an r-vector A over F (with r-'t-l trailing

zeros), we denote by Ao its r-dimensional inverse Fourier transform, i.e.,

Following IS], we transfonn the Berlekamp-Massey decoding algorithm using an r-dimensional ~~

14 transform into the time domain, resulting in the procedure ELP given in Figure 2. In this pro-

Technion - Computer Science Department - Tehnical Report CS0535 - 1989

cedure we make use of an auxiliary r -vectqr b, which is the inverse Fourier transform of the polynomial !J (x), denoting the error IQCa~or polynomial prior to the last update of the recursion length L [13]. It is easy to ~ thatAoJ = 0 if and only if the j -th entty in 1.0' 0 S j S r -I, is erroneous. The"se coordinates correspond to. the check symbols' of the received word (m = 0). In order to obtain_the other error locations, we find the n -dirpensional inverse Fourier transform of A (now

procedure ELP (s) output: Ao; begin ~,

{Ao obtained is up to a multiplying scalar r

}

b f- 1 {all-one vector}; L f-·O ;

for N f- 0 to r-l do begin { main loop}

if /1 ~ 0 and 2L S N then begin L f-N + l.-L ;

V o f- [1 /1-1]; VI f- [-/1 0] end else begin V~ f- [1 0] ; VI f- [..../1 1]

end;

for j f- 0 to r-1 do begin { error evaluator polynomial will be inserted here} [~J ~j] f- ~JVo+bj~-jVl end

end { main loop} end Figure 2: PI:ocedure ELP .

Technion - Computer Science Department - Tehnical Report CS0535 - 1989

app~il¥(J:with n-r

zero coordinates) by internolation; we use Ao to find the values of A(x) at

,points K, = o-m J}-j. Pefine

Am .}.:::lA(5-m~-i.). O~l~r-l, O~m ~t-l r '!hen-;up, to a permutation 7t