0% found this document useful (0 votes)
80 views26 pages

Quasi-Cyclic Codes Overview

This document discusses quasi-cyclic (QC) codes. QC codes are a generalization of cyclic codes that have desirable algebraic properties. The document covers the algebraic structure of QC codes, including that they can be viewed as modules over a quotient ring. It also discusses decompositions of QC codes using the Chinese Remainder Theorem and concatenation. This allows QC codes to be represented by traces and characterizes properties like self-duality. The document presents several bounds on the minimum distance of QC codes and discusses their asymptotic properties and connection to convolutional codes.

Uploaded by

Ajay Rodge
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
80 views26 pages

Quasi-Cyclic Codes Overview

This document discusses quasi-cyclic (QC) codes. QC codes are a generalization of cyclic codes that have desirable algebraic properties. The document covers the algebraic structure of QC codes, including that they can be viewed as modules over a quotient ring. It also discusses decompositions of QC codes using the Chinese Remainder Theorem and concatenation. This allows QC codes to be represented by traces and characterizes properties like self-duality. The document presents several bounds on the minimum distance of QC codes and discusses their asymptotic properties and connection to convolutional codes.

Uploaded by

Ajay Rodge
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Cem Güneri, San Ling and Buket Özkaya

Quasi-Cyclic Codes
arXiv:2007.16029v2 [[Link]] 9 Dec 2020
Chapter 1
Quasi-Cyclic Codes

1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Algebraic Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Decomposition of Quasi-Cyclic Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.1 The Chinese Remainder Theorem and Concatenated
Decompositions of QC Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.2 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
[Link] Trace Representation . . . . . . . . . . . . . . . . . . . . . . 8
[Link] Self-Dual and Complementary-Dual QC
Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4 Minimum Distance Bounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.1 The Jensen Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.2 The Lally Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.3 Spectral Bounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
[Link] Cyclic Codes and Distance Bounds From
Their Zeros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
[Link] Spectral Theory of QC Codes . . . . . . . . . . . . . 14
[Link] Spectral Bounds for QC Codes . . . . . . . . . . . . 15
1.5 Asymptotics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.5.1 Good Self-Dual QC Codes Exist . . . . . . . . . . . . . . . . . . . . . . . . 18
1.5.2 Complementary-Dual QC Codes Are Good . . . . . . . . . . . . . 21
1.6 Connection to Convolutional Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

“nobreak

1.1 Introduction
Cyclic codes are among the most useful and well-studied code families for various reasons,
such as effective encoding and decoding. These desirable properties are due to the algebraic
structure of cyclic codes, which is rather simple. Namely, a cyclic code can be viewed as
an ideal in a certain quotient ring obtained from a polynomial ring with coefficients from a
finite field.
It is then natural for coding theorists to search for generalizations of cyclic codes, which
also have nice properties. This chapter is devoted to one of the first such generalizations,
namely the family of quasi-cyclic (QC) codes. Algebraically, QC codes are modules rather
than ideals. As desired, QC codes turned out to be a very useful generalization and their
investigation continues intensively today.
There is a vast literature on QC codes and it is impossible to touch upon all aspects in

3
4 Quasi-Cyclic Codes

a chapter. This chapter is constrained to some of the most fundamental aspects to which
the authors also made contributions over the years. We start with the algebraic structure
of QC codes, present how the vectorial and algebraic descriptions are related to each other,
and also discuss the code generators. Then we focus on the decomposition of QC codes, via
the Chinese Remainder Theorem (CRT decomposition) and concatenation. In fact, these
decompositions turn out to be equivalent in some sense, which is also mentioned in the
chapter. Decomposition of a QC code yields a trace representation. Moreover, the dual QC
code can be described in the decomposed form, which has important consequences of its
own. For instance, self-dual and linear complementary dual QC codes can be characterized
in terms of their CRT decompositions. Moreover, the asymptotic results presented in the
chapter heavily rely on the decomposed structure of QC codes. Three different general
minimum distance bounds on QC codes are presented here, with fairly complete proofs or
detailed elaborations. A relation between QC codes and convolutional codes is also shown
in the end.

1.2 Algebraic Structure


Let Fq denote the finite field with q elements, where q is a prime power, and let m and
ℓ be two positive integers. A linear code C of length mℓ over Fq is called a quasi-cyclic
(QC) code of index ℓ if it is invariant under shift of codewords by ℓ positions and ℓ is the
minimal number with this property. Note that, if ℓ = 1, then C is a cyclic code. If we view
codewords of C as m × ℓ arrays as follows
 
c00 ... c0,ℓ−1
 .. .. 
c= . . , (1.1)
cm−1,0 . . . cm−1,ℓ−1
then being invariant under shift by ℓ units amounts to being closed under the row shift
where each row is moved downward one row and the bottom row moved to the top.
Consider the principal ideal I = hxm − 1i of Fq [x] and define the quotient ring R :=
Fq [x]/I. If T represents the shift-by-1 operator on Fmℓ mℓ
q , then its action on v ∈ Fq will be
denoted by T · v. Hence, Fmℓq has an F q [x]-module structure given by the multiplication

Fq [x] × Fmℓ
q −→ Fmℓ
q

(a(x), v) 7→ a(T ℓ ) · v.

Note that, for a(x) = xm − 1, we have a(T ℓ ) · v = (T mℓ ) · v − v = 0. Hence, the ideal I fixes
Fmℓ
q and we can view Fmℓq as an R-module. Therefore, a QC code C ⊆ Fmℓ q of index ℓ is an
mℓ
R-submodule of Fq .
To an element c ∈ Fm×ℓ
q ≃ Fmℓ
q as in (1.1), we associate an element of Rℓ as

c(x) := (c0 (x), c1 (x), . . . , cℓ−1 (x)) ∈ Rℓ ,

where, for each 0 ≤ j ≤ ℓ − 1,

cj (x) := c0,j + c1,j x + c2,j x2 + · · · + cm−1,j xm−1 ∈ R.


Quasi-Cyclic Codes 5

Thus, the following map is an R-module isomorphism:

φ:  Fmℓ
q  −→ Rℓ
c00 ... c0,ℓ−1
 .. ..  (1.2)
c= . .  7−→ c(x).
cm−1,0 . . . cm−1,ℓ−1

Note that, for ℓ = 1, this amounts to the classical polynomial representation of cyclic codes.
Observe that the T ℓ -shift on Fmℓ
q corresponds to the componentwise multiplication by x

in R . Therefore, a q-ary QC code C of length mℓ and index ℓ can be considered as an
R-submodule in Rℓ .
Lally and Fitzpatrick proved in [16] that every quasi-cyclic code, viewed as an R-
submodule in Rℓ , has a generating set in the form of a reduced Gröbner basis. In order
to explain their findings, we need to fix some further notation first.
Consider the following ring homomorphism:

Ψ : Fq [x]ℓ −→ Rℓ
(f0 (x), f1 (x), . . . , fℓ−1 (x)) 7−→ (f0 (x) + I, f1 (x) + I, . . . , fℓ−1 (x) + I).

Given a QC code C ⊆ Rℓ , it follows that the preimage Ψ−1 (C) = C e of C in Fq [x]ℓ is


e m
an Fq [x]-submodule containing K = {(x − 1)ej : 0 ≤ j ≤ ℓ − 1}, where ej denotes the
standard basis vector of length ℓ with 1 at the coordinate j and 0 elsewhere. Throughout,
the tilde e represents structures over Fq [x].
Since C e is a submodule of the finitely generated free module Fq [x]ℓ over the principal
e it has a generating set of the form
ideal domain Fq [x] and it contains K,

{u1 , . . . , up , (xm − 1)e0 , . . . , (xm − 1)eℓ−1 },

where p is a nonnegative integer and ub = (ub,0 (x), . . . , ub,ℓ−1 (x)) ∈ Fq [x]ℓ for each b ∈
{1, . . . , p}. Hence, the rows of the matrix
 
u1,0 (x) ... u1,ℓ−1 (x)
 .. .. 
 . . 
 
 up,0 (x) . . . up,ℓ−1 (x) 
M = m 

 x −1 ... 0 
 .. .. .. 
 . . . 
0 . . . xm − 1

generate C.e By using elementary row operations, we may triangularize M so that another
generating set can be obtained from the rows of an upper-triangular ℓ×ℓ matrix with entries
in Fq [x] as follows:
 
g00 (x) g01 (x) . . . g0,ℓ−1 (x)
 0 g11 (x) . . . g1,ℓ−1 (x) 
e  
G(x) = .. .. .. .. , (1.3)
 . . . . 
0 0 . . . gℓ−1,ℓ−1 (x)

e
where G(x) satisfies the following conditions (see [16, Theorem 2.1]):
1. gi,j (x) = 0, for all 0 ≤ j < i ≤ ℓ − 1.
6 Quasi-Cyclic Codes

2. deg(gi,j (x)) < deg(gj,j (x)), for all i < j.


