15 Cyclic codes Flashcards
Def cyclic code
A code C ⊆ Fⁿ is cyclic if it is linear and any cyclic shift of a codeword is also a codeword,
LINEAR (0) +INVARIANT UNDER SHIFT MAP
Sh : (a₀, . . . , aₙ₋₁,) → (aₙ₋₁, a₀, . . . , aₙ ₋₂) : Fⁿ → Fⁿ
is 2-ary code C = {000, 101, 011, 110} cyclic
YES
POLYNOMIALS IN A FIELD F
F[X]
MONIC POLYNOMIALS
set of all polynomials
a(x) = a_0 + a_1x+a_2x_2 +…..
A MONIC polynomial has degree m with a_m=1
biggest degree has coeff 1
F[x] is a ring, but not a field.
the evaluation function for polynomials
Associated to anypolynomial a(x) ∈ F[x] there is a function:
α → a(α) : F → F (the evaluation function).
the evaluation function for finite fields
There are 4 distinct functions from Z₂ → Z₂.
But there are infinitely many different polynomials in Z₂[x]. E.g.
a(x) = x5 + x2 + x + 1,
b(x) = x^17 + 1, both have the same
function associated to them :
they produce same outputs as powers of x can be reduced mod 2
x^17=x mod 2
b(x)=x+1 and is the same
The remainder thm
For every pair a(x), b(x) ∈ F[x] with b(x) ̸= 0, there exists a unique pair q(x) (the quotient) and r(x) (the remainder) in F[x]
such that deg(r(x)) < deg(b(x)) and
a(x) = q(x)b(x) + r(x).
Proof: We can compute q(x), r(x) by the usual long-division
algorithm.
15.6. Exercise. Divide
a(x) = x³ + 3x² + 4
by
b(x) = 2x² + 3 in Z₅[x].
x³ + 3x² + 4
= (3x + 4)(2x² + 3) + (x + 2)
using the remainder thm to rewrite polynomials
equivalence relation
a(x) ≡ b(x) mod f (x)) when
For a fixed poly f(x) in F[x]
polynomials a(x), b(x) ∈ F[x]
a(x) ≡ b(x) mod f (x))
if a(x) − b(x) is divisible by f (x)
(meaning a(x) − b(x) = q(x)f (x) for some q(x) ∈ F[x], with no remainder)
denote equivalence (congruence) class of a(x) by
[a(x)] = {b(x) ∈ F[x] | b(x) ≡ a(x) mod.f (x)}
Let F[x]/f (x) denote the set of such classes.
ADDITION AND MULTIPLICATION ON F[x]/f (x)
[a(x)] + [b(x)] = [a(x) + b(x)]
[a(x)][b(x)] = [a(x)b(x)]
By these operations F[x]/f (x) is a ring.
15.8. Lemma.
[a(x)] = [a′(x)] IFF
[a(x)] = [a′(x)]
**iff a(x) ≡ a′(x) mod f (x) **
iff the remainders r(x),r′(x) of a(x) and a′(x) under division by f (x) are
equal
ie we can identify [a(x)] by looking at remainders r(x)
15.9. Example.
R = Z₂[x]/(x² + x + 1)
(f (x) degree 2),
R ≡
gives R ≡ {0, 1, x, 1 + x}
= polynomials of degree < 2.
*working with polynomials in x over Z₂ , and you’re identifying any two polynomials that have the same remainder when divided by (x² + x + 1)
- we can express them as polynomials of degree less than f(x)’s that have a different remainder to each other
15.9. Example.
R = Z₂[x]/(x² + x + 1)
(f (x) degree 2),
gives R ≡ {0, 1, x, 1 + x}
= polynomials of degree < 2.
Compute the addition and multiplication tables. Can you compute inverses too?
R is a field in this case: every non-zero element has an inverse
+ | 0 1 x 1 + x
————————-
0 | 0 1 x 1 + x
1 | 1 0 1 + x x
x | x 1 + x 0 1
1 + x | 1 + x x 1 0
- ## | 0 1 x 1 + x0 | 0 0 0 0
1 | 0 1 x 1 + x
x | 0 x 1 + x 1
1 + x | 0 1 + x 1 x
Inverse of 0 is itself (0 * 0 ≡ 0)
Inverse of 1 is itself (1 * 1 ≡ 1)
Inverse of x is 1 + x (x * (1 + x) ≡ 1)
Inverse of 1 + x is x ((1 + x) * x ≡ 1)
f (x) ∈ F[x] is reducible if
there exist
a(x), b(x) ∈ F[x]
with degrees less than f (x), such that
f (x) = a(x)b(x).
FACT: F[x]/f (x) is a field iff f (x) is not reducible (irreducible).
15.11. Lemma.
for degrees and factors of f(x) polynomials
(i) f (x) ∈ F[x] has a degree 1 factor (x − a) iff
f (a) = 0.
(ii) If degree f (x) =2 or 3 then f (x) is irreducible iff for all a ∈ F, f (a) ̸= 0.
** (iii) Over any field F,
xⁿ− 1 = (x − 1)(xⁿ⁻¹ + xⁿ⁻² + … + x + 1)**
Proof: (i) Use Theorem 15.5. (iii) by induction on n.
Completely factorise
x⁴ − 1 ∈ Z₅[x].
(x-1)(x^3+x^2+x+1)
(x − 1)(x+1)(x^2+1)
=(x-1)(x+1)(x-2)(x-3)
found by trying all 0,1,2,3,4 in to see x^2+1≡ 0
= (x + 4)(x + 3)(x + 2)(x + 1)
for cyclic codes we use the ring R_n
R_n =
F[x]/(xⁿ − 1)
For given finite field F
facts about R_n
(xⁿ − 1) ALWAYS IRREDUCIBLE R_n never a field
xⁿ ≡ 1 mod (xⁿ − 1)
so
xᵐ⁺ⁿ =xᵐ for any m
.No need to use
remainder theorem to compute products
E.g. in R_5 = Z_3[x]/(x^5 − 1)
(x^2 +x)(x^4 + 2) =
= x^6 + 2x^2 +x^5 + 2x
≡ x + 2x^2 + 1 + 2x (since x^5=1 sub)
= 2x^2 + 1 (3x =0 in Z_3)