48
4 Linear Block Codes
Exercise 4.3.1 Show that the code C
e given in Definition 4.3.2 is linear and has
parameters [n + 1, k, d
e
] q , where d
e
= d or d
e
= d + 1.
Let C be a linear code over F q with generator matrix G and parity check matrix
H . Then a generator G
e and a parity check matrix H
e for C
e can be obtained from
G and H , respectively, as
G
e
= [G|v
T
],
where v
T is a column vector such that the sum (over F q , of course) of the elements
of all rows of G
e is equal to zero, and
H
e
=
⎡
⎢
⎢
⎢
⎣
1 · · · 1 1
0
H
. . .
0
⎤
⎥
⎥
⎥
⎦
.
In the sequence, we present two concepts that will be utilized in our quantum
code construction shown in Sect. 6.7.
Definition 4.3.3 Let v = (v 1 , . . . , v n ) be a vector in F
n
q . We say that v is even-like
if it satisfies the equality
n
i=1
v i = 0, and odd-like otherwise.
Definition 4.3.4 Let C be an [n, k, d] q linear code. Then the minimum weight of
the even-like codewords of C is called minimum even-like weight of the code and
it is denoted by d even (or (d) even ). Similarly, the minimum weight of the odd-like
codewords of C is called minimum odd-like weight of the code, denoted by d odd (or
(d) odd ).
4.3.3 Code Expansion
We begin by recalling the concept of dual basis [110].
Definition 4.3.5 Let β = {b 1 , b 2 , . . . , b m } be a basis of F q m over F q . A dual basis
of β is defined as β
⊥
= {b 1
∗
, b 2
∗
, . . . , b m
∗
}, where tr q m /q (b i b j
∗
) = δ i j , for all i, j ∈
{1, . . . , m}. A self-dual basis β is a basis satisfying β = β
⊥ .
If C is an [n, k, d 1 ] q m linear code and β = {b 1 , b 2 , . . . , b m } is a basis of F q m over
F q , then the q-ary expansion β(C) of C with respect to β is an [mn, mk, d 2 ≥ d 1 ] q
linear code given by β(C) := {(c i j ) i, j ∈ F q
mn
| c = (
j c i j b j ) i ∈ C}.
The next lemma was presented in different works [12, 56, 94]. It is important in
order to compute the dual code of the q-ary expansion of some linear codes.
4 Linear Block Codes
Exercise 4.3.1 Show that the code C
e given in Definition 4.3.2 is linear and has
parameters [n + 1, k, d
e
] q , where d
e
= d or d
e
= d + 1.
Let C be a linear code over F q with generator matrix G and parity check matrix
H . Then a generator G
e and a parity check matrix H
e for C
e can be obtained from
G and H , respectively, as
G
e
= [G|v
T
],
where v
T is a column vector such that the sum (over F q , of course) of the elements
of all rows of G
e is equal to zero, and
H
e
=
⎡
⎢
⎢
⎢
⎣
1 · · · 1 1
0
H
. . .
0
⎤
⎥
⎥
⎥
⎦
.
In the sequence, we present two concepts that will be utilized in our quantum
code construction shown in Sect. 6.7.
Definition 4.3.3 Let v = (v 1 , . . . , v n ) be a vector in F
n
q . We say that v is even-like
if it satisfies the equality
n
i=1
v i = 0, and odd-like otherwise.
Definition 4.3.4 Let C be an [n, k, d] q linear code. Then the minimum weight of
the even-like codewords of C is called minimum even-like weight of the code and
it is denoted by d even (or (d) even ). Similarly, the minimum weight of the odd-like
codewords of C is called minimum odd-like weight of the code, denoted by d odd (or
(d) odd ).
4.3.3 Code Expansion
We begin by recalling the concept of dual basis [110].
Definition 4.3.5 Let β = {b 1 , b 2 , . . . , b m } be a basis of F q m over F q . A dual basis
of β is defined as β
⊥
= {b 1
∗
, b 2
∗
, . . . , b m
∗
}, where tr q m /q (b i b j
∗
) = δ i j , for all i, j ∈
{1, . . . , m}. A self-dual basis β is a basis satisfying β = β
⊥ .
If C is an [n, k, d 1 ] q m linear code and β = {b 1 , b 2 , . . . , b m } is a basis of F q m over
F q , then the q-ary expansion β(C) of C with respect to β is an [mn, mk, d 2 ≥ d 1 ] q
linear code given by β(C) := {(c i j ) i, j ∈ F q
mn
| c = (
j c i j b j ) i ∈ C}.
The next lemma was presented in different works [12, 56, 94]. It is important in
order to compute the dual code of the q-ary expansion of some linear codes.