3. gj,j (x) | (xm − 1), for all 0 ≤ j ≤ ℓ − 1.
4. If gj,j (x) = xm − 1, then gi,j (x) = 0, for all i 6= j.

Note that the rows of G(x) e are nonzero and each nonzero codeword of C e can be expressed
in the form (0, . . . , 0, cj (x), . . . , cℓ−1 (x)), where j ≥ 0, cj (x) 6= 0 and gj,j (x) | cj (x). This
implies that the rows of G(x) e form a Gröbner basis of C e with respect to the position-
over-term (POT) order in Fq [x], where the standard basis vectors {e0 , . . . , eℓ−1 } and the
monomials xi are ordered naturally in each component. Moreover, the second condition
above implies that the rows of G(x) e e which is uniquely
form a reduced Gröbner basis of C,
defined up to multiplication by constants with monic diagonal elements.
Let G(x) now be the matrix with the rows of G(x) e under the image of the homomorphism
e
Ψ. Clearly, the rows of G(x) := G(x) mod I form an R-generating set for C. When C is
the zero code of length mℓ, we have p = 0 which implies G(x) = 0ℓ×ℓ . Otherwise we say
that C is an r-generator QC code (generated as an R-submodule) if G(x) has r (nonzero)
rows. The Fq -dimension of C is given by (see [16, Corollary 2.4] for the proof)
ℓ−1
X ℓ−1
X
mℓ − deg(gj,j (x)) = [m − deg(gj,j (x))] .
j=0 j=0

1.3 Decomposition of Quasi-Cyclic Codes


From this section on, we assume that gcd(m, q) = 1.

1.3.1 The Chinese Remainder Theorem and Concatenated Decompo-


sitions of QC Codes
We now describe the decomposition of a QC code over Fq into shorter codes over ex-
tension fields of Fq . We follow the brief presentation in [8] and refer the reader to [17] for
details. Let the polynomial xm − 1 factor into irreducible polynomials in Fq [x] as

xm − 1 = f1 (x)f2 (x) . . . fs (x). (1.4)

Since m is relatively prime to q, there are no repeating factors in (1.4). By the Chinese
Remainder Theorem (CRT), we have the following ring isomorphism:
s
M
R∼
= Fq [x]/hfi (x)i. (1.5)
i=1

Since each fi (x) divides xm − 1, its roots are powers of some fixed primitive mth root of
unity ξ in an extension field of Fq . For each i = 1, 2, . . . , s, let ui be the smallest nonnegative
integer such that fi (ξ ui ) = 0. Since the fi (x)’s are irreducible, the direct summands in (1.5)
are field extensions of Fq . If Ei := Fq [x]/hfi (x)i for 1 ≤ i ≤ s, then we have

R ∼
= E1 ⊕ · · · ⊕ Es
a(x) 7 → (a(ξ u1 ), . . . , a(ξ us )) . (1.6)
Quasi-Cyclic Codes 7

This implies that


Rℓ ∼
= Eℓ1 ⊕ · · · ⊕ Eℓs .
Hence, a QC code C ⊆ Rℓ can be viewed as an (E1 ⊕ · · · ⊕ Es )-submodule of Eℓ1 ⊕ · · · ⊕ Eℓs
and decomposes as
C∼= C1 ⊕ · · · ⊕ Cs , (1.7)
where Ci is a linear code of length ℓ over Ei , for each i. These length ℓ linear codes over
various extensions of Fq are called the constituents of C. Let C ⊆ Rℓ be r-generated as an
R-module by
 
{ a1,0 (x), . . . , a1,ℓ−1 (x) , . . . , ar,0 (x), . . . , ar,ℓ−1 (x) } ⊂ Rℓ .

Then, for 1 ≤ i ≤ s, we have


 
Ci = SpanEi ab,0 (ξ ui ), . . . , ab,ℓ−1 (ξ ui ) : 1 ≤ b ≤ r . (1.8)

Note that each extension field Ei above is isomorphic to a minimal cyclic code of length
m over Fq , namely, the cyclic code whose check polynomial is fi (x). If we denote by θi
the generating primitive idempotent for the minimal cyclic code in consideration, then the
isomorphism is given by the maps

ψi : Ei −→ hθi i
ϕi : hθi i −→ Ei P
m−1
and , (1.9)
a(x) 7−→ a(ξ ui ) δ 7−→ ak xk
k=0

where
1
ak = TrEi /Fq (δξ −kui ).
m
Here, TrEi /Fq denotes the trace map from Ei onto Fq . If [Ei : Fq ] = ei , then TrEi /Fq (x) =
ei −1
x + xq + · · · + xq . If Ci is a length ℓ linear code over Ei , we denote its concatenation
with hθi i by hθi i✷Ci and the concatenation is carried out by the map ψi , extended to Eℓi .
In other words, ψi is applied to each symbol of the codeword in Ci to produce an element
of hθi iℓ .
Jensen gave the following concatenated description for QC codes.
Theorem 1.3.1 ([12]).
i. Let C be an R-submodule of Rℓ (i.e., a QC code). Then for some subset I of {1, . . . , s},
there exist linear codes Ci of length ℓ over Ei , which can be explicitly described, such that
M
C= hθi i✷Ci .
i∈I

ii. Conversely, let Ci be a linear code in Eℓi , for each i ∈ I ⊆ {1, . . . , s}. Then,
M
C= hθi i✷Ci
i∈I

is a q-ary QC code of length mℓ and index ℓ.


It was proven in [8, Theorem 4.1] that, for a given QC code C, the constituents Ci ’s in
(1.7) and the outer codes Ci ’s in the concatenated structure of Theorem 1.3.1 are equal to
each other.
8 Quasi-Cyclic Codes

1.3.2 Applications
In this section, we present some constructions and characterizations of QC codes using
their CRT decomposition.

[Link] Trace Representation


By (1.9) and Theorem 1.3.1, an arbitrary codeword c ∈ C can be written as an m × ℓ
array in the form (see [17, Theorem 5.1])
 P s 
 
−0ui
TrEi /Fq λi,t ξ
 i=1 
1  0≤t≤ℓ−1 
.. 
c=  . , (1.10)
m  s  
 P −(m−1)ui
 
TrEi /Fq λi,t ξ
i=1 0≤t≤ℓ−1

where λi = (λi,0 , . . . , λi,ℓ−1 ) ∈ Ci , for all i. Since mC = C, every codeword in C can


1
still be written in the form of (1.10) with the constant m removed. Note that the row
shift invariance of codewords amounts to being closed under multiplication by ξ −1 in this
representation.
Let F := Fq (ξ u1 , . . . , ξ us ) be the splitting field of xm −1 (i.e., the smallest field containing
all the Ei ’s) and let k1 , . . . , ks ∈ F with TrF/Ei (ki ) = 1, for each i. We can now unify the
traces and rewrite c ∈ C as follows (see [7]):
 
s
!!
 X 
c =  TrF/Fq ki λi,t ξ −jui . (1.11)
i=1 0≤t≤ℓ−1
0≤j≤m−1

Note that the case ℓ = 1 gives us the trace representation of a cyclic code of length m, in
the sense of the following formulation:
Theorem 1.3.2 ([27, Proposition 2.1]). Let gcd(m, q) = 1 and let ξ be a primitive mth
root of unity in some extension F of Fq . Assume that u1 , . . . , us are nonnegative integers
and let C be a q-ary cyclic code of length m such that the basic zero set Q of its dual is
BZ(C ⊥ ) = {ξ u1 , ξ u2 , . . . , ξ us } ( i.e., the generator polynomial of C ⊥ is i mi (x), where
mi (x) ∈ Fq [x] is the minimal polynomial of ξ ui over Fq ). Then
 
C = TrF/Fq (c1 ξ ju1 + · · · + cs ξ jus ) 0≤j≤m−1 : c1 , . . . , cs ∈ F .

Hence, the columns of any codeword in the QC code C viewed as in (1.11) lie in the
cyclic code D ⊆ Fm ⊥
q with BZ(D ) = {ξ
−u1
, . . . , ξ −us } (see [7, Proposition 4.2]).
Example 1.3.3. Let m = 3 and q ≡ 2 (mod 3) such that x3 − 1 factors into x − 1 and
x2 + x + 1 over Fq . By (1.5) and (1.6), we obtain

R = Fq [x]/hx3 − 1i ∼
= Fq [x]/hx − 1i ⊕ Fq [x]/hx2 + x + 1i ∼
= Fq ⊕ Fq 2 .

Therefore, any QC code C of length 3ℓ and index ℓ has two linear constituents C1 ⊆ Fℓq
and C2 ⊆ Fℓq2 such that C ∼
= C1 ⊕ C2 . By (1.11), the codewords of C are of the form (see
[17, Theorem 6.7])  
z + 2a − b
 z − a + 2b  ,
z−a−b
Quasi-Cyclic Codes 9

where z ∈ C1 , a + βb ∈ C2 (a, b ∈ Fℓq ) and β ∈ Fq2 such that β 2 + β + 1 = 0.


