Quasi-Cyclic Codes Overview
Quasi-Cyclic Codes Overview
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.
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
φ: 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).
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
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
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
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
1.3.2 Applications
In this section, we present some constructions and characterizations of QC codes using
their CRT decomposition.
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 , c + αd + α2 e + α3 f ∈ C2 .
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
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
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
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. ✷
Φ: Fmℓ
q −→ Fm
qℓ
c0,0 ... c0,ℓ−1 c0
.. .. ..
c= . . 7−→ . ,
cm−1,0 . . . cm−1,ℓ−1 cm−1
12 Quasi-Cyclic Codes
(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).
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
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
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
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
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
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
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 · · · ,
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
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.
Ψ : 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.