11.07.2015 Views

Abstract Algebra Theory and Applications - Computer Science ...

Abstract Algebra Theory and Applications - Computer Science ...

Abstract Algebra Theory and Applications - Computer Science ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

20.2 POLYNOMIAL CODES 353f(x) = a 0 + a 1 x + a 2 x 2 by 1 + x 3 . We are defining a map φ : Z 3 2 → Z6 2by φ : f(x) ↦→ g(x)f(x). It is easy to check that this map is a grouphomomorphism. In fact, if we regard Z n 2 as a vector space over Z 2, φ is alinear transformation of vector spaces (see Exercise 13, Chapter 18). Letus compute the kernel of φ. Observe that φ(a 0 , a 1 , a 2 ) = (000000) exactlywhen0 + 0x + 0x 2 + 0x 3 + 0x 4 + 0x 5 = (1 + x 3 )(a 0 + a 1 x + a 2 x 2 )= a 0 + a 1 x + a 2 x 2 + a 0 x 3 + a 1 x 4 + a 2 x 5 .Since the polynomials over a field form an integral domain, a 0 + a 1 x + a 2 x 2must be the zero polynomial. Therefore, ker φ = {(000)} <strong>and</strong> φ is one-to-one.To calculate a generator matrix for C, we merely need to examine theway the polynomials 1, x, <strong>and</strong> x 2 are encoded:(1 + x 3 ) · 1 = 1 + x 3(1 + x 3 )x = x + x 4(1 + x 3 )x 3 = x 2 + x 5 .We obtain the code corresponding to the generator matrix G 1 in Example 4.The parity-check matrix for this code is⎛1 0 0 1 0⎞0H = ⎝ 0 1 0 0 1 0 ⎠ .0 0 1 0 0 1Since the smallest weight of any nonzero codeword is 2, this code has theability to detect all single errors.Rings of polynomials have a great deal of structure; therefore, our immediategoal is to establish a link between polynomial codes <strong>and</strong> ring theory.Recall that x n − 1 = (x − 1)(x n−1 + · · · + x + 1). The factor ringR n = Z 2 [x]/〈x n − 1〉can be considered to be the ring of polynomials of the formf(t) = a 0 + a 1 t + · · · + a n−1 t n−1that satisfy the condition t n = 1. It is an easy exercise to show that Z n 2 <strong>and</strong>R n are isomorphic as vector spaces. We will often identify elements in Z n 2with elements in Z[x]/〈x n − 1〉. In this manner we can interpret a linearcode as a subset of Z[x]/〈x n − 1〉.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!