In particular, let q = 2t , where t is odd (otherwise, 2t ≡ 1(mod 3) if t is even and x3 − 1
splits into linear factors). By using the fact 2a = 2b = 0ℓ in even characteristic, we can
simplify the above expression further and write C as
  
 z+b 
C =  z + a  : z ∈ C1 , a + βb ∈ C2 . (1.12)
 
z+a+b

Example 1.3.4. Let m = 5 and let q be such that x4 + x3 + x2 + x + 1 is irreducible over


Fq . Let α ∈ Fq4 such that α4 + α3 + α2 + α + 1 = 0, and let Tr = TrFq4 /Fq . Let C1 ⊆ Fℓq
and C2 ⊆ Fℓq4 be two linear codes. Then the code (see [17, Theorem 6.14])
 

 z + Tr(y) 


 
 z + Tr(α−1 y) 


C =  z + Tr(α−2 y) 
: z ∈ C1 , y ∈ C2 

  z + Tr(α−3 y) 

 

 
z + Tr(α−4 y)

is a QC code of length 5ℓ and index ℓ over Fq .


In particular, let q = 2t and set y = c + αd + α2 e + α3 f , for some c, d, e, f ∈ Fℓq . We
can rewrite the codewords in C as:
 
z+d+e+f
 z+c+e+f 
 
 z + c + d + f ,
 
 z+c+d+e 
z+c+d+e+f

where z ∈ C1 , c + αd + α2 e + α3 f ∈ C2 .

[Link] Self-Dual and Complementary-Dual QC Codes


Observe that the monic polynomial xm −1 is self-reciprocal. We rewrite the factorization
into irreducible polynomials given in (1.4) as follows, which is needed for the dual code
analysis (see also [17]):

xm − 1 = g1 (x) · · · gn (x)h1 (x)h∗1 (x) · · · hp (x)h∗p (x), (1.13)

where gi (x) is self-reciprocal, for all 1 ≤ i ≤ n, and h∗t (x) = xdeg(ht ) ht (x−1 ) denotes the
reciprocal of ht (x), for all 1 ≤ i ≤ n and 1 ≤ t ≤ p. Note that s = n + 2p, since (1.4) and
(1.13) must be identical.
Let Gi := Fq [x]/hgi (x)i, H′t := Fq [x]/hht (x)i and H′′t := Fq [x]/hh∗t (x)i, for each i and t.
By the CRT, the decomposition of R in (1.5) now becomes:
! p 
!
Mn M 
R=∼ Gi ⊕ ′
H ⊕H ′′
,
t t
i=1 t=1

which implies ! !
n
M p
M
Rℓ ∼
= Gℓi ⊕ (H′t )ℓ ⊕ (H′′t )ℓ .
i=1 t=1
10 Quasi-Cyclic Codes

Hence, a QC code C ⊆ Rℓ viewed as an R-submodule of Rℓ now decomposes as (cf.


(1.7)) ! !
Mn Mp  
C∼= Ci ⊕ ′ ′′
Ct ⊕ Ct , (1.14)
i=1 t=1
where Ci ’s are the Gi -linear constituents of C of length ℓ, for all i = 1, . . . , n, Ct′ ’s and
Ct′′ ’s are the H′t -linear and H′′t -linear constituents of C of length ℓ, respectively, for all
t = 1, . . . , p. By fixing roots corresponding to irreducible factors gi (x), ht (x), h∗t (x) and
via the CRT, one can write explicitly the constituents, as in (1.8), in this setting as well.
Observe that H′t = H′′t , since Fq (ξ a ) = Fq (ξ −a ), for any a ∈ {0, 1, . . . , m − 1}.
Since gi (x) is self-reciprocal, the cardinality of Gi , say qi , is an even power of q for all
1 ≤ i ≤ n with two exceptions. One of these exceptions, for all m and q, is the field coming
from the irreducible factor x − 1 of xm − 1. When q is odd and m is even, x + 1 is another
self-reciprocal irreducible factor of xm − 1. In these cases, qi = q. Except for these two cases,
we equip each Gℓi with the inner product
ℓ−1
X √
qi
h c, d i := cj dj , (1.15)
j=0

where c = (c0 , . . . , cℓ−1 ), d = (d0 , . . . , dℓ−1 ) ∈ Gℓi . This is the Hermitian inner product. For
the two exceptions, in which case the corresponding field Gi is Fq , we equip Gℓi with the
usual Euclidean inner product. With the appropriate inner product, Hermitian or Euclidean,
on Gi , ⊥G denotes the dual on Gℓi . For each 1 ≤ t ≤ p, H′ℓ ′′ℓ
t = Ht is also equipped with the
′ℓ ′′ℓ
Euclidean inner product; ⊥e denotes the dual on Ht = Ht .
The dual of a QC code is also QC and the following result is immediate.
Proposition 1.3.5 ([17, Theorem 4.2]). Let C be a QC code with CRT decomposition as
in (1.14). Then its dual code C ⊥ (under the Euclidean inner product) is of the form
! p 
!
M n M 
⊥ ⊥G ′′⊥e ′⊥e
C = Ci ⊕ Ct ⊕ Ct . (1.16)
i=1 t=1

Recall that a linear code C is said to be self-dual if C = C ⊥ and C is called a linear


code with complementary dual (LCD) if C ∩ C ⊥ = {0}. We now characterize self-dual and
LCD QC codes (QCCD) via their constituents (see [9, 18]).
Theorem 1.3.6. Let C be a q-ary QC code of length mℓ and index ℓ, which has a CRT
decomposition as in (1.14).
i. C is (Euclidean) self-dual if and only if Ci = Ci⊥G , for all 1 ≤ i ≤ n, and Ct′′ = Ct′⊥e
over H′t = H′′t , for all 1 ≤ t ≤ p.
ii. C is (Euclidean) LCD if and only if Ci ∩ Ci⊥G = {0}, for all 1 ≤ i ≤ n, and Ct′ ∩ Ct′′⊥e =
{0}, Ct′′ ∩ Ct′⊥e = {0} over H′t = H′′t , for all 1 ≤ t ≤ p.
Proof. The proof is immediate from the CRT decompositions of C in (1.14) and of its dual
C ⊥ in (1.16).
The following special cases are easy to derive from Theorem 1.3.6 above.
Corollary 1.3.7.
i. If the CRT decomposition of C is as in (1.14) with Ci = Ci⊥G , for all 1 ≤ i ≤ n, and
Ct′ = {0}, Ct′′ = (H′′t )ℓ (or Ct′′ = {0}, Ct′ = (H′t )ℓ ), for all 1 ≤ t ≤ p, then C is self-dual.
ii. If the CRT decomposition of C is as in (1.14) with Ci ∩ Ci⊥G = {0}, for all 1 ≤ i ≤ n,
and Euclidean LCD codes Ct′ = Ct′′ over H′t = H′′t , for all 1 ≤ t ≤ p, then C is LCD.
Quasi-Cyclic Codes 11

1.4 Minimum Distance Bounds


Given a q-ary code C that is not the trivial zero code, the minimum (Hamming) distance
of C is defined as d(C) := min{wt(c) : 0 6= c ∈ C}, where wt(c) denotes the number of
nonzero entries in c ∈ C. Using the tools described in Sections 1.2 and 1.3, we address some
lower bounds on the minimum distance of a given QC code in this section.

1.4.1 The Jensen Bound


The concatenated structure in Theorem 1.3.1 yields a minimum distance bound for QC
codes ([12, Theorem 4]). This bound is a consequence of the work of Blokh and Zyablov in
[1], which holds for general concatenated codes.
Theorem 1.4.1. Let C be a q-ary QC code of length mℓ, index ℓ with the concatenated
structure
Mg
C= hθt i✷Ct ,
t=1

where, without loss of generality, we have chosen the indices t such that 0 < d(C1 ) ≤
d(C2 ) ≤ · · · ≤ d(Cg ). Then we have
n  o
d(C) ≥ min d(Ce )d hθ1 i ⊕ · · · ⊕ hθe i .
1≤e≤g

Proof. Let c be a nonzero codeword in C. By the concatenated structure of Section 1.3.1


and (1.9),
Xg
c= ψi (ci ),
i=1

with ci ∈ Ci , for all 1 ≤ i ≤ g. Assume that e is the maximal index such that ce is a nonzero
vector and ce+1 , . . . , cg are all zero vectors. Hence,

c = ψ1 (c1 ) + · · · + ψe (ce ),

and each ψi (ci ) ∈ hθi iℓ . Since the sum of hθi i’s is direct, the codeword c belongs to

(hθ1 i ⊕ · · · ⊕ hθe i) . Note that ce has at least d(Ce ) nonzero coordinates, all of which are
mapped to a nonzero vector in hθe i by ψe . This implies that c has at least d(Ce ) nonzero
coordinates, since each coordinate of c belongs to the direct sum hθ1 i ⊕ · · · ⊕ hθe i. Hence
the result follows. ✷

1.4.2 The Lally Bound


