LIFTED CODES OVER FINITE CHAIN RINGS
Steven T. Dougherty, Hongwei Liu and Young Ho Park
Abstract. In this paper, we study lifted codes over finite chain rings.
We use γ-adic codes over a formal power series ring to study codes over finite chain rings.
1. Introduction
Codes over finite rings have been studied for many years. More recently, codes over a wide variety of rings have been studied.
In this paper, we shall first define a series of chain rings and describe the concept of γ-adic codes. Then we will study these γ-adic codes over this class of chain rings.
We begin with some definitions. Throughout we let R be a finite com- mutative ring with identity 1 6= 0. Let R n = {(x 1 , · · · , x n ) | x j ∈ R} be an R-module. An R-submodule C of R n is called a linear code of length n over R. We assume throughout that all codes are linear.
For x, y ∈ R n , the inner product of x, y is defined as follows: [x, y] = x 1 y 1 + · · · + x n y n . If C is a code of length n over R, we define C ⊥ = {x ∈ R n | [x, c] = 0, ∀ c ∈ C} to be the orthogonal code of C. Notice that C ⊥ is linear whether or not C is linear.
It is well known that for any linear code C over a finite Frobenius ring,
|C| · |C ⊥ | = R n .
A finite ring is called a chain ring if its ideals are linearly ordered by inclusion. In particular, this means that any finite chain ring has a unique maximal ideal.
A finite chain ring is a Frobenius ring, so the identity above holds for codes over finite chain rings. If C ⊆ C ⊥ , then C is called self-orthogonal.
Moreover, if C = C ⊥ , then C is called self-dual.
Let R be a finite chain ring, m the unique maximal ideal of R, and let γ be the generator of the unique maximal ideal m. Then m = hγi = Rγ,
Mathematics Subject Classification. Primary: 94B05, Secondary: 13A99.
Key words and phrases. Finite chain rings, lifted codes, γ-adic codes.
39
where Rγ = hγi = {βγ | β ∈ R}. We have
(1) R = hγ 0 i ⊇ hγ 1 i ⊇ · · · ⊇ hγ i i ⊇ · · · hγ e i = {0}.
Let e be the minimal number such that hγ e i = {0}. The number e is called the nilpotency index of γ.
Let |R| denote the cardinality of R and R × the multiplicative group of all units in R. Let F = R/m = R/hγi be the residue field with characteristic p, where p is a prime number. We know that | F | = q = p r for some integers q and r and | F × | = p r − 1. The following lemma is well-known (see [10], for example).
Lemma 1.1. Let R be a finite chain ring with maximal ideal m = hγi, where γ is a generator of m with nilpotency index e. For any 0 6= r ∈ R there is a unique integer i, 0 ≤ i < e such that r = µγ i , with µ a unit. The unit µ is unique modulo γ e−i . Let V ⊆ R be a set of representatives for the equivalence classes of R under congruence modulo γ. Then
(i) for all r ∈ R there exist unique r 0 , · · · , r e−1 ∈ V such that r = P e−1
i=0 r i γ i ; (ii) |V | = | F |;
(iii) |hγ j i| = | F | e−j for 0 ≤ j ≤ e − 1.
By Lemma 1.1, the cardinality of R is:
(2) |R| = | F | · |hγi| = | F | · | F | e−1 = | F | e = p er .
Let R be a finite ring. We know from [10] that the generator matrix for a code C over R is permutation equivalent to a matrix of the following form:
(3) G =
I k
0A 0,1 A 0,2 A 0,3 A 0,e
γI k
1γA 1,2 γA 1,3 γA 1,e
γ 2 I k
2γ 2 A 2,3 γ 2 A 2,e . .. . ..
. .. . ..
γ e−1 I k
e−1γ e−1 A e−1,e
.
The matrix G above is called the standard generator matrix form of the code
C. It is immediate that a code C with this generator matrix has cardinality
(4) |C| = | F | P
e−1i=0(e−i)k
i= (p r ) P
e−1i=0(e−i)k
i= (p re ) k
0(p r(e−1) ) k
1· · · (p r ) k
e−1.
In this case, the code C is said to have type
(5) 1 k
0(γ) k
1(γ 2 ) k
2· · · (γ e−1 ) k
e−1.
2. Lifts of Codes over Finite Chain Rings
Let R be a finite chain ring with the maximal ideal hγi, where the nilpo- tency index of γ is e and R/hγi = F . We know that for any element a of R, it can be written uniquely as
a = a 0 + a 1 γ + · · · + a e−1 γ e−1 ,
where a i ∈ F , see [10] for example. For an arbitrary positive integer i, we define R i as
R i = {a 0 + a 1 γ + · · · + a i−1 γ i−1 | a i ∈ F }
where γ i−1 6= 0, but γ i = 0 in R i , and define two operations over R i :
i−1
X
l=0
a l γ l +
i−1
X
l=0
b l γ l =
i−1
X
l=0
(a l + b l )γ l (6)
i−1
X
l=0
a l γ l ·
i−1
X
l
′=0
b l
′γ l
′=
i−1
X
s=0
( X
l+l
′=s
a l b ′ l )γ s . (7)
It is easy to get that all the R i are finite rings. Moreover, we have the following lemma, the proof of which can be found in [9].
Lemma 2.1. For any positive integer i, we have (i) R × i = { i−1 P
l=0
a l γ l | 0 6= a 0 ∈ F };
(ii) the ring R i is a chain ring with maximal ideal hγi.
We define R ∞ as the ring of formal power series as follows:
R ∞ = F [[γ]] = {
∞
X
l=0
a l γ l | a l ∈ F }.
The following lemma is well-known.
Lemma 2.2. We have that (i) R × ∞ = {
∞
P
l=0
a l γ l | a 0 6= 0};
(ii) the ring R ∞ is a principal ideal domain.
Lemma 2.3. Let C be a nonzero linear code over R ∞ of length n, then any generator matrix of C is permutation equivalent to a matrix of the following form:
(8)
G = 0 B B B B B B B B B B
@
γ
m0I
k0γ
m0A
0,1γ
m0A
0,2γ
m0A
0,3γ
m0A
0,rγ
m1I
k1γ
m1A
1,2γ
m1A
1,3γ
m1A
1,rγ
m2I
k2γ
m2A
2,3γ
m2A
2,r. . . . . .
. . . . . .
γ
mr−1I
kr−1γ
mr−1A
r−1,r1 C C C C C C C C C C A ,
where 0 ≤ m 0 < m 1 < · · · < m r−1 for some integer r. The column blocks have sizes k 0 , k 1 , · · · , k r and the k i are nonnegative integers adding to n.
Proof. Before proving the lemma, we note that all nonzero elements in R ∞ can be written in the form γ i a, where a = a 0 + a 1 γ + · · · + · · · with a 0 6= 0 and i ≥ 0. This means that a is a unit in R ∞ .
Let Ω be an arbitrary set of generators of code C, a generator matrix G can be obtained by eliminating those elements which can be written as a linear combination of other elements in the set Ω. In order to obtain the standard form in this lemma, we do the following operations. First we take one nonzero element with form γ m
0a, where m 0 is the minimal nonnegative integer such that m 0 = min{i | γ i a is a coordinate in an element of Ω}. By applying column and row permutations and by dividing a row by a unit, the element in position (1, 1) of matrix G can be replaced by γ m
0. Since those nonzero elements which are in the first column of matrix G have the form γ j b with j ≥ m 0 and b a unit, these elements can be replaced by zero when they are added by the first row which multiplied by −γ j−m
0b − 1 . Then we continue this process by using elementary operations, and the standard
form of G is obtained.
Definition 1. A code C with generator matrix of the form given in Equa- tion (8) is said to be of type
(γ m
0) k
0(γ m
1) k
1· · · (γ m
r−1) k
r−1,
where k = k 0 + k 1 + · · · + k r−1 is called its rank and k r = n − k.
A code C of length n with rank k over R ∞ is called a γ-adic [n, k] code.
We call k the rank of C and denote the rank by rank(C) = k.
The following lemma and theorem are direct generalization from [3]. The proofs are simply generalizations to those for the p-adic case.
Lemma 2.4. If C is a linear code over R ∞ then C ⊥ has type 1 m for some m.
We denote the transpose of a matrix M by M T .
Theorem 2.5. Let C be a linear code of length n over R ∞ . If C has a standard generator matrix G as in equation (8), then we have
(i) the dual code C ⊥ of C has a generator matrix
(9) H =
B 0,r B 0,r−1 · · · B 0,2 B 0,1 I k
r, where B 0,j = −
j−1
P
l=1
B 0,l A T r−j,r−l − A T r−j,r for all 1 ≤ j ≤ r;
(ii) rank(C) + rank(C ⊥ ) = n.
Example 1. Let C be a code of length 5 over R ∞ with a standard generator matrix as follows:
(10) G =
γ 2 0 γ 2 (1 + γ) γ 2 (1 + γ + γ 2 ) γ 2 0 γ 2 γ 2 (1 + 2γ) γ 2 (1 + γ 2 ) γ 2 (1 + 3γ 2 ) 0 0 γ 4 γ 4 (1 + γ 2 ) γ 4 (2 + γ)
. Then the dual code C ⊥ of C has a generator matrix
(11) H = γ 3 2γ + 2γ 3 −(1 + γ 2 ) 1 0 1 + 3γ + γ 2 1 + 5γ − γ 2 −(2 + γ) 0 1
! . This gives that
rank(C) + rank(C ⊥ ) = 3 + 2 = 5.
For two positive integers i < j, we define a map as follows:
Ψ j i : R j → R i , (12)
j−1
X
l=0
a l γ l 7→
i−1
X
l=0
a l γ l . (13)
If we replace R j with R ∞ then we denote Ψ ∞ i by Ψ i . Let a, b be two arbitrary elements in R j . It is easy to get that
(14) Ψ j i (a + b) = Ψ j i (a) + Ψ j i (b), Ψ j i (ab) = Ψ j i (a)Ψ j i (b).
If a, b ∈ R ∞ . We have that
(15) Ψ i (a + b) = Ψ i (a) + Ψ i (b), Ψ i (ab) = Ψ i (a)Ψ i (b).
We note that the two maps Ψ i and Ψ j i can be extended naturally from R n ∞ to R i n and R n j to R n i respectively.
Remark 1. The construction method above gives a series of chain rings (up to the principal ideal domain R ∞ ) as follows:
R ∞ → · · · → R e → R e−1 → · · · → R 1 = F
Definition 2. Let i, j be two integers such that 1 ≤ i ≤ j < ∞. We say that an [n, k] code C 1 over R i lifts to an [n, k] code C 2 over R j , denoted by C 1 C 2 , if C 2 has a generator matrix G 2 such that Ψ j i (G 2 ) is a generator matrix of C 1 . It can be proven that C 1 = Ψ j i (C 2 ). If C is a [n, k] γ-adic code, then for any i < ∞, we call Ψ i (C) a projection of C. We denote Ψ i (C) by C i .
Lemma 2.6. Let M be a matrix over R ∞ with type 1 k . If M ′ is a standard form of M , then for any positive integer i, Ψ i (M ′ ) is a standard form of Ψ i (M ).
Proof. We note that M has type 1 k , hence Ψ i (M ) has type 1 k . We know M ′ is a standard form of M , this implies that there exist elementary matrices P 1 , · · · , P s and Q 1 , · · · , Q t such that
P 1 · · · P s M Q 1 · · · Q t = M ′ .
Hence for any positive integer i, by Equation (15), we have that Ψ i (P 1 ) · · · Ψ i (P s )Ψ i (M )Ψ i (Q 1 ) · · · Ψ i (Q t ) = Ψ i (M ′ ).
Since the inverse matrices of elementary matrices are the same type of ele- mentary matrices, we have that Ψ i (M ′ ) is a standard form of Ψ i (M ). Remark 2. In the lemma above we must assume that M has type 1 k . For example, if we take
(16) M = γ 5 γ 5 + γ 7
0 γ 15
!
,
then some of its projections are the zero matrix.
Let C be a code over R ∞ , we know that C ⊆ (C ⊥ ) ⊥ . But in general C 6= (C ⊥ ) ⊥ . For example, let C = hγ i i be a code of length 1 over R ∞ for some i. Then C ⊥ = {0} and (C ⊥ ) ⊥ = R ∞ since R ∞ is a domain. This means that C ( (C ⊥ ) ⊥ . We have the following proposition.
Proposition 2.7. Let C be a linear code over R ∞ . Then C = (C ⊥ ) ⊥ if and only if C has type 1 k for some k.
Proof. First we note that (C ⊥ ) ⊥ ⊆ C. If C is a linear code then by Lemma 2.4, the code C ⊥ is a linear code with type 1 n−k for some k. This implies that (C ⊥ ) ⊥ has type 1 n−(n−k) = 1 k . Proposition 2.8. Let C be a self-orthogonal code over R ∞ . Then the code Ψ i (C) is a self-orthogonal code over R i for all i < ∞.
Proof. We have that [v, w] = 0 for all v, w ∈ C since C is a self-orthogonal code over R ∞ . This gives that
n
X
l=1
v l w l ≡
n
X
l=1
Ψ i (v l )Ψ i (w l ) ( mod γ i ) ≡ Ψ i ([v, w]) ( mod γ i ) ≡ 0 ( mod γ i ).
Hence Ψ i (C) is a self-orthogonal code over R i . By Lemma 2.6, we know that for a γ-adic [n, k] code C of type 1 k , C i = Ψ i (C) is an [n, k] code of type 1 k over R i . In the following, we consider codes over chain rings that are projections of γ-adic codes.
Note that C i C i+1 for all i. Thus if a code C over R ∞ of type 1 k is given, then we obtain a series of lifts of codes as follows:
C 1 C 2 · · · C i · · ·
Conversely, let C be an [n, k] code over F = R e /hγi = R 1 , and let G = G 1 be its generator matrix. It is clear that we can define a series of generator matrices G i ∈ M k×n (R i ) such that Ψ i+1 i (G i+1 ) = G i , where M k×n (R i ) de- notes all the matrices with k rows and n columns over R i . This defines a series of lifts C i of C to R i for all i. Then this series of lifts determines a code C such that C i = C i , the code is not necessarily unique.
Let C be a γ-adic [n, k] code of type 1 k , and G, H be a generator and parity-check matrices of C. Let G i = Ψ i (G) and H i = Ψ i (H). Then G i and H i are generator and parity check matrices of C i respectively.
Lemma 2.9. Let i < j < ∞ be two positive integers, then
(i) γ j−i G i ≡ γ j−i G j (mod γ j );
(ii) γ j−i H i ≡ γ j−i H j (mod γ j ).
Proof. Let x l be the row vectors of G i and y l be the row vectors of G j . Since we have that G i = Ψ j i (G j ), this implies that x l ≡ y l ( mod γ i ). Thus γ j−i x l ≡ γ j−i y l ( mod γ j ).
The proof of (ii) is similar.
Lemma 2.10. Let i < j < ∞ be two positive integers. Then (i) γ j−i C i ⊆ C j ;
(ii) v = γ i v 0 ∈ C j if and only if v 0 ∈ C j−i ; (iii) Ker(Ψ j i ) = γ i C j−i .
Proof. (i) Let v be an arbitrary codeword of C i . By Lemma 2.9 (ii), we have that
H j (γ j−i v) T = γ j−i H j v T ≡ γ j−i H i v T ≡ 0 ( mod γ j ).
This implies that γ j−i C i ⊆ C j .
(ii) We know that γ i v 0 ∈ C j if and only if γ i H j v 0 T ≡ 0 ( mod γ j ). By Lemma 2.9(ii), we have that
γ i H j = γ j−(j−i) H j ≡ γ j−(j−i) H j−i ≡ γ i H j−i ( mod γ j ).
This implies that γ i v 0 ∈ C j ⇔ γ i H j−i v T 0 ≡ 0 ( mod γ j ). Hence we have that γ i v 0 ∈ C j ⇔ H j−i v T 0 ≡ 0 ( mod γ j−i ) ⇔ v 0 ∈ C j−i .
(iii) By the definition of Kernel and (ii), we know that the vector v ∈ Ker(Ψ j i ) if and only if v ∈ C j and v = γ i v 0 , where v 0 ∈ C j−i . Thus the
result follows.
Remark 3. Lemma 2.10(iii) shows that the Hamming weight enumerator of Ker(Ψ j i ) is equal to the Hamming weight enumerator of C j−i .
We now study the weights of codewords in the lifts of a code. Suppose
i < j. By Lemma 2.10(i), we know that any weight of a codeword in C i is
a weight of a codeword in C j . This implies that if v ∈ C i then there exists
a w ∈ C j such that w H (w) = w H (v), where w H (·) denotes the Hamming
weight of a vector. But in general the converse is not always true. We have
the following theorem.
Theorem 2.11. Let C be a γ-adic code. Then the following two results hold.
(i) the minimum Hamming distance d H (C i ) of C i is equal to d = d H (C 1 ) for all i < ∞;
(ii) the minimum Hamming distance d ∞ = d H (C) of C is at least d = d H (C 1 ).
Proof. (i) Let v 0 be a vector of C 1 with minimal Hamming weight d of C 1 . By Lemma 2.10(iii), we know that γ i−1 v 0 is a codeword of C i with Hamming weight d. Hence d H (C i ) ≤ d for all i. Now we use induction on the index number i and assume that d H (C j ) = d for all j ≤ i. Suppose that d H (C i+1 ) < d and there is a non-zero vector v ∈ C i+1 such that w H (v) < d.
Then w H (Ψ i+1 i (v)) ≤ w H (v) < d. Since we have that d H (C i ) = d we must have that Ψ i+1 i (v) = 0 in C i . This implies that v ∈ Ker(Ψ i+1 i ). By Lemma 2.10(iii), we get that v = γ i v 0 , where 0 6= v 0 ∈ C 1 . This means that 0 < w H (v 0 ) = w H (v) < d, which is a contradiction.
(ii) If there exists a non-zero codeword v ∈ C such that w H (v) < d, then let N be a sufficiently large integer such that Ψ N (v) 6= 0. We would have that w H (Ψ N (v)) ≤ w H (v) < d, which is a contradiction. In the remainder of this section, we focus on MDS and MDR codes. It is well known (see [7]) that for codes C of length n over any alphabet of size m
(17) d H (C) ≤ n − log m (|C|) + 1.
Codes meeting this bound are called MDS (M aximal Distance Separable) codes.
For a code C of length n over an finite Quasi-Frobenius ring R, Horimoto and Shiromoto (see [6]) define the following:
r C = min{l | there exists a monomorphism C → R l as R − modules}.
If C is linear, then we have (see [6])
(18) d H (C) ≤ n − r C + 1.
Codes meeting this bound are called MDR (M aximal Distance with respect
to Rank) codes. For codes over R ∞ we say that an MDR code is MDS if
it is of type 1 k for some k. See [4] and [5] for a discussion of this bound for
several rings.
A linear code C over R is called free if C is isomorphic as a module to R t for some t. This implies that if C is free then r C = rank(C). We have the following two theorems.
Theorem 2.12. Let C be a linear code over R ∞ . If C is an M DR or M DS code then C ⊥ is an MDS code.
Proof. Assume C is a code of length n and rank k with d H (C) = n−k +1.
Then we know that C ⊥ is type 1 n−k . Since R ∞ is a domain, we get that any n − k columns of the generator matrix of C ⊥ are linearly independent. This gives that the minimum Hamming weight of C ⊥ is n−(n−k)+1 = k +1. Theorem 2.13. Let C be a linear code over R i , and ˜ C be a lift code of C over R j , where j > i. If C is an M DS code over R i then the code ˜ C is an M DS code over R j .
Proof. Assume C is a [n, k] code with minimum Hamming distance d H . We have that d H = n − k + 1 since C is an M DS code. Let v be a codeword of C such that w H (v) = d H . Then for any nonzero codeword v ′ ∈ C, we have that w H (v ′ ) ≥ w H (v). We know that ˜ C is a [n, k] code, and that v can be viewed as a codeword of ˜ C since we can write v = (v 1 , · · · , v n ) where
v l = a l 0 + a l 1 γ + · · · + a l i−1 γ i−1 + 0γ i + · · · + 0γ j−1 .
Let w be any lifted codeword of v. Then we have that w H (w) ≥ w H (v). On the other hand, for any lift codeword w ′ of v ′ , where v ′ ∈ C, we also have that w H (w ′ ) ≥ w H (v ′ ) ≥ w H (v). This means that the minimum Hamming weight of ˜ C is d H and this implies that ˜ C is an M DS code for all j > i.
3. Self-Dual γ-adic Codes
In this section, we describe self-dual codes over R ∞ . We fix the ring R ∞ with
R ∞ → · · · → R i → · · · → R 2 → R 1
and R 1 = F q where q = p r for some prime p and nonnegative integer r. The field F q is said to be the underlying field of the rings. The following theorem can be found from [7].
Theorem 3.1. (i) If p = 2 or p ≡ 1 ( mod 4), then a self-dual code of length
n exists over F q if and only if n ≡ 0 ( mod 2);
(ii) If p ≡ 3 ( mod 4), then a self-dual code of length n exists over F q if and only if n ≡ 0 ( mod 4).
Theorem 3.2. If i is even, then self-dual codes of length n exist over R i
for all n.
Proof. Let C be the code with generator matrix G = γ
2iI n . It is clear that C is self-orthogonal over R i since γ
2iγ
2i= γ i = 0 in R i . We have that
|C| = (q
2i) n = (q i )
n2= |R i |
n2. Therefore C is self-dual. Theorem 3.3. Let i be odd and C be a code over R i with type 1 k
0(γ) k
1(γ 2 ) k
2· · · (γ i−1 ) k
i−1. Then C is a self-dual code if and only if C is self-orthogonal and k j = k i−j for all j.
Proof. We know that C ⊥ has type 1 k
i(γ) k
i−1(γ 2 ) k
i−2· · · (γ i−1 ) k
1. Hence the only if part follows. Now assume that C is a self-orthogonal code of length n and k j = k i−j for all j. Let l = ⌊ 2 i ⌋, where ⌊ ⌋ denotes the greatest integer function. Since i is odd, we have
(19) n =
i
X
j=0
k j = 2
i−1 2