Let C be a QC code of length mℓ and index ℓ over Fq . Let {1, α, . . . , αℓ−1 } be some
fixed choice of basis of Fqℓ as a vector space over Fq . We view the codewords of C as m × ℓ
arrays as in (1.1) and consider the following map:

Φ: Fmℓ
q −→ Fm
qℓ
   
c0,0 ... c0,ℓ−1 c0
 .. ..   .. 
c= . .  7−→  . ,
cm−1,0 . . . cm−1,ℓ−1 cm−1
12 Quasi-Cyclic Codes

where ci = ci,0 + ci,1 α + · · · + ci,ℓ−1 αℓ−1 ∈ Fqℓ , for all 0 ≤ i ≤ m − 1.


Clearly, Φ(c) lies in some cyclic code, for any c ∈ C. We now define the smallest
such cyclic code as C. b First, we equivalently extend the map Φ above to the polynomial
description of codewords as in (1.2):

Φ : Fq [x]ℓ −→ Fqℓ [x] (1.17)


ℓ−1
X
c(x) = (c0 (x), . . . , cℓ−1 (x)) 7−→ c(x) = cj (x)αj .
j=0

(k) (k)
If C has generating set {f1 , . . . , fr }, where fk = (f0 (x), . . . , fℓ−1 (x)) ∈ Fq [x]ℓ , for each
k ∈ {1, . . . , r}, then C b = hgcd(f1 (x), . . . , fr (x), xm − 1)i such that fk = Φ(fk ) ∈ Fqℓ [x], for
all k ∈ {1, . . . , r} [14].
Next, we consider the q-ary linear code of length ℓ that is generated by the rows of
the codewords in C, which are represented as m × ℓ arrays as in (1.1). Namely, let B
be the linear block code of length ℓ over Fq , generated by {fk,i : k ∈ {1, . . . , r}, i ∈
(k) (k)
{0, . . . , m − 1}} ⊆ Fℓq , where each fk,i := (fi,0 , . . . , fi,ℓ−1 ) ∈ Fℓq is the vector of the ith
(k) (k) (k) (k)
coefficients of the polynomials fj (x) = f0,j +f1,j x+· · ·+fm−1,j xm−1 , for all k ∈ {1, . . . , r}
and j ∈ {0, . . . , ℓ − 1}.
Since the image of any codeword c(x) ∈ C under the map Φ is an element of the cyclic
code C b over Fqℓ , there are at least d(C)
b nonzero rows in each nonzero codeword of C. For
th
any i ∈ {0, . . . , m − 1}, the i row ci = (ci,0 , . . . , ci,ℓ−1 ) of a codeword c ∈ C can be viewed
as a codeword in B, therefore, a nonzero ci has weight at least d(B). Hence, we have shown
the following.
Theorem 1.4.2 (Lally bound [14, Theorem 5]). Let C be an r-generator QC code of length
b ⊆ Fmℓ
mℓ and index ℓ over Fq with generating set {f1 , . . . , fr } ⊆ Fq [x]ℓ . Let the cyclic code C q
and the linear code B ⊆ Fℓq be defined as above. Then,

b
d(C) ≥ d(C)d(B).

1.4.3 Spectral Bounds


In [25], Semenov and Trifonov developed a spectral theory for QC codes by using the
upper triangular polynomial matrices (1.3) given by Lally and Fitzpatrick [16]; this gives
rise to a BCH-like minimum distance bound. Their bound was improved by Zeh and Ling
in [28] by using the Hartmann–Tzeng (HT) Bound for cyclic codes.1 Before proceeding to
the spectral theory of QC codes and their minimum distance bounds, we explore relevant
minimum distance bounds for cyclic codes that generalize the BCH and HT Bounds, namely
the Roos Bound and the shift bound.

[Link] Cyclic Codes and Distance Bounds From Their Zeros


Recall that a cyclic code C ⊆ Fm q can be viewed as an ideal of R. Since R is a principal
ideal ring, there exists a unique monic polynomial g(x) ∈ R such that C = hg(x)i, i.e.,
each codeword c(x) ∈ C is of the form c(x) = a(x)g(x), for some a(x) ∈ R. The polynomial
g(x), which is a divisor of xm − 1, is called the generator polynomial of C. For any positive
1 The BCH Bound is found in [2, 11]; the HT Bound, which generalizes the BCH Bound, is found in [10,

Theorem 2].
Quasi-Cyclic Codes 13

integer p, let 0p denote throughout the all-zero vector of length p. A cyclic code C = hg(x)i
is {0m } if and only if g(x) = xm − 1.
The roots of xm − 1 are of the form 1, ξ, . . . , ξ m−1 , where ξ is a fixed primitive mth root
of unity. Henceforth, let Ω := {ξ k : 0 ≤ k ≤ m − 1} be the set of all mth roots of unity.
Recall that the splitting field of xm − 1 is denoted by F, hence, F is the smallest extension of
Fq that contains Ω. Given the cyclic code C = hg(x)i, the set L := {ξ k : g(ξ k ) = 0} ⊆ Ω of
roots of its generator polynomial is called the zeros of C. Note that ξ k ∈ L implies ξ qk ∈ L,
for each k. A nonempty subset E ⊆ Ω is said to be consecutive if there exist integers e, n
and δ with e ≥ 0, δ ≥ 2, n > 0 and gcd(m, n) = 1 such that

E := {ξ e+zn : 0 ≤ z ≤ δ − 2} ⊆ Ω. (1.18)

We now describe the Roos bound for cyclic codes. For ∅ 6= P ⊆ Ω, let CP denote any
cyclic code of length m over Fq , whose set of zeros contains P . Let dP denote the least
possible amount that the minimum distance of any CP can have. In particular, dP = d(CP )
when P is the set of zeros of CP .
Theorem 1.4.3 (Roos bound [24, Theorem 2]). Let N and M be two nonempty subsets of
Ω. If there exists a consecutive set M ′ containing M such that |M ′ | ≤ |M | + dN − 2, then
we have dMN ≥ |M | + dN − 1, where M N := {εϑ | ε ∈ M, ϑ ∈ N }.
If N is consecutive like in (1.18), then we get the following.
Corollary 1.4.4 ([24, Corollary 1]). Let N, M and M ′ be as in Theorem 1.4.3, with N
consecutive. Then |M ′ | < |M | + |N | implies dMN ≥ |M | + |N |.
Remark 1.4.5. In particular, the case M = {1} in Corollary 1.4.4 yields the BCH bound
for the associated cyclic code. Taking M ′ = M in the corollary yields the HT bound.
Another improvement to the HT bound for cyclic codes, known as the shift bound, was
given by van Lint and Wilson in [26]. To describe the shift bound, we need the notion of an
independent set, which can be constructed over any field in a recursive way.
Let S be a subset of some field K of any characteristic. One inductively defines a family
of finite subsets of K, called independent with respect to S, as follows:
1. ∅ is independent with respect to S.
2. If A ⊆ S is independent with respect to S, then A ∪ {b} is independent with respect to
S for all b ∈ K \ S.
3. If A is independent with respect to S and c ∈ K∗ , then cA is independent with respect
to S.
We define the weight of a polynomial f (x) ∈ K[x], denoted by wt(f ), as the number of
nonzero coefficients in f (x).
Theorem 1.4.6 (Shift bound [26, Theorem 11]). Let 0 6= f (x) ∈ K[x] and let S := {θ ∈
K : f (θ) = 0}. Then wt(f ) ≥ |A|, for every subset A of K that is independent with respect
to S.
The minimum distance bound for a given cyclic code follows by considering the weights
of its codewords c(x) ∈ C and the independent sets with respect to subsets of its zeros L.
Observe that, in this case, the universe of the independent sets is Ω, not F, because all of
the possible roots of the codewords are contained in Ω. Moreover, we choose b from Ω \ P
in Condition 2 above, where P ⊆ L, and c in Condition 3 is of the form ξ k ∈ F∗ , for some
0 ≤ k ≤ m − 1.
14 Quasi-Cyclic Codes

Remark 1.4.7. In particular, A = {ξ e+zn : 0 ≤ z ≤ δ − 1} is independent with respect to


the consecutive set E in (1.18), which gives the BCH bound for CE . Let D := {ξ e+zn1 +yn2 :
0 ≤ z ≤ δ − 2, 0 ≤ y ≤ s}, for integers b ≥ 0, δ ≥ 2 and positive integers s, n1 and
n2 such that gcd(m, n1 ) = 1 and gcd(m, n2 ) < δ. Then, for any fixed ζ ∈ {0, . . . , δ − 2},
Aζ := {ξ e+zn1 : 0 ≤ z ≤ δ − 2} ∪ {ξ e+ζn1 +yn2 : 0 ≤ y ≤ s + 1} is independent with respect
to D and we get the HT bound for CD .

[Link] Spectral Theory of QC Codes


e
Semenov and Trifonov [25] used the polynomial matrix G(x) in (1.3) to develop a spectral
theory for QC codes, a topic we now explore.
e
Given a QC code C ⊆ Rℓ , let the associated ℓ × ℓ upper triangular matrix G(x) be as
e
in (1.3) with entries in Fq [x]. The determinant of G(x) is
ℓ−1
Y
e
det(G(x)) := gj,j (x)
j=0

and we define an eigenvalue β of C to be a root of det(G(x)). e Note that, since gj,j (x) |
(xm − 1), for each 0 ≤ j ≤ ℓ − 1, all eigenvalues are elements of Ω, i.e., β = ξ k for
some k ∈ {0, . . . , m − 1}. The algebraic multiplicity of β is the largest integer a such that
e
(x − β)a | det(G(x)). The geometric multiplicity of β is the dimension of the null space of
e
G(β). This null space, denoted by Vβ , is called the eigenspace of β. In other words,

e
Vβ := v ∈ Fℓ : G(β)v ⊤
= 0⊤ℓ ,

where F is the splitting field of xm − 1, as before, and ⊤ denotes the transpose. It was
e
shown in [25] that, for a given QC code and the associated G(x) ∈ Fq [x]ℓ×ℓ , the algebraic
multiplicity a of an eigenvalue β is equal to its geometric multiplicity dimF (Vβ ).
Lemma 1.4.8 ([25, Lemma 1]). The algebraic multiplicity of any eigenvalue of a QC code
C is equal to its geometric multiplicity.
From this point on, we let Ω ⊆ Ω denote the nonempty set of all eigenvalues of C such
that |Ω| = t > 0. Note that Ω = ∅ if and only if the diagonal elements gj,j (x) in G(x) e are
constant and C is the trivial full space code. Choose an arbitrary eigenvalue βi ∈ Ω with
multiplicity ni for some i ∈ {1, . . . , t}. Let {vi,0 , . . . , vi,ni −1 } be a basis for the corresponding
eigenspace Vi . Consider the matrix
   
vi,0 vi,0,0 ... vi,0,ℓ−1
   
Vi :=  ...  =  ..
.
..
.
..
. , (1.19)
vi,ni −1 vi,ni −1,0 . . . vi,ni −1,ℓ−1
having the basis elements as its rows. We let
Hi := (1, βi , . . . , βim−1 ) ⊗ Vi and

   
H1 V1 β1 V1 . . . (β1 )m−1 V1
 ..   .. .. .. .. 
H :=  .  =  . . . . . (1.20)
m−1
Ht Vt βt Vt ... (βt ) Vt
Pt Pℓ−1
Observe that H has n := i=1 ni rows. We also have that n = j=0 deg(gj,j (x)) by Lemma
1.4.8. The rows of H are linearly independent, a fact shown in [25, Lemma 2]. This proves
the following lemma.
Quasi-Cyclic Codes 15

Lemma 1.4.9. The matrix H in (1.20) has rank mℓ − dimFq (C).


It is immediate to confirm that Hc⊤ = 0⊤
n for any codeword c ∈ C. Together with
Lemma 1.4.9, we obtain the following.
Proposition 1.4.10 ([25, Theorem 1]). The n × mℓ matrix H in (1.20) is a parity-check
matrix for C.
Remark 1.4.11. Note that if Ω = ∅, then the construction of H in (1.20) is impossible.
Hence, we have assumed Ω 6= ∅ and we can always say H = 0mℓ if C = Fmℓ q . The other
extreme case is when Ω = Ω. By using Lemma 1.4.9 above, one can easily deduce that a
given QC code C = {0mℓ } if and only if Ω = Ω, each Vi = Fℓ (equivalently, each Vi = Iℓ ,
where Iℓ denotes the ℓ × ℓ identity matrix) and n = mℓ so that we obtain H = Imℓ . On the
e
other hand, Ω = Ω whenever (xm −1) | det(G(x)), but C is nontrivial unless each eigenvalue
in Ω has multiplicity ℓ.
Definition 1.4.12. Let V ⊆ Fℓ be an eigenspace. We define the eigencode corresponding
to V by  
 Xℓ−1 
C(V) = C := u ∈ Fℓq : vj uj = 0, ∀v ∈ V .
 
j=0

When we have C = {0ℓ }, it is assumed that d(C) = ∞.


The BCH-like minimum distance bound of Semenov and Trifonov for a given QC code
in [25, Theorem 2] was expressed in terms of the size of a consecutive subset of eigenvalues
in Ω and the minimum distance of the common eigencode related to this consecutive subset.
Zeh and Ling generalized their approach and derived an HT-like bound in [28, Theorem 1]
without using the parity-check matrix in their proof. The eigencode, however, is still needed.
In the next section, we will prove the analogues of these bounds for QC codes in terms of
the Roos and shift bounds.

[Link] Spectral Bounds for QC Codes


First, we establish a general spectral bound on the minimum distance of a given QC
code. Let C ⊆ Fmℓ
q be a QC code of index ℓ with nonempty eigenvalue set Ω & Ω. Let P ⊆ Ω
be a nonempty subset of eigenvalues such that P = {ξ u1 , ξ u2 , . . . , ξ ur }, where 0 < r ≤ |Ω|.
We define  
1 ξ u1 ξ 2u1 . . . ξ (m−1)u1
e P := 
H .
 ..
.. .. .. .. 
.
. . . .
1 ξ ur ξ 2ur . . . ξ (m−1)ur
Recall that dP denotes a positive integer such that any cyclic code CP ⊆ Fm q , whose zeros
e ⊤ ⊤
contain P , has a minimum distance at least dP . We have HP cP = 0r , for any cP ∈ CP . In
particular, if P is equal to the set of zeros of CP , then H e P is a parity-check matrix for CP .
Let VP denote the common eigenspace of the eigenvalues in P , and let VP be the matrix,
say of size t × ℓ, whose rows form a basis for VP (compare (1.19)). If we set H bP = H e P ⊗ VP ,
then Hb P c = 0 , for all c ∈ C. In other words, H
⊤ ⊤ b P is a submatrix of some H of the form
rt
b
in (1.20) if VP 6= {0ℓ }. If VP = {0ℓ }, then HP does not exist. We first handle this case
separately so that the bound is valid even if we have VP = {0ℓ }, before the cases where we
can use H b P in the proof.
Henceforth, we consider the quantity min{dP , d(CP )}, where CP is the eigencode cor-
responding to VP . We have assumed P 6= ∅ so that H e P is defined, and we also have P 6= Ω
16 Quasi-Cyclic Codes

as P ⊆ Ω & Ω to make dP well-defined. Since |P | ≥ 1, the BCH bound implies dP ≥ 2.


Hence, min{dP , d(CP )} = 1 if and only if d(CP ) = 1. For any nonzero QC code C, we have
d(C) ≥ 1. Therefore, whenever d(CP ) = 1, we have d(C) ≥ min{dP , d(CP )}. In particular,
when VP = 0, which implies CP = Fℓq and d(CP ) = 1, we have d(C) ≥ 1 = min{dP , d(CP )}.
Now let ∅ 6= P ⊆ Ω & Ω and let d(CP ) ≥ 2. Assume that there exists a codeword
c ∈ C of weight ω such that 0 < ω < min{dP , d(CP )}. For each 0 ≤ k ≤ m − 1, let ck =
(ck,0 , ..., ck,ℓ−1 ) be the k th row of the codeword c given as in (1.1) and we set sk := VP c⊤ k.
Since d(CP ) > ω, we have ck ∈ / CP and therefore sk = VP c⊤ ⊤
k 6= 0t , for all ck 6= 0ℓ , k ∈
{0, . . . , m−1}. Hence, 0 < |{sk : sk 6= 0⊤ t }| ≤ ω < min{dP , d(CP )}. Let S := [s0 s1 · · · sm−1 ].
Then H e P S ⊤ = 0, which implies that the rows of the matrix S lies in the right kernel of
He P . But this is a contradiction since any row of S has weight at most ω < dP , showing the
following.
Theorem 1.4.13 ([5, Theorem 11]). Let C ⊆ Rℓ be a QC code of index ℓ with nonempty
eigenvalue set Ω & Ω. Let P ⊆ Ω be a nonempty subset of eigenvalues and let CP ⊆ Fm q
be
T any cyclic code with zeros L ⊇ P and minimum distance at least dP . We define V P :=
β∈P Vβ as the common eigenspace of the eigenvalues in P and let CP denote the eigencode
corresponding to VP . Then,
d(C) ≥ min {dP , d(CP )} . (1.21)
Theorem 1.4.13 allows us to use any minimum distance bound derived for cyclic codes
based on their zeros. The following special cases are immediate after the preparation that
we have done in Section [Link] (cf. Theorems 1.4.3 and 1.4.6).
Corollary 1.4.14 ([5, Corollary 12]). Let C ⊆ Rℓ be a QC code of index ℓ with Ω & Ω as
its nonempty set of eigenvalues.
i. Let N and M be two nonempty subsets of Ω such that M N ⊆ Ω, where M N := {εϑ | ε ∈
M, ϑ ∈ N }. If there exists a consecutive set M ′ containing M with |M ′ | ≤ |M | + dN − 2,
then d(C) ≥ min(|M | + dN − 1, d(CMN )).

ii. For every A ⊆ Ω that is independent with respect to Ω, we have d(C) ≥ min(|A|, d(CTA )),
where TA := A ∩ Ω.
Proof.
i. Let N = {ξ u1 , . . . , ξ ur } and M = {ξ v1 , . . . , ξ vs } be such that there exists a consecutive
set M ′ = {ξ z : v1 ≤ z ≤ vs } ⊆ Ω containing M with |M ′ | ≤ |M | + dN − 2. We define the
matrices
   
1 ξ u1 ξ 2u1 . . . ξ (m−1)u1 1 ξ v1 ξ 2v1 . . . ξ (m−1)v1
He N :=  . .
 .. ..
.. .. ..  e
 , HM :=  .. ..
. . .. .. .. 
.
. . . . . .
1 ξ ur ξ 2ur . . . ξ (m−1)ur 1 ξ vs ξ 2vs . . . ξ (m−1)vs

Consider the joint subset M N = {ξ ui +vj : 1 ≤ i ≤ r, 1 ≤ j ≤ s} ⊆ Ω. Let Bk be the k th


column of He N for k ∈ {0, . . . , m − 1}. We create the joint matrix
 
B0 ξ v1 B1 ξ 2v1 B2 . . . ξ (m−1)v1 Bm−1
e MN = 
H  ..
. .. .. .. .. 
.
. . . .
B0 ξ vs B1 ξ 2vs B2 . . . ξ (m−1)vs Bm−1
T
Now let VMN := β∈MN Vβ denote the common eigenspace of the eigenvalues in M N
Quasi-Cyclic Codes 17

and let VMN be the matrix, whose rows form a basis for VMN , built as in (1.19). Let
CMN be the eigencode corresponding to VMN . Setting H b MN := H e MN ⊗ VMN implies
b ⊤
HMN c = 0 for all c ∈ C. The rest of the proof is identical with the proof of Theorem
1.4.13, where P is replaced by M N , and the result follows by the Roos bound (Theorem
1.4.3).
ii. For each independent A ⊆ Ω with respect to Ω, let TA = {ξ w1 , ξ w2 , . . . , ξ wy } = A ∩
Ω. Since Ω is a proper subset of Ω, a nonempty TA can be obtained by the recursive
construction of A. We define
 
1 ξ w1 ξ 2w1 . . . ξ (m−1)w1
e TA = 
H .
 ..
.. .. .. .. 
.
. . . .
1 ξ wy ξ 2wy . . . ξ (m−1)wy

Let VTA be the matrix corresponding to a basis of VTA , which is the intersection of the
eigenspaces belonging to the eigenvalues in TA . Let CTA be the eigencode corresponding
b TA := H
to the eigenspace VTA . We again set H e TA ⊗ VTA and the result follows in a similar
way by using the shift bound (Theorem 1.4.6).

Remark 1.4.15. We can obtain the BCH-like bound in [25, Theorem 2] and the HT-like
bound in [28, Theorem 1] by using Remarks 1.4.5 and 1.4.7.

1.5 Asymptotics
Let (Ci )i≥1 be a sequence of linear codes over Fq , and let Ni , di and ki denote respectively
the length, minimum distance, and dimension of Ci , for all i. Assume that lim Ni = ∞.
i→∞
Let
di ki
δ := lim inf and R := lim inf
i→∞ Ni i→∞ Ni

denote the relative distance and the relative rate of the sequence (Ci )i≥1 . Both R and δ
are finite as they are limits of bounded quantities. If Rδ 6= 0, then (Ci )i≥1 is called an
asymptotically good sequence of codes.
We will require the celebrated entropy function

Hq (y) = y logq (q − 1) − y logq (y) − (1 − y) logq (1 − y),

defined for 0 < y < q−1q and of constant use in estimating binomial coefficients of large
arguments [19, pages 309–310]. The asymptotic Gilbert–Varshamov Bound (see [19, Chapter
17, Theorem 30]) states that, for every q and 0 < δ < 1 − q1 , there exists an infinite family
of q-ary codes with limit rate
R ≥ 1 − Hq (δ).
The existence of explicit families of QC codes satisfying a modified Gilbert–Varshamov
Bound were shown in [3], and then this result was improved in [13]. Below, we focus on
self-dual and LCD families of QC codes.
18 Quasi-Cyclic Codes

1.5.1 Good Self-Dual QC Codes Exist


In this section, we construct families of binary self-dual QC codes. We assume that
all binary codes are equipped with the Euclidean inner product and all the F4 -codes are
equipped with the Hermitian inner product. Self-duality in the following discussion is with
respect to these respective inner products. A binary self-dual code is said to be of Type II
if and only if all its weights are multiples of 4 and of Type I otherwise. We first recall some
background material on mass formulas for self-dual codes over F2 and F4 .
Proposition 1.5.1. Let ℓ be an even positive integer.
i. The number of self-dual binary codes of length ℓ is given by

2 −1
Y
N (2, ℓ) = (2i + 1).
i=1

ii. Let v ∈ Fℓ2 with even Hamming weight, other than 0 and ℓ. The number of self-dual
binary codes of length ℓ containing v is given by

2 −2
Y
M (2, ℓ) = (2i + 1).
i=1

iii. The number of self-dual F4 -codes of length ℓ is given by



2 −1
Y
N (4, ℓ) = (22i+1 + 1).
i=0

iv. The number of self-dual F4 -codes of length ℓ containing a given nonzero codeword of
length ℓ and even Hamming weight is given by

2 −2
Y
M (4, ℓ) = (22i+1 + 1).
i=0

Proof. Parts i. and iii. are well-known facts, found for example in [23]. Part ii. is an imme-
diate consequence of [20, Theorem 2.1] with s = 2, noting that every self-dual binary code
must contain the all-one vector 1. Part iv. follows from [4, Theorem 1] with n1 = ℓ and
k1 = 1.
Proposition 1.5.2. Let ℓ be a positive integer divisible by 8.
i. The number of Type II binary self-dual codes of length ℓ is given by

2 −2
Y
T (2, ℓ) = 2 (2i + 1).
i=1

ii. Let v ∈ Fℓ2 with Hamming weight divisible by 4, other than 0 and ℓ. The number of Type
II binary self-dual codes of length ℓ containing v is given by

2 −3
Y
S(2, ℓ) = 2 (2i + 1).
i=1
Quasi-Cyclic Codes 19

Proof. Part i. is found in [23], and part ii. is exactly [20, Corollary 2.4].
Let C1 denote a binary code of length ℓ and let C2 be a code over F4 of length ℓ. We
construct a binary QC code C of length 3ℓ and index ℓ whose codewords are of the form
given in (1.12). It is easy to check that C is self-dual if and only if both C1 and C2 are
self-dual, and C is of Type II if and only if C1 is of Type II and C2 is self-dual.
We assume henceforth that C is a binary self-dual QC code constructed in the above
way. Any codeword c ∈ C must necessarily have even Hamming weight. Suppose that c
corresponds to the pair (c1 , c2 ), where c1 ∈ C1 and c2 ∈ C2 . Since C1 and C2 are self-dual,
it follows that c1 and c2 must both have even Hamming weights. When c 6= 03ℓ , there are
three possibilities for (c1 , c2 ):
1. c1 6= 0ℓ , c2 6= 0ℓ ;
2. c1 = 0ℓ , c2 6= 0ℓ ; and
3. c1 6= 0ℓ , c2 = 0ℓ .
We count the number of codewords c in each of these categories for a given even weight d.
For Case 2, if the Hamming weight of c is d, then C ∼ = C1 ⊕ C2 implies that c2 has
Hamming weight d/2. Since c2 has even Hamming weight, it follows that d is divisible by 4
in order for this case to occur. It is easy to see that the number A2 (ℓ, d) of such words c is

bounded above by d/2 3d/2 where 4 | d. For d not divisible by 4, set A2 (ℓ, d) = 0.
The argument to obtain the number of words of Case 3 is similar.  It is easy to show

that the number A3 (ℓ, d) of such words is bounded above by d/3 where 6 | d. When d is
not divisible by 6, set A3 (ℓ, d) = 0. 
3ℓ
The total number of vectors in F3ℓ 2 of weight d is d ; so for Case 1, we have
 
3ℓ
A1 (ℓ, d) ≤ − A2 (ℓ, d) − A3 (ℓ, d).
d

In particular, A1 (ℓ, d) is bounded above by 3ℓ d .
Combining the above observations and Proposition 1.5.1, the number of self-dual binary
QC codes of length 3ℓ and index ℓ with minimum weight less than d is bounded above by
X 
A1 (ℓ, e)M (2, ℓ)M (4, ℓ) + A2 (ℓ, e)N (2, ℓ)M (4, ℓ) + A3 (ℓ, e)M (2, ℓ)N (4, ℓ) .
e<d
e: even

Theorem 1.5.3 ([18, Theorem 3.1]). Let ℓ be an even integer and let d be the largest even
integer such that
! !
X 3ℓ ℓ
X  ℓ  X  ℓ 
+ (2 2 −1 + 1) 3e/2 + (2ℓ−1 + 1)
e e/2 e/3
e<d e<d e<d
e ≡ 0 mod 2 e ≡ 0 mod 4 e ≡ 0 mod 6


< (2 2 −1 + 1)(2ℓ−1 + 1).
Then there exists a self-dual binary QC code of length 3ℓ and index ℓ with minimum distance
at least d.
Proof. Multiplying both sides of the inequality by M (2, ℓ)M (4, ℓ), and applying the above
upper bounds for Ai (ℓ, d) (i = 1, 2, 3), we see that the inequality in Theorem 1.5.3 implies
that the number of self-dual binary QC codes of length 3ℓ and index ℓ with minimum
distance < d is strictly less than the total number of self-dual binary QC codes of length 3ℓ
and index ℓ.
20 Quasi-Cyclic Codes

If we are interested only in Type II QC codes, using Proposition 1.5.2, we easily see that
the number of Type II binary QC codes of length 3ℓ and index ℓ with minimum weight is
< d is bounded above by
X 
A1 (ℓ, e)S(2, ℓ)M (4, ℓ) + A2 (ℓ, e)T (2, ℓ)M (4, ℓ) + A3 (ℓ, e)S(2, ℓ)N (4, ℓ) .
e<d
e ≡ 0 mod 4

Using an argument similar to that for Theorem 1.5.3, we obtain the following result.
Theorem 1.5.4 ([18, Theorem 3.2]). Let ℓ be divisible by 8 and let d be the largest multiple
of 4 such that
!  !
X 3ℓ ℓ
X  ℓ  X ℓ
−2 e/2 ℓ−1
+ (2 2 + 1) 3 + (2 + 1)
e e/2 e/3
e<d e<d e<d
e ≡ 0 mod 4 e ≡ 0 mod 4 e ≡ 0 mod 12


< (2 2 −2 + 1)(2ℓ−1 + 1).

Then there exists a Type II binary QC code of length 3ℓ and index ℓ with minimum distance
at least d.
We are now in a position to state and prove the asymptotic version of Theorems 1.5.3
and 1.5.4.
Theorem 1.5.5 ([18, Theorem 4.1]). There exists an infinite family of binary self-dual QC
di
codes Ci of length 3ℓi and of distance di with lim ℓi = ∞ such that δ = lim inf exists
i→∞ i→∞ 3ℓi
and is bounded below by
δ ≥ H2−1 (1/2) = 0.110 · · · .
Proof. The right-hand-side of the inequality of Theorem 1.5.3 is plainly of the order of 23ℓ/2
for large ℓ. We compare this in turn to each of the three summands on the left-hand side
(at the price of a more stringent inequality, congruence conditions on the summation range
are neglected). By [19, Chapter 10, Corollary 9], for large ℓ (with µ = δ and n = ℓ), the first
and third summands are of order 23ℓH2 (δ) and 2ℓ+ℓH2 (δ) , respectively. They both are of the
order of the RHS for H2 (δ) = 1/2. By [19, Chapter 10, Lemma 7], for large ℓ (with λ = δ
and n = ℓ), the second summand is of order 2ℓf (3δ/2) for f (t) := 0.5 + t log2 (3) + H2 (t),
which is of the order of the right-hand-side for

δ = 0.1762 · · · ,

a value > H2−1 (1/2).


Similarly, for Type II codes, we have the following.
Theorem 1.5.6. There exists an infinite family of Type II binary QC codes Ci of length
di
3ℓi and of distance di with lim ℓi = ∞ such that δ = lim inf exists and is bounded below
i→∞ i→∞ 3ℓi
by
δ ≥ H2−1 (1/2) = 0.110 · · · .
Proof. Since we neglected the congruence conditions in the preceding analysis, the calcula-
tions are exactly the same but using Theorem 1.5.4.
Quasi-Cyclic Codes 21

1.5.2 Complementary-Dual QC Codes Are Good


It is known that both Euclidean and Hermitian (using the inner product (1.15)) LCD
codes are asymptotically good; see [21, Propositions 2 and 3] and [9, Theorem 3.6], respec-
tively. Recall that the second part of Corollary 1.3.7 suggests an easy construction of QCCD
codes from LCD codes. In [9], this idea was used to show the existence of good long QCCD
codes, as shown in the next result, together with the help of Theorem 1.4.1.
Theorem 1.5.7 ([9, Theorems 3.3 and 3.7]). Let q be a power of a prime and let m ≥ 2
be relatively prime to q. Then there exists an asymptotically good sequence of q-ary QCCD
codes.
Proof. Let ξ be a primitive mth root of unity over Fq . There are two possibilities.
(1) 1 and −1 are not in the same q-cyclotomic coset modulo m.
(2) 1 and −1 are in the same q-cyclotomic coset modulo m.
In case (1), ξ and ξ −1 have distinct minimal polynomials h′ (x) and h′′ (x), respectively,
over Fq . Let H′ = Fq [x]/hh′ (x)i and H′′ = Fq [x]/hh′′ (x)i. Recall that these fields are equal:
H′ = Fq (ξ) = Fq (ξ −1 ) = H′′ . We denote both by H. Let θ′ and θ′′ denote the primitive idem-
potents corresponding to the q-ary length m minimal cyclic codes with check polynomials
h′ (x) and h′′ (x), respectively. Let (Ci )i≥1 be an asymptotically good sequence of (Euclidean)
LCD codes over H (such a sequence exists by [21]), where each Ci has parameters [ℓi , ki , di ].
For all i ≥ 1, define the q-ary QC code Di as
 
Di := Ci ⊕ Ci = hθ′ i✷Ci ⊕ hθ′′ i✷Ci ⊂ Hℓi ⊕ Hℓi .

By Corollary 1.3.7, each Di with i ≥ 1 is a QCCD code of index ℓi . If e := [H : Fq ], then


the length and the Fq -dimension of Di are mℓi and 2eki , respectively. By the Jensen Bound
of Theorem 1.4.1, the minimum distance of Di satisfies

d(Di ) ≥ min {d(hθ′ i)di , d(hθ′ i ⊕ hθ′′ i)di } ≥ d(hθ′ i ⊕ hθ′′ i)di .

For the sequence of QCCD codes (Di )i≥1 , the relative rate is

2eki 2e ki
R = lim inf = lim inf ,
i→∞ mℓi m i→∞ ℓi
and this quantity is positive since (Ci )i≥1 is asymptotically good. For the relative distance,
we have
d(Di ) di
δ = lim inf ≥ d(hθ′ i ⊕ hθ′′ i) lim inf .
i→∞ mℓi i→∞ ℓi

Note again that δ is positive since (Ci )i≥1 is asymptotically good.


In case (2), we clearly have that n and −n are always in the same q-cyclotomic coset
modulo m. Therefore every irreducible factor of xm − 1 over Fq is self-reciprocal. As m ≥ 2,
we can choose such a factor g(x) 6= x − 1. Let G = Fq [x]/hg(x)i. We denote by θ the
primitive idempotent corresponding to the q-ary minimal cyclic code of length m with check
polynomial g(x). Let (Ci )i≥1 be an asymptotically good sequence of Hermitian LCD codes
over G. Such a sequence exists by [9, Theorem 3.6]. Assume that each Ci has parameters
[ℓi , ki , di ]. For each i ≥ 1, define the q-ary QC code Di as the QC code with one constituent:

Di := hθi✷Ci .
22 Quasi-Cyclic Codes

If e := [G : Fq ], then the length and the dimension of Di are mℓi and eki , respectively. By
the Jensen Bound of Theorem 1.4.1, we have

d(Di ) ≥ d(hθi)d(Ci ).

As in part (a) we conclude that (Di )i≥1 is asymptotically good since (Ci )i≥1 is asymptoti-
cally good.

1.6 Connection to Convolutional Codes


An (ℓ, k) convolutional code C over Fq is defined as a rank k Fq [x]-submodule of Fq [x]ℓ ,
which is necessarily a free module since Fq [x] is a principal ideal domain. The weight of a
polynomial c(x) ∈ Fq [x] is defined as the number of nonzero terms in c(x) and the weight of
a codeword c(x) = (c0 (x), . . . , cℓ−1 (x)) ∈ C is the sum of the weights of its coordinates. The
free distance of the convolutional code dfree (C) is the minimum weight among its nonzero
codewords.
Remark 1.6.1. An encoder of an (ℓ, k) convolutional code C is a k × ℓ matrix G of rank
k with entries from Fq [x]. In other words,

C = (u0 (x), . . . , uk−1 (x)) G : (u0 (x), . . . , uk−1 (x)) ∈ Fq [x]k .

Remark 1.6.2. Note that a convolutional code is in general defined as an Fq (x)-submodule


(subspace) of Fq (x)ℓ . However, this leads to codewords with rational coordinates and infinite
weight. From the practical point of view, there is no reason to use this as the definition
(see [6, 15]). Note that even if C is defined as a subspace of Fq (x)ℓ , it has an encoder
which can be obtained by clearing off the denominators of all the entries in any encoder.
Moreover, it is usually assumed that G is noncatastrophic in the sense that a finite weight
codeword c(x) ∈ C can only be produced from a finite weight information word u(x). In
other words, an encoder G is said to be noncatastrophic if, for any u(x) ∈ Fq (x)k , u(x)G has
finite weight implies that u(x) also has finite weight. Hence, with a noncatastrophic encoder
G, all finite weight codewords are covered by the Fq [x]-module structure. Noncatastrophic
encoders exist for any convolutional code (see [22]).
Let R = Fq [x]/hxm − 1i as before and consider the projection map

Ψ : Fq [x] −→ R
f (x) 7−→ f ′ (x) := f (x) mod hxm − 1i.

It is clear that for a given (ℓ, k) convolutional code C and any m > 1, there is a natural
QC code C ′ , of length mℓ and index ℓ, related to it as shown below. Note that we denote
the map from C to C ′ also by Ψ.

Ψ : C −→ C ′
c(x) = (c0 (x), . . . , cℓ−1 (x)) 7−→ c′ (x) = (c′0 (x), . . . , c′ℓ−1 (x)).

Lally [15] showed that the minimum distance of the QC code C ′ above is a lower bound
on the free distance of the convolutional code C.
Quasi-Cyclic Codes 23

Theorem 1.6.3 ([15, Theorem 2]). Let C be an (ℓ, k) convolutional code over Fq and let
C ′ be the related QC code in Rℓ . Then dfree (C) ≥ d(C ′ ).
Proof. Let c(x) be a codeword in C and set c′ (x) = Ψ(c(x)) ∈ C ′ . We consider the two pos-
sibilities. First, if c′ (x) 6= 0, then wt(c(x)) ≥ wt(c′ (x)). For the second possibility, suppose
c′ (x) = 0. Let γ ≥ 1 be the maximal positive integer such that (xm −1)γ divides each coordi-
nate of c(x). Write c(x) = (xm −1)γ (v0 (x), . . . , vℓ−1 (x)) and set v(x) = (v0 (x), . . . , vℓ−1 (x)).
Then v(x) is a codeword of C, and for v′ (x) ∈ C ′ \{0}, we have wt(c(x)) ≥ wt(v′ (x)) by the
first possibility. Combining the two possibilities, for any c(x) ∈ C, there exists a v′ (x) ∈ C ′
such that wt(c(x)) ≥ wt(c′ (x)). This proves that dfree (C) ≥ d(C ′ ).
Remark 1.6.4. Note that Lally uses an alternative module description of convolutional
and QC codes in [15]. Namely, a basis {1, α, . . . , αℓ−1 } of Fqℓ over Fq is fixed and the Fq [x]-
modules Fq [x]ℓ and Fqℓ [x] are identified via the map Φ in (1.17). With this identification, a
length ℓ convolutional code is viewed as an Fq [x]-module in Fqℓ [x] and a length mℓ, index
ℓ QC code is viewed as an Fq [x]-module in Fqℓ [x]/hxm − 1i. However, all of Lally’s findings
can be translated to the module descriptions that we have been using for convolutional and
QC codes and this is how they are presented in Theorem 1.6.3.

Acknowledgements
The third author thanks Frederic Ezerman, Markus Grassl and Patrick Solé for their
valuable comments and discussions. The authors are also grateful to Cary Huffman for his
great help in improving this chapter. The second and third authors are supported by NTU
Research Grant M4080456.
Bibliography

[1] E. Blokh and V. Zyablov, “Coding of generalized concatenated codes,” Probl. Inform.
Transm., vol. 10, pp. 218–222, 1974.
[2] R. Bose and D. Chaudhuri, “On a class of error correcting binary group code,” Inf.
Control, vol. 3, no. 1, pp. 68–79, 1960.
[3] C. Chen, W. Peterson, and E. Weldon, “Some results on quasi-cyclic codes,” Inf. Con-
trol, vol. 15, no. 5, pp. 407–423, 1969.
[4] J. Conway, V. Pless, and N. Sloane, “Self-dual codes over GF (3) and GF (4) of length
not exceeding 16,” IEEE Trans. Inform. Theory, vol. 25, pp. 312–322, 1979.
[5] M. F. Ezerman, S. Ling, B. Özkaya, and J. Tharnnukhroh, “Spectral bounds for quasi-
twisted codes,” in Proc. IEEE Int. Symp. Inf. Theory (ISIT), July 2019, pp. 1922–1926.
[6] H. Gluesing-Luerssen, J. Rosenthal, and R. Smarandache, “Strongly-MDS convolu-
tional codes,” IEEE Trans. Inform. Theory, vol. 52, no. 2, pp. 584–598, 2006.
[7] C. Güneri and F. Özbudak, “A bound on the minimum distance of quasi-cyclic codes,”
SIAM J. Discrete Math, vol. 26, no. 4, pp. 1781–1796, 2012.
[8] ——, “The concatenated structure of quasi-cyclic codes and an improvement of Jensen’s
bound,” IEEE Trans. Inform. Theory, vol. 59, no. 2, pp. 979–985, 2013.
[9] C. Güneri, B. Özkaya, and P. Solé, “Quasi-cyclic complementary dual codes,” Finite
Fields Appl., vol. 42, pp. 67–80, 2016.
[10] C. Hartmann and K. Tzeng, “Generalizations of the BCH bound,” Inf. Control, vol. 20,
no. 5, pp. 489–498, 1972.
[11] A. Hocquenghem, “Codes correcteurs d’erreurs,” Chiffres (Paris), vol. 2, pp. 147–156,
1959.
[12] J. Jensen, “The concatenated structure of cyclic and abelian codes,” IEEE Trans.
Inform. Theory, vol. 31, no. 6, pp. 788–793, 1985.
[13] T. Kasami, “A Gilbert-Varshamov bound for quasi-cyclic codes of rate 1/2,” IEEE
Trans. Inform. Theory, vol. 20, p. 679, 1974.
[14] K. Lally, “Quasicyclic codes of index ℓ over Fq viewed as Fq [x]-submodules of
Fqℓ [x]/hxm − 1i,” in Proc. Conference on Applied Algebra and Error-Correcting Codes,
2003, pp. 244–253.
[15] ——, “Algebraic lower bounds on the free distance of convolutional codes,” IEEE
Trans. Inform. Theory, vol. 52, no. 5, pp. 2101–2110, 2006.
[16] K. Lally and P. Fitzpatrick, “Algebraic structure of quasi-cyclic codes,” Discrete Appl.
Math., vol. 111, no. 1-2, pp. 157–175, 2001.

25
26 Bibliography

[17] S. Ling and P. Solé, “On the algebraic structure of quasi-cyclic codes I: finite fields,”
IEEE Trans. Inform. Theory, vol. 47, no. 7, pp. 2751–2760, 2001.
[18] S. Ling and P. Solé, “Good self-dual quasi-cyclic codes exist,” IEEE Trans. Inform.
Theory, vol. 49, no. 4, pp. 1052–1053, 2003.
[19] F. MacWilliams and N. Sloane, The Theory of Error-Correcting Codes. North-Holland,
1977.
[20] F. MacWilliams, N. Sloane, and J. Thompson, “Good self-dual codes exist,” Discrete
Math., vol. 3, pp. 153–162, 1972.
[21] J. Massey, “Linear codes with complementary duals,” Discrete Math., vol. 106-107, pp.
337–342, 1992.
[22] R. McEliece, “The algebraic theory of convolutional codes,” in Handbook of Coding
Theory, Vol. II. V.S. Pless & W.C. Huffman eds., Elsevier Science, Amsterdam, 1998,
pp. 1065–1138.
[23] E. Rains and N. Sloane, “Self-dual codes,” in Handbook of Coding Theory, Vol. II.
V.S. Pless & W.C. Huffman eds., Elsevier Science, Amsterdam, 1998, pp. 177–294.
[24] C. Roos, “A new lower bound for the minimum distance of a cyclic code,” IEEE Trans.
Inform. Theory, vol. 29, no. 3, pp. 330–332, 1983.
[25] P. Semenov and P. Trifonov, “Spectral method for quasi-cyclic code analysis,” IEEE
Comm. Letters, vol. 16, no. 11, pp. 1840–1843, 2012.
[26] J. van Lint and R. Wilson, “On the minimum distance of cyclic codes,” IEEE Trans.
Inform. Theory, vol. 32, no. 11, pp. 23–40, 1986.
[27] J. Wolfmann, “New bounds on cyclic codes from algebraic curves,” in Lecture Notes in
Computer Science, vol. 388. New York: Springer-Verlag, 1989, pp. 47–62.
[28] A. Zeh and S. Ling, “Decoding of quasi-cyclic codes up to a new lower bound on
the minimum distance,” in Proc. IEEE Int. Symp. Inf. Theory (ISIT), Jun. 2014, pp.
2584–2588.

You might also like