<<

On Rational and Periodic Power and on Sequential and Polycyclic Error-Correcting Codes

A dissertation presented to the faculty of the College of Arts and Sciences of Ohio University

In partial fulfillment of the requirements for the degree Doctor of Philosophy

Benigno Rafael Parra Avila November 2009

© Benigno Rafael Parra Avila. All Rights Reserved. 2

This dissertation titled On Rational and Periodic and on Sequential and Polycyclic Error-Correcting Codes

by BENIGNO RAFAEL PARRA AVILA

has been approved for the Department of and the College of Arts and Sciences by

Sergio R. Lopez-Permouth´ Professor of Mathematics

Benjamin M. Ogles Dean, College of Arts and Sciences 3 Abstract

PARRA AVILA, BENIGNO RAFAEL, Ph.D., November 2009, Mathematics On Rational and Periodic Power Series and on Sequential and Polycyclic Error-Correcting Codes (74 pp.) Director of Dissertation: Sergio R. Lopez-Permouth´

Let R be a commutative ring with identity. A power series f ∈ R[[x]] with (eventually) periodic coefficients is rational. We show that the converse holds if and only if R is an integral extension over Zm for some positive integer m. Let F be a field; we prove the equivalence between two notions of rationality in

F[[x1,..., xn]], and hence in F((x1,..., xn)), and thus extend Kronecker’s criterion for rationality from F[[x]] to the multivariable setting. We introduce the notion of sequential code, a natural generalization of cyclic and even constacyclic codes, over a (not necessarily finite) field and explore fundamental properties of sequential codes as well as connections with periodicity of and with the related notion of linear recurrence sequences. A truncation of a cyclic code over F is both left and right sequential (bisequential).

We prove that the converse holds if and only if F is algebraic over Fp for some prime p. We also show that all sequential codes may be obtained by a simple and explicit construction. Using this construction, we get examples of sequential codes which reach certain optimal bonds that cannot be attained by cyclic codes. Finally, we introduce the notion of polycyclic codes which is another generalization of constacyclicity. We establish a duality between sequentiality and polycyclicity. In particular, it is shown that a code C is sequential and polycyclic if and only if C and its dual C ⊥ are both sequential if and only if C and its dual C ⊥ are both polycyclic. 4

Furthermore, these equivalent statements characterize the family of constacyclic codes. Approved: Sergio R. Lopez-Permouth´ Professor of Mathematics 5

To my wife Iglemia and our children: Madelaine and Rafael. To my parents: Nelly and Benigno. To my brother Jos´eand my sister Jacqueline. To the memory of my grandmother Cleotilde Avila. 6 Acknowledgements

I would like to express my sincere gratitude to my advisor Sergio R. Lopez-Permouth´ for his excellent guidance and patience during the realization of this work as well as for his support and encouragement since I came to Athens. I thank my wife and children, and my parents and my siblings for their support and patiently understanding along all of this project. I would like to thank my friends Rene´ and Hilcia, and Federico and his family for their support, inspiration, and encouragement in this chapter of my life, as well as my friends Add, Damiano, and Chairat for their comradery. I am also thankful to all families and friends in Athens who welcomed me and helped me care for my children while I was single-parenting in Athens. I would like to thank Dr Martin Mohlenkamp for his support, help and friendship. I also thank Dr Xiang-Dong Hou, from Florida State University, for the opportunity to collaborate with him, and my friend and classmate Steve Szabo, who has been a great source of interesting discussions and interactions. I thank my fellow graduate students Jeremy Moore and Ryan Schwiebert for many enlightening conversations and discussions. I thank my first Algebra teacher Rafael Fernandez,´ (R.I.P.), for introducing me to what has become my area of expertise. I would like to thank the Department of Mathematics, and the Center of Ring Theory and Applications for their support. Last but not least, I would like to thank the Universidad Nacional Abierta (UNA), the Oficina de Planificacion´ del Sector Universitario and Fundacion´ Gran Mariscal de Ayacucho for their support. From UNA (my university) in Venezuela, I especially thank Maruja Romero Yepez,´ Jose´ Ramon´ Ortiz, Zobeida Ramos, Mario Marino,˜ and Manuel Castro Pereira for their support, motivation, and friendship. 7 Table of Contents

Abstract ...... 3

Dedication ...... 5

Acknowledgements ...... 6

List of Tables ...... 8

List of Figures ...... 9

1 Preface ...... 10

2 Definitions and Preliminaries ...... 14 2.1 Sequences ...... 14 2.2 Power Series Ring ...... 20 2.3 Codes ...... 22

3 Rationality of Power Series ...... 29 3.1 Introduction ...... 29 3.2 Rationality in R[[x]] and Periodicity of Coefficients ...... 29 3.3 Two Definitions of Rationality in F[[x1,..., xn]] ...... 32 3.4 Generalization of Kronecker’s Criterion to F[[x1,..., xn]] ...... 40

4 Sequential Codes ...... 49 4.1 Introduction ...... 49 4.2 Sequential Codes ...... 49 4.3 Constructing Sequential Codes ...... 53

5 Polycyclic Codes ...... 60 5.1 Introduction ...... 60 5.2 Polycyclic Codes ...... 62 5.3 Sequential Codes ...... 66

References ...... 72 8 List of Tables

4.1 (22, 5, 12) sequential codes over F3 ...... 59 9 List of Figures

3.1 Relations among various rings ...... 33 10 1 Preface

We focus on two main areas of mathematics: the theories of and of error-correcting codes. These two topics have become intertwined in my thesis through a series of problems which preserve their own intrinsic interest but, at the same time, feed from one another creating a natural symbiosis. In the second chapter, background and terminology about sequences, series and codes, are introduced. The third chapter of the dissertation deals with characterizations of fields of Rational Functions as subrings of rings of . As an example, the following is one of the main results from that chapter. The result generalizes a classic theorem, in fact, the equivalence between (i) and (ii) is known in the literature as Kronecker’s theorem, see for instance

X i Theorem 1.0.1 Let f = ai x ∈ F[[x]] be a power series over a field F, and i≥0    a a a ...   0 1 2     a a a ...   1 2 3  A =   . (1.1)  a a a ...   2 3 4   . . .   . . . 

The following statements are equivalent.

(i)f ∈ F(x).

(ii) rank A < ∞.

(iii) There exist m, r ≥ 0 such that      am am+1 ···       am+1 am+2 ···  rank   ≤ r .  . .   . .       am+l am+r+1 ···  11

The significance of condition (iii) is that one can characterize multivariable rational functions in a fashion similar to Kronecker’s theorem. However, the analogs of condition (ii) and (iii) are no longer equivalent in the multivariable setting and it is the one for (iii) that characterizes rationality. Our criterion is given next as Theorem 1.0.2 and in order to

n state it we must introduce some notation: For i = (i1,..., in) and j = ( j1,..., jn) ∈ N ,

n i i1 in i ≤ j means that it ≤ jt for all 1 ≤ t ≤ n. For i = (i1,..., in) ∈ N , define x = x1 ··· xn . If h ∈ F x ,..., x h h,..., h n [ 1 n], define deg = (degx1 degxn ). To each -dimensional infinite X i { } n ∈ array ai i∈N over a field F, we associate a power series f = ai x F[[x1,..., xn]] and n i∈N a A : Nn × Nn −→ F (1.2) (i, j) 7−→ ai+ j. For a fixed i ∈ Nn, define n Ai : N −→ F (1.3) j 7−→ ai+ j.

(Note that when n = 1, A is the infinite circulant matrix in (1.1) and Ai is the row of A

n n with label i.) For convenience, we define ai = 0 for i ∈ Z \ N . Therefore, in (1.3), we may allow i to be in Zn.

Theorem 1.0.2 In the above notation, f ∈ F(x1,..., xn) if and only if there exist

n k = (k1,..., kn), m = (m1,..., mn) ∈ N such that

dimF (A j−k+m(1) ,..., A j−k+m(n) ): j ≤ l < (k1 + 1) ··· (kn + 1), (1.4)

where m(i) = (0,..., 0, m + 1, 0,..., 0) and h i is the linear span. | {z i } i

While focusing on the single variable case, we discovered a kind of error-correcting

block code whose description is intimately related to periodic sequences. We referred to those codes as (right) sequential codes. The notion of right sequential codes is a generalization of the concept of cyclic and even of that of constacyclic codes. 12

Interestingly, these sequential codes played an important role in the characterization of rational functions mentioned above. Furthermore, we discovered that certain families of fields can be characterized precisely by the structure of their sequential codes. To be precise, a field is such that its (two-sided) sequential codes are exactly the truncations of cyclic codes if and only if the field is a (not necessarily finite) algebraic extension of a

prime field Zp. In particular bisequential codes over finite fields are always truncations of cyclic codes.

In this dissertation, we establish the foundation to study sequential codes. In particular, we analyze and explore all of their basic properties and their relationships to other families of codes. We also devote one section to specific method to construct such codes.

In the last chapter, we consider the dual codes of sequential codes. It turns out that these codes of sequential codes may be characterized by the fact that they exhibit an intrinsic property of their own which is yet another generalization of cyclicity. Namely, the dual codes of right sequential codes are precisely those codes that may be embedded as ideals in factor rings of rings of polynomials in a single variable. We introduce the expression right polycyclic code to refer to them. One of our results is a characterization of the well-known family of constacyclic codes; consider the following Theorem:

Theorem 1.0.3 For a code C ⊆ Fn, F a finite field, the following are equivalent:

1-R. C and C ⊥ are right sequential.

2-R. C and C ⊥ are right polycyclic.

3-R. C is right sequential and right polycyclic.

4-R. C is right sequential and bi-polycyclic. 13

5-R. C is right sequential and left polycyclic with a non-monomial generator polynomial.

(A) C is right polycyclic and bisequential.

(B) C is left polycyclic and bisequential.

(C) C is constacyclic.

Notice that in the above enumeration of equivalent statements R stands for right. Clearly, since condition (C) is right-left symmetric, the obvious analogous statements 1-L through 5-L may also be added to the test. However, we omitted them from the list to avoid unnecessary cacophony. 14 2 Definitions and Preliminaries

Most of the results and definitions in this chapter are well known. To help the reading, in various cases, we provide a proof very similar to the one from the indicated literature. Sometimes, however, we have modified some terminology or notations to better suit our study. Sources for the degree analysis for the material presented here include, for instance, [15] regarding linear recurring sequences, [4, 5] for power and Laurent series, [2, 11] for error-correcting codes, and [21] regarding linear algebra.

We will denote the set of natural numbers {0, 1, 2,... } by N, and the set of positive integer numbers, will be written by Z+. In this dissertation, the word ring means

commutative ring with identity. A finite field will be denoted by Fq (where q, the cardinality of the field, is a power of a prime number), or by F or just F when q is

+ irrelevant. A s0, s1,..., in F will be written by (si)i∈N, or by (si)i∈Z if the indexes start from 1.

2.1 Sequences

∈ ∈ + Definition 1 Let a, a0,..., ak−1 F, and k Z . A sequence (si)i∈N in F satisfying the relation

sn+k = ak−1 sn+k−1 + ak−2 sn+k−2 + ··· + a0 sn + a, (2.1)

for all n = 0, 1,..., is called a (k th-order) linear recurring sequence in F. The elements

s0, s1 ..., sk−1 are called the initial values. A relation like 2.1 is called a (k th-order) linear recurrence relation. When a = 0, 2.1 describes a homogeneous linear recurring relation, it is called non-homogeneous if a is nonzero. Likewise, a linear recurring sequence is called homogeneous or non-homogeneous depending on whether its defining relation is

homogeneous or non-homogeneous. The k-tuple sn = (sn, sn+1,..., sn+k−1) is called the

n-th state vector of the sequence, and in particular s0 is called the initial state vector of the sequence. 15

∈ ≥ Definition 2 If (si)i∈N, with si F, and there are r > 0 and n0 0 such that sn+r = sn for all n ≥ n0, then the sequence is called eventually periodic, and r is called a period of the sequence. The smallest period is called the least period of the sequence. Also the smallest possible n0 such that sn+r = sn for all n ≥ n0 is called the preperiod of the sequence. Note that some authors, [15], use ultimately periodic instead of eventually periodic.

Lemma 2.1.1 The least period r divides every period of an eventually periodic sequence.

Proof. Let t be a period of an eventually periodic sequence (si)i∈N. Then t = ur + v, for some u, v ∈ Z, where 0 ≤ v < r, and u ≥ 1. There are also n0, and n1 such that sn+r = sn for 0 all n ≥ n0, and sn+t = sn for all n ≥ n1. Now let n be the greatest between n0, and n1. So,

0 for n ≥ n , sn = sn+t = sn+ur+v = sn+v+(u−1)r = ··· = sn+v+r = sn+v, since r is a period.

Because r is the least period, v = 0, and hence r divides t. 

Definition 3 An eventually periodic sequence, where the the preperiod equals zero is said to be periodic.

Theorem 2.1.2 A k th-order linear recurring sequence (si)i∈N in Fq is eventually periodic with period r satisfying r ≤ qk. If the sequence is homogeneous, r ≤ qk − 1.

k Proof. Since there are precisely q different k -tuples taken from Fq, the state vectors eventually repeat. Thus, the sequence is eventually periodic, and so, si = s j, for some i, j

k with 0 ≤ i < j ≤ q . It follows that si = s j = si+( j−i), and hence sn = sn+( j−i) for all n ≥ i. − − ≤ k Thus, j i > 0 is a period, and j i q . Now assume that (si)i∈N is homogeneous. If no state vector is the zero vector, we repeat previous argument and we get r ≤ qk − 1, since the zero vector does not count. On the other hand, if one of the state vectors is zero, then

k from there on all the state vectors are zero and hence r = 1 ≤ q − 1. 

Theorem 2.1.3 If (si)i∈N is a linear recurring sequence in Fq satisfying the k th-order linear recurring relation 2.1, and also a0 , 0, then (si)i∈N is periodic. 16

Proof. We know from of Theorem 2.1.2 that this sequence is eventually periodic, and so we may consider its least period r, and let n0 be its preperiod. Then sn+r = sn, for all n ≥ n0. Suppose n0 ≥ 1. Let n = n0 + r − 1. From the relation 2.1, with n = n0 + r − 1, and −1 − − · · · − − that a0 , 0, we get sn0+r−1 = a0 (sn0+k−1+r ak−1 sn0+k−2+r a1 sn0+k+r a). Also −1 − − · · · − − sn0+r−1 = a0 (sn0+k−1 ak−1 sn0+k−2 a1 sn0+k a), since r is a period. If we use the − −1 relation 2.1 with n = n0 1, we get sn0+r−1 = a0 (a0 sn0−1) = sn0−1. This contradicts the

definition of n0. Therefore n0 = 0, and the sequence is periodic.  This theorem has the following stronger converse.

Theorem 2.1.4 If (si)i∈N is an eventually periodic sequence, then (si)i∈N is a linear recurring sequence.

Proof. Let r be the least period of (si)i∈N, and m the preperiod of (si)i∈N. Consider the

(r + 1)-tuples sn = (sn, sn+1,..., sn+r). Thus, for the r state vectors sn, sn+1,..., sn+r−1,

r+1 where n ≥ m, there is a nonzero vector (a0, a1,..., ar) ∈ F such that

a0 sn + a1 sn+1 + ··· + ar sn+r = 0 for m ≤ n ≤ m + r − 1. Now by periodicity we get

a0 sn + a1 sn+1 + ··· + ar sn+r = 0 for all n ≥ m, i.e., a0 sn+m + a1 sn+m+1 + ··· + ar sn+m+r = 0 for all n ≥ 0. So, the sequence satisfies the relation

bn sn + bn+1 sn+1 + ··· + bn+m−1 sn+m−1 + a0 sn+m + a1 sn+m+1 + ··· + ar sn+m+r = 0, for all n ≥ 0,

where bi = 0 for all i. Therefore (si)i∈N satisfies a homogeneous linear recurrence relation of order at most m + r.  Note that in this proof we did not use the cardinality of the field at all.

Assume (si)i∈N is a k th-order non-homogeneous linear recurring sequence satisfying the relation 2.1. If we place n + 1 instead of n in 2.1, and subtract 2.1 from it we get

sn+k+1 = bk sn+k + bk−1 sn+k−1 + ··· + b0 sn, (2.2)

where b0 = −a0, b j = a j−1 − a j for j = 1, 2,..., k − 1, and bk = ak−1 + 1, and for n ∈ N. So,

the sequence (si)i∈N may be regarded as a (k + 1)st-order homogeneous linear recurring 17 sequence. Therefore results from homogeneous sequences yield information for the non-homogeneous case.

− Definition 4 Let (si)i∈N be a kth order homogeneous linear recurring sequence in F, satisfying the relation

sn+k = ak−1 sn+k−1 + ak−2 sn+k−2 + ··· + a0 sn, (2.3)

for all n ∈ N. Then with this sequence we associate the k × k matrix A defined by    0 0 0 ... 0 a   0     1 0 0 ... 0 a   1    =   . (2.4) A  0 1 0 ... 0 a2     . . . .   . . . .       0 0 0 ... 1 ak−1 

k+1 Note that the determinant of A is (−1) a0. Thus, if a0 , 0, then A is a nonsingular matrix.

Definition 5 Let (si)i∈N be a sequence as in previous definition, i.e. satisfying the k k−1 k−2 relation2.3. Then the polynomial f (x) = x − ak−1 x − ak−2 x − · · · − a0 ∈ F[x] is called the characteristic polynomial of (si)i∈N.

It is easy to see that f (x) = det(xI − A ), where I is the k × k identity matrix, and A is the same matrix as from Definition 4. So, f (x) is the characteristic polynomial of A . Also, A is called the companion matrix of f (x).

Theorem 2.1.5 Let (si)i∈N be a homogeneous linear recurring sequence satisfying the relation 2.3, and A be the matrix in 2.4 associated with the sequence. Then the state vectors hold

n sn = s0A , (2.5) for all n ∈ N. 18

Proof. Because sn = (sn, sn+1,..., sn+k−1), we see that sn+1 = snA , for all n ∈ N; and hence

conclusion follows by induction. 

In what follows h f i means the ideal generated in Fq[x] by the polynomial f (x).

Theorem 2.1.6 Let g(x) ∈ Fq[x] be a polynomial of degree m ≥ 1, with g(0) , 0. Then g(x) divides xe − 1, for some positive integer e ≤ qm − 1.

Fq[x] m m Proof. Firstly, we know that hgi has q − 1 non-zero elements. Now the q elements xi + (g), with i = 0, 1,..., qm − 1, are all non-zero, since g(0) , 0. So there must be a repetition, i.e. there are r, and s, with 0 ≤ r < s ≤ qm − 1, such that xs = xr, mod g(x). Because x and g(x) are relatively prime, xs−r = 1, mod g(x). Therefore, g(x) divides

s−r m x − 1, and 0 < s − r ≤ q − 1. 

Definition 6 Let h(x) ∈ Fq[x] be a polynomial of degree m ≥ 1. If h(x) is not a power of x,

k there is g(x) ∈ Fq[x] with g(0) , 0 such that h(x) = x g(x) where k ∈ N. Then the least positive integer e for which g(x) divides xe − 1 is called the order of h(x) and denoted by ord(h). When h(0) , 0, it is clear that ord(h) = ord(g), since h(x) = g(x).

The order of the polynomial h is also called the period of h or the exponent of h.

We have seen that the matrix A in 2.4 is nonsingular, whenever a0 , 0. Thus, A belongs to the general linear GL(k, F), the group of all the nonsingular k × k matrices over F. The following result relates the orders of the characteristic polynomial and of A , when a0 , 0.

k k−1 k−2 Theorem 2.1.7 Let f (x) = x − ak−1 x − ak−2 x − · · · − a0 ∈ F[x], with k ≥ 1, and a0 , 0. Then ord( f ) is equal to the order of the matrix A from 2.4 in GL(k, F).

Proof. Clearly the minimal polynomial of A is f (x), because A is precisely the companion matrix of f (x). So, A e = I for some e ∈ Z+, where I is the k × k identity 19 matrix, if and only if f (x) divides xe − 1. Thus, conclusion follows from the definitions of the respective orders.  The Theorems 2.1.3, and 2.1.4 characterize the linear recurrence sequences in terms of periodicity. Another criterion is described by means of the Hankel determinants.

≥ Definition 7 Let (si)i∈N be an arbitrary sequence in F, and consider the integers n 0 and r ≥ 1. Then the determinant

sn sn+1 ... sn+r−1

sn+1 sn+2 ... sn+r D(r) = , (2.6) n ......

sn+r−1 sn+r ... sn+2r−2

is called a Hankel determinant of (si)i∈N.

Before establishing the criterion we need the following lemma.

≥ Lemma 2.1.8 Let (si)i∈N be an arbitrary sequence in F, and consider the integers n 0 (r) (r+1) (r) and r ≥ 1. Then Dn = Dn = 0 implies Dn+1 = 0.

Proof. For m ≥ 0 consider the state vector sm = (sm, sm+1,..., sm+r−1). Thus, the vectors

(r) sn, sn+1,..., sn+r−1 are linearly dependent over F, since Dn = 0. On the one hand, if (r) sn+1, sn+2,..., sn+r−1 are linearly dependent over F, then we get Dn+1 = 0 and we are done.

On the contrary, sn is a linear combination of sn+1, sn+2,..., sn+r−1. Now define the

0 0 0 0 r + 1-tuples s m = (sm, sm+1,..., sm+r), for m ≥ 0. So, s n, s n+1,..., s n+r are linearly

(r+1) 0 0 0 dependent, because of Dn = 0. If s n, s n+1,..., s n+r−1 are already linearly dependent, then when applying the linear transformation

r+1 r L1 :(a0, a1,..., ar) ∈ F 7−→ (a1,..., ar) ∈ F we get that sn+1, sn+1,..., sn+r are linearly (r+1) 0 dependent, and hence Dn = 0. Otherwise, s n+r is a linear combination of

0 0 0 s n, s n+1,..., s n+r−1 and by applying the linear transformation 20

r+1 r L2 :(a0, a1,..., ar) ∈ F 7−→ (a0,..., ar−1) ∈ F we get that sn+r is a linear combination of sn, sn+1,..., sn+r−1. But also sn is a linear combination of sn+1, sn+2,..., sn+r−1. Thus,

(r+1) sn+1,..., sn+r−1sn+r are linearly dependent over F. Therefore Dn = 0. 

Theorem 2.1.9 The sequence (si)i∈N in F is a linear recurrence sequence if and only if (r) there exists a positive integer r such that Dn = 0, for all but finitely many n ≥ 0.

Proof. Assume (si)i∈N satisfies a k th-order homogeneous linear recurrence relation. For a (k+1) fixed n ≥ 0, consider the determinant Dn . By the linear recurrence relation, the (k + 1)st

(k+1) (k+1) row of Dn is a linear combination of the first k rows, and hence Dn = 0. If the sequence is non-homogeneous then, by 2.2, it reduces to the homogeneous case.

(k+1) For the converse, suppose k + 1 is the least positive integer such that Dn = 0, for all but finitely many n ≥ 0. If k + 1 = 1, there is nothing to show. Suppose k ≥ 1. Then there

(k+1) (k) exists m ≥ 0 such that Dn = 0, for all n ≥ m. If we had Dn0 = 0 for some n0 ≥ m, then (k) Dn = 0 for all n≥n0, by previous Lemma; and that contradicts the definition of k + 1.

(k) Thus, Dn0 , 0 for all n ≥ m. If we let sn = (sn, sn+1,..., sn+r), we see that for n ≥ m, the (k) vectors sn, sn+1,..., sn+k−1 are already linearly dependent because Dn = 0. However,

(k) Dn0 , 0 implies that sn, sn+1,..., sn+k−1 are already linearly independent, and so sn+k is a linear combination of sn, sn+1,..., sn+k−1. Hence, by induction, every sn with n ≥ m is a

k+1 linear combination of sn, sn+1,..., sn+k−1. The latter are k vectors in F , and so we may repeat same reasoning as in the proof of Theorem 2.1.4. Therefore (si)i∈N is a homogeneous linear recurrence sequence. 

2.2 Power Series Ring

In what follows R is a commutative ring with identity.

X i Definition 8 The formal series f = ai x with ai ∈ R and i ∈ N, is called a power series i ≥ 0 over R, and as usual the ai, i ≥ 0 are called its coefficients. 21

Notice that without a topology, we are not expecting the summation in a power series to assume values in R. We consider polynomials as power series where only finitely many of its coefficients are nonzero. Addition and product of power series are defined as an extension of the corresponding operations for polynomials. So, for two given power series

X i X i f = ai x , and g = bi x we define two new series f + g and f · g by i ≥ 0 i ≥ 0 i X i X i X f + g = (ai + bi)x , and f · g = ci x , where ci = a jbi− j. Note that ci is well i ≥ 0 i ≥ 0 j = 0 defined, since the defining sum is finite.

With these operations the set of all formal power series becomes a commutative ring denoted by R[[x]]. Clearly R[x] is a subring of R[[x]]. When R is a field the only invertible elements in R[x] are exactly the nonzero constants. That is not the case in R[[x]] where, for instance, (1 − x)(1 + x + x2 + ... ) = 1, i.e. 1 − x and 1 + x + x2 + ... are units in R[[x]]. In fact a characterization of the units in R[[x]] is one of the well known properties of R[[x]] which are the subject of the following theorem.

X i Theorem 2.2.1 Let R be a ring, and f = ai x ∈ R[[x]]. Then the following hold: i ≥ 0

(i) f is invertible in R[[x]] if and only if a0 is invertible in R.

(ii) If R is simple, the ideal M generated by x in R[[x]] is maximal, and R[[x]] is a local ring.

(iii) If f is nilpotent, then ai is nilpotent for all i ≥ 0.

(iv) f belongs to the Jacobson radical of R[[x]] if and only if a0 is in the Jacobson radical of R.

(v) If a0 is not a zero divisor in R, then f is not a zero divisor in R[[x]].

By (ii) we get that F[[x]] is a principal ideal ring (PIR), and also a chain ring. Also, 22

(v) implies that D[[x]] is an integral domain when D is an integral domain.

X i Let us now consider series with some negative powers of x. A series f = ai x with i ≥ n n ∈ Z fixed, and ai ∈ R, is called a Laurent series. Clearly, a power series is a Laurent series with no negative powers of x. As in R[[x]] we define the addition of Laurent series in terms of like-terms, and the product as the convolution product. In fact, for Laurent

X i X i X i series f = ai x , and g = bi x their product is the series f · g = ci x , where i ≥ n i ≥ m i ≥ 0 X ci = a jbk. Note that again ci is well defined, because there are just finitely many j and j+k = i k such that j + k = i. Thus, the set R((x)) of all Laurent series is a ring called the Laurent series ring, and R[[x]] is clearly a subring of R((x)).

In what follows F will be a field.

Theorem 2.2.2 F((x)) is a field.

X i Proof. Let write a Laurent series 0 , f in the form ai x ∈ F((x)) with an , 0. Then X i ≥ n n i−n n f = x g, where g = ai x ∈ F[[x]]. Clearly x is invertible in F((x)), and also by i ≥ n 2.2.1(i) g ∈ F[[x]] is invertible in F[[x]]. So, f is a unit in F((x)), and hence F((x)) is a

field, since it is already an integral domain from 2.2.1(v).  In F[[x]], for example, the element x is not invertible, and hence F[[x]] is not a field. However F[[x]] is indeed an integral domain, and so it has a field of fractions which we point out in the following.

Theorem 2.2.3 F((x)) is the field of fractions of F[[x]].

1 Proof. F[[x]][ x ] is obviously contained in the field of fractions of F[[x]]. Since it is not 1 hard to see that F((x)) = F[[x]][ x ], the result follows. 

2.3 Codes

Codes over a finite set A, the alphabet, are subsets of An where A is usually a field, a ring, or even a module. Since the latter alphabets have algebraic structures, one may focus 23 on codes enjoying algebraic properties as well; for instance, subspaces of An. Particularly when A is a field its subspaces are called linear codes. We mostly consider codes over finite fields, and so we have the following.

Definition 9 Let F be a finite field. A (linear) code C of length n is a subspace of Fn. If C is of dimension k, it is called an (n, k)-code.

The elements of C are usually called words or codewords, and they will be written as we ordinarily do with words, rather than with vector notation. For instance, we write the word a0a1 ... an−1 instead of (a0, a1,..., an−1).

n Definition 10 Let a = a0a1 ... an−1, and b = b0b1 ... bn−1 be vectors in F . The Hamming distance, d(a, b), between a and b is the number of entries where they differ, i.e., d(a, b) = |{i | ai , bi}|.

It is not hard to see that d satisfies the axioms of a metric:

(i) d(a, b) ≥ 0, for all a, b ∈ Fn; and d(a, b) = 0 if and only if a = b.

(ii) d(a, b) = d(b, a), for all a, b ∈ Fn.

(iii) d(a, b) ≤ d(a, c) + d(c, b), for all a, b, c ∈ Fn.

Also, d enjoys the following invariances:

(iv) d(a, b) = d(a + c, b + c), for all a, b, c ∈ Fn.

(v) d(a, b) = d(λa, λb), for all a, b ∈ Fn, and for all 0 , λ ∈ F.

Definition 11 The number min |{d(a, b) | a , b, a, b ∈ C }| is called the minimum distance of the code C , and it is denoted by d(C ) or just d. 24

An (n, k) code of minimum distance d is usually called an (n, k, d) code.

Likewise, if a = a0a1 ... an−1, then |{i| ai , 0}| is called the weight of a, and denoted w(a). For linear codes, it follows that d(a, b) = w(a − b). Hence, if C is linear,

d(C ) = min |{w(a)| a , 0, a ∈ C }|.

Let Ai be the number of codewords of weight i in an (n, k) code C . The list of all

Ai, i = 0, 1, ..., n is called the weight distribution or weight spectrum of C . Clearly, if C is

k an (n, k, d) code over F then A0 + Ad + ··· + An = q = |C |.

d n Definition 12 If C is an (n, k, d)-code, then L(x) = A0 + Ad x + ··· + An x is called the weight enumerator of C .

Definition 13 A generator matrix of an (n, k)-code C is a k × n matrix whose rows form a

basis of C over F.

Also, there exists an (n − k) × n matrix H called a parity check matrix for the code such that, H xT = 0 if and only if x ∈ C , where xH denotes the matrix transpose of the

row vector x ∈ Fn. Moreover, the rows of H are linearly independent, and they generate an (n, n − k) code called the dual code of C and denoted by C ⊥. The usual dot product n−1 ⊥ X may also be used to describe C as well. If x · y = xiyi denotes the dot product of i = 0 n ⊥ n x = x0 x1 ... xn−1, y = y0y1 ... yn−1 ∈ F , then C = {x ∈ F |x · a = 0, for all a ∈ C }. Furthermore, from linear algebra we have that dim C + dim C ⊥ = n, if C is linear.

Definition 14 An (n, k)-code C is called self dual if C = C ⊥.

Clearly, in an (n, k)-self dual code C we have that n = 2k.

Definition 15 Let C be a linear code of length n. If C is invariant under a (right-) cyclic shift, i.e. a0a1 ... an−1 ∈ C implies that an−1a0a1 ... an−2 ∈ C , then we say that C is cyclic. 25

We quickly see that a cyclic code is also invariant under left cyclic shift, which is

exactly (n − 1)-right cyclic shifts. So, a0a1 ... an−1 ∈ C implies that a1 ... an−1a0 ∈ C , is an

equivalent definition of cyclicity. Now, to a given word a = a0a1 ... an−1 ∈ C , we assign

n−1 the polynomial of degree at most n − 1, a(x) = a0 + a1 x + ··· + an−1 x ∈ F[x]. Also, we might consider C as consisting of code polynomials, i.e. by assuming that a(x) ∈ C whenever a ∈ C . So, checking cyclicity in C means that if

n−1 2 n−1 a(x) = a0 + a1 x + ··· + an−1 x ∈ C then b(x) = an−1 + a0 x + a1 x + ··· + an−2 x ∈ C .A

n closer view at this shift reveals that b(x) = xa(x) − an−1(x − 1). It follows that b(x) = xa(x), mod xn − 1. Therefore, we may interpret cyclicity in the following way: a(x) ∈ C , mod xn − 1 if and only if xa(x) ∈ C , mod xn − 1. Furthermore, linearity of C

F[x] F[x] implies that C is an ideal of the ring hxn−1i . Since hxn−1i is a ring of principal ideals, we get the following well known characterization.

Theorem 2.3.1 Let C , 0 be a cyclic code of length n, and denote the degree of the

polynomial f(x) by deg f. Then C = { f (x)g(x) | f (x) ∈ F[x], deg f ≤ n − r}, where g(x) is the monic polynomial of minimal degree in C , and deg g = r. Also, g(x) divides xn − 1 in

F[x].

The polynomial g(x) is called the generator polynomial for the code C . Also the

polynomial h(x) ∈ F[x] with g(x)h(x) = xn − 1 is called the check polynomial of C . r X i Theorem 2.3.2 If g(x) = gi x is the generator polynomial for the cyclic code C of i = 0 length n, then the matrix      g0 g1 ... gn−k 0 0 ... 0       0 g0 ... gn−k−1 gn−k 0 ... 0  G =   , (2.7)  . ..   . .       0 ... 0 g0 g1 g2 ... gn−k  is a generator matrix for C , where k = n − r is the dimension of C . 26

We have seen that cyclicity might indistinctly be defined by either invariance: under right cyclic shifts or by invariance under left cyclic shifts. However, in some generalizations of that concept this equivalence is no longer true. That is the case for constacyclicity, the first generalization we consider here.

Definition 16 Let C be a linear code of length n over F, and λ ∈ F be a nonzero constant.

We say that C is a right λ-constacyclic code if a0a1 ... an−1 ∈ C implies that

(λan−1)a0a1 ... an−2 ∈ C , i.e., if C is invariant under a right λ-constacyclic shift. Similarly,

C is said to be left λ-constacyclic if a0a1 ... an−1 ∈ C implies that a1 ... an−1(λa0) ∈ C , i.e., if C is invariant under a left λ-constacyclic shift.

Immediately we get that a right λ-constacyclic code is left λ−1-constacyclic, and the following non symmetric result.

Theorem 2.3.3 The dual of a right λ-constacyclic code C is right λ−1-constacyclic.

Proof. On the one hand, make (n − 1) right λ-constacyclic shifts to a0 ... an−1 ∈ C . So,

−1 (λa1) ... (λan−1)a0 ∈ C , and hence a1 ... an−1(λ a0) ∈ C . On the other hand, if

⊥ −1 b0 ... bn−1 ∈ C , then a1b0 + ··· + an−1bn−2 + (λ a0)bn−1 = 0. By rearranging this relation,

−1 we obtain a0(λ bn−1) + a1b0 + ··· + an−1bn−2 = 0, which means that

−1 ⊥ ⊥ −1 (λ bn−1)b0 ... bn−2 ∈ C . Therefore C is right λ -constacyclic.  We easily see that a cyclic code is left (and right) 1-constacyclic, and hence constacyclicity is a generalization of cyclicity. Also as a consequence of last theorem, the dual of a cyclic code is cyclic as well. Another case of constacyclicity happens when λ = −1, and such a code is called negacyclic. Obviously when the field is of characteristic 2, cyclicity, constacyclicity and negacyclicity are one and the same concept. Moreover, if a code is both-sides constacyclic then λ = λ−1, i.e. (λ − 1)(λ + 1) = 0. Therefore, a both-sided constacyclic code is either cyclic or negacyclic. Same conclusion happens when a constacyclic code is self dual. 27

Similarly as we did with cyclicity, we may consider constacyclic codes consisting of code polynomials, if we associate to the word a0a1 ... an−1 ∈ C the polynomial

n−1 n−1 a(x) = a0 + a1 x + ··· + an−1 x ∈ F[x]. So, a(x) = a0 + a1 x + ··· + an−1 x is in the λ-constacyclic code C if and only if xa(x) ∈ C , mod xn − λ. Again, linearity of C implies

F[x] that C is an ideal of the ring hxn−λi , which we know is a ring of principal ideals. Therefore the following results hold.

Theorem 2.3.4 Let C , 0 be a λ-constacyclic code. If C is of length n then

C = { f (x)g(x) | f (x) ∈ F[x], deg f ≤ n − r}, where g(x) is the monic polynomial of minimal degree in C , and deg g = r. Also, g(x) divides xn − λ in F[x].

Again, the polynomial g(x) is called the generator polynomial for the code C .

Likewise, the polynomial h(x) ∈ F[x] with g(x)h(x) = xn − λ is called the check polynomial of C .

r X i Theorem 2.3.5 If g(x) = gi x is the generator polynomial for the λ-constacyclic code i = 0 C of length n, then the matrix      g0 g1 ... gn−k 0 0 ... 0       0 g0 ... gn−k−1 gn−k 0 ... 0  G =   , (2.8)  . ..   . .       0 ... 0 g0 g1 g2 ... gn−k  is a generator matrix for C , where k = n − r is the dimension of C .

We finish this section defining a family of codes related to a power series, which we have called window codes.

X i Definition 17 Let f = ai x be a power series with coefficient in a field F. Then for

r+1 m, r ∈ N the subspace of F generated (over F) by {(am+i, am+1+i,..., am+r+i) |i ∈ N}, is 28 called the window code of f of length r + 1 and rooted at the m-th place and will be denoted by Wm, r+1( f ) or just by Wm, r+1 when the pertinent f is obvious. 29 3 Rationality of Power Series

3.1 Introduction

Most of the results in this chapter have been published in our paper [9]. Here we establish connections between rationality of a power series and the periodicity of its coefficients. In a commutative ring R, a power series f ∈ R[[x]] with eventually periodic coefficients is rational. We prove that the converse is true if and only if R is an integral extension over Zm (the ring of integers modulo m), for some positive integer m. If F is a field, we show that two natural ways but seemingly different to define rationality in

F[[x1,..., xn]] are equivalent. A Kronecker’s criterion for rationality in F[[x]] is also extended to hold in F[[x1,..., xn]].

3.2 Rationality in R[[x]] and Periodicity of Coefficients

The multiplicative group of a ring R will be denoted by R∗, recall that this group is precisely the set of all units of R. Also, we write the characteristic of R by char R. As

h usual f is a rational function if and only if f = g , for some h, g ∈ R[x] where g , 0. Now h if f ∈ R[[x]] is rational then f = g , for some h, g ∈ R[x] ∩ R[[x]] where g , 0. So, g is invertible in R[[x]] and by Theorem 2.2.1 (ii), g(0) ∈ R∗. Thus, a reasonable definition of a rational power series is

f ∈ R[[x]] is rational if and only if

h f = , for some h ∈ R[x], g ∈ R[[x]]∗ ∩ R[x] where g(0) = 1. (3.1) g

X i Now if f = ai x and i≥0

if (ai)i ∈N is eventually periodic, then f is rational. (3.2) 30

Indeed, there are k, m > 0 such that ai+k = ai for all i ≥ m, and so

X m m+k−1 jk X jk f = p(x) + (am x + ··· + am+k−1 x )x = p(x) + q(x) x j≥0 j≥0 1 = p(x) + q(x) , 1 − xk X i m m+k−1 where p(x) = ai x , and q(x) = am x + ··· + am+k−1 x . 0≤i

Definition 18 A commutative ring R with identity is called periodic if the converse of (3.1) holds.

Theorem 3.2.1 R is periodic if and only if every g ∈ R[x] with g(0) = 1 is a divisor of xn − 1 for some n > 0.

1 Proof. Assume R is periodic. Let g ∈ R[x] with g(0) = 1. Then g ∈ R[[x]] is rational, 1 since g is invertible in R[[x]]. So, there are polynomials p(x), and q(x), and k > 0 such X 1 1 k − i that g = p(x) + q(x) 1−xk . Hence, g divides x 1 in R[x]. Conversely, if f = ai x is a i≥0 h ∗ rational power series then f = g , for some h ∈ R[x], and g ∈ R[[x]] ∩ R[x] where n g(0) = 1. By hypothesis x − 1 = gg1, for some g1 ∈ R[x], and for some n > 0. Thus,by

h1 n − setting h1 = hg1, we get that f = xn−1 . Now a comparison between (x 1) f and h1 reveals

that (ai) is eventually periodic.  Now we recall some terminology. Consider a ring extension (or overring) S of R. An element a ∈ S is called integral over R if there is a monic polynomial p(x) ∈ R[x] such that p(a) = 0. If p(x) is not necessarily monic and p(a) = 0, then a ∈ S is algebraic over 31

R. Obviously integral is stronger condition that algebraic. When all of the elements of S are integral over R then S is said to be integral over R. The following, a characterization of periodic rings, is the main result over rings of this section.

Theorem 3.2.2 Let R be a commutative ring. The following statements are equivalent.

(i) R is periodic.

(ii) For every a ∈ R, ai is eventually periodic. ( )i∈N

(iii) R is an integral extension over Zm for some positive integer m.

In the proof of this Theorem we use the following

Lemma 3.2.3 Let R be a finite commutative local ring and

··· k ∈ R[x] ∞ g = 1 + a1 x + + ak x R[x]. Then hgi < .

∗ Proof. Let M be the maximal ideal of R. Suppose that at ∈ R , but at+1,..., ak ∈ M . R is automatically Artinian, since |R| < ∞. So M is nilpotent (because R is also local), say

l t l M = 0 for some l > 0. Let g1 = (1 + a1 x + ··· + at x ) . Then

t l t+1 k l g1 = (1 + a1 x + ··· + at x ) − (−at+1 x − · · · − ak x )

u l ∗ is divisible by g. Say g1 = 1 + b1 x + ··· + bu x , where u = tl. Now bu = at ∈ R allows us

R[x] u R[x] to perform division algorithm by g1 over R[x]. So = |R| < ∞. Therefore < ∞, hg1i hgi since R[x] is a homomorphic image of R[x] . hgi hg1i  Proof.[Proof of Theorem 3.2.2] We immediately get that (i) implies (ii).

i i+k i Secondly, from (ii) we get that (2 )i≥0 is eventually periodic, and hence 2 = 2 for some i ≥ 0 and k > 0. So char R < ∞, since 2i(2i − 1) = 0 and R is a Z-module. Let

i i+k i m = char R. For each a ∈ R, since (a )i≥0 is eventually periodic, a = a for some i ≥ 0 and k > 0. Thus a is integral over Zm. 32

k Finally, assume (iii), and consider g = 1 + a1 x + ··· + ak x ∈ R[x]. Let

S = Zm[a1,..., ak]. Since a1,..., ak are integral over Zm, we see that |Zm[a1]| < ∞, and inductively we get that |S | < ∞. Now from [20, Theorem VI.2] we may write

S = S 1 × · · · × S t, where each S i is a finite commutative local ring. If we express an element (a1,..., at) ∈ S 1 × · · · × S t as a1 + ··· + at, then we can write g = g1 + ··· + gt,

S i[x] where gi ∈ S i[x] and gi(0) = 1S . By Lemma 3.2.3, < ∞. Also, because of i hgii

S [x] S 1[x] S t[x]  × · · · × , hgi hg1i hgti

S [x] ∞ S [x] 0 1 we have that hgi < . Thus, in hgi , the elements x , x ,... cannot all be different. Say xi = xi+n (mod g), for some i ≥ 0 and n > 0. Since g | xi(xn − 1) and g(0) = 1, we get that

n g | x − 1. 

Particularly, the last result classifies the field extensions of Zp as follows.

Corollary 3.2.4 A field is periodic if and only if it is algebraic over Zp for some prime p.

3.3 Two Definitions of Rationality in F[[x1,..., xn]]

As it is done for polynomials, we define power series on several variables recursively. Indeed, for a field F, and for all integer n > 0, we have

F[[x1,..., xn]] = F[[x1,..., xn−1]][[xn]].

However, for Laurent series things are slightly more complicated. Since F((x1)) and

F((x2)) are fields, F((x1))((x2)), and F((x2))((x1)) are also fields (called fields of iterated

Laurent series) but F((x1))((x2)) , F((x2))((x1)). We here consider the ring of Laurent series in two variables as the set

X i j F((x1, x2)) = { αi j x1 x2 | αi j ∈ F and |{αi j , 0 | i < 0, or j < 0}| < ∞}, endowed with i, j∈Z the addition and product defined as is done in one variable. Similarly, we define the ring of Laurent series in several variables. 33

We emphasize that under above considerations F((x1,..., xn)) is no longer a field, for n > 1, since for instance x1 + x2 is not invertible in F((x1,..., xn)). So, let us denote the quotient field of F[[x1,..., xn]] by Frac(F[[x1,..., xn]]). Fortunately, the field of fractions of the ring of polynomials F[x1,..., xn] continues to be the field of rational functions

F(x1,..., xn) over F.

Frac(F[[x1,..., xn]])

......

F((x1,..., xn)) F(x1,..., xn)

...... F((x1,..., xn)) ∩ F(x1,..., xn) ...... F[[x1,..., xn]] ......

F[[x1,..., xn]] ∩ F(x1,..., xn)

......

F[x1,..., xn] Figure 3.1: Relations among various rings 34

With the purpose to further clarify, we illustrate in Figure 3.1 some relations among various of previous rings (this figure appeared earlier in our paper [9]). On the one hand the series f ∈ F[[x1,..., xn]] is rational if and only if there exists

∗ g ∈ F[[x1,..., xn]] ∩ F[x1,..., xn] such that g f ∈ F[x1,..., xn]. Recall that

∗ F[[x1,..., xn]] = {g ∈ F[[x1,..., xn]]|g(0,..., 0) , 0}, since F is a field. Thus,

∗ F[[x1,..., xn]] ∩ F[x1,..., xn] = {g ∈ F[x1,..., xn]|g(0,..., 0) , 0}. Therefore

f ∈ F[[x1,..., xn]] is rational if and only if there exists g ∈ F[x1,..., xn]

with g(0,..., 0) , 0 such that g f ∈ F[x1,..., xn]. (3.3)

It is natural to ask whether (3.3) is equivalent to the seemingly weaker condition

there exists 0 , g ∈ F[x1,..., xn] such that g f ∈ F[x1,..., xn]. (3.4)

When n = 1, (3.3) and (3.4) are clearly equivalent, which was discussed prior (3.1). For n > 1, we show that (3.3) and (3.4) are indeed equivalent, but the reasoning is not easy. Our proof uses valuations in fields of algebraic functions of one variable. Thus, we now refresh some well known definitions and facts, see [6, 27], about algebraic functions of one variable which are used in the proof of Theorem 3.3.2.

Definition 19 Let K be a field. A discrete valuation on K is a surjective function

ν : K → Z ∪ {∞} such that

(i) ν(0) = ∞.

(ii) ν(ab) = ν(a) + ν(b), for all a, b ∈ K∗.

(iii) ν(a + b) ≥ min{ν(a), ν(b)}, for all a, b ∈ K∗.

Here, ∞ < Z is a symbol satisfying n + ∞ = ∞ + n = ∞ + ∞ = ∞, and ∞ > n for all n ∈ Z 35

Definition 20 Let K be a field and x a transcendental element over K. If F is a finite extension of K(x), then F is called a field of algebraic functions of one variable over K (or a function field over K).

Definition 21 A valuation ring of the function field F over K is a ring V with K ( V ( F such that for all a ∈ F, a ∈ V or a−1 ∈ V.

Theorem 3.3.1 Let V be a valuation ring of the function field F over K. Then

(i) V is a local ring.

(ii) V is a principal ideal ring.

(iii) Let t ∈ V such that hti is the maximal ideal P of V. Then each a ∈ F∗ can be

∗ uniquely written as a = tnu, where n ∈ Z and u ∈ V is a unit in V.

(iv) Let define νP : K → Z ∪ {∞} by   n i f a = tnu, n ∈ , u ∈ V∗,  Z νP(a) =   ∞ i f a = 0.

Then νP is a discrete valuation.

Definition 22 A place of the function field F over K is the maximal ideal of a valuation ring of F over K.

Theorem 3.3.2 Let F be a field and f (x1,..., xn) ∈ F[[x1 ..., xn]].

(i) If there exists irreducible g(x1,..., xn) ∈ F[x1,..., xn] with g(0,..., 0) = 0 such that

g f ∈ F[x1,..., xn], then f ∈ F[x1,..., xn].

(ii) If there exists 0 , g(x1,..., xn) ∈ F[x1,..., xn] such that g f ∈ F[x1,..., xn], then

f ∈ F(x1,..., xn). 36

Proof. We firstly prove (i) by induction on n. The claim is obviously true for n = 1. Now assume n > 1. We split the proof in several steps.

◦ X i 1 Write f = fi(x1,..., xn−1)xn. In this step we show that i≥0 fi(x1,..., xn−1) ∈ F(x1,..., xn−1), for all i ≥ 0. We may assume g(x1,..., xn−1, 0) , 0.

∗ (Otherwise, g(x1,..., xn) = axn, a ∈ F , since g is irreducible. Then f ∈ F[[x1,..., xn]] and xn f ∈ F[x1,..., xn] together imply that f ∈ F[x1,..., xn].) Then

g(x1,..., xn−1, 0) f0(x1,..., xn−1) = (g f )(x1,..., xn−1, 0) ∈ F[x1,..., xn−1].

By the induction hypothesis, f0(x1,..., xn−1) ∈ F(x1,..., xn−1). Since

X i−1 xng fi(x1,..., xn−1)xn = g( f − f0(x1,..., xn−1)) ∈ F[x1,..., xn], i≥1

we also have f1(x1,..., xn−1) ∈ F(x1,..., xn−1). In the same way,

fi(x1,..., xn−1) ∈ F(x1,..., xn−1) for all i ≥ 0.

◦ k 2 Next, write g = g0(x1,..., xn−1) + ··· + gk(x1,..., xn−1)xn. Then g0(0,..., 0) = 0.

We may assume g0(x1,..., xn−1) , 0. (Otherwise, since g is irreducible, we have g = xn.

The claim immediately follows.) Therefore g0(x1,..., xn−1) is not a constant. Let

p(x1,..., xn−1) ∈ F[x1,..., xn−1] be an irreducible factor of g0 with p(0,..., 0) = 0.

If g = p(x1,..., xn−1), then p(x1,..., xn−1) f ∈ F[x1,..., xn] implies that N X i f = fi(x1,..., xn−1)xn for some N and that p fi ∈ F[x1,..., xn−1]. By the induction i=0 hypothesis, fi ∈ F[x1,..., xn−1], 0 ≤ i ≤ N. So f ∈ F[x1,..., xn].

Now assume p - g. Then there exists i0 such that p - gi0 . Without loss of generality, p x ,..., x > E F x ,..., x p ∈ E x assume degx1 ( 1 n−1) 0. Let = ( 2 n−1). Then [ 1] is irreducible. Let

k g1(x1,..., xn−1) k−1 gk(x1,..., xn−1) G(xn) = xn + xn + ··· + ∈ (E(x1))[xn]. g0(x1,..., xn−1) g0(x1,..., xn−1)

Since g(x1,..., xn) is irreducible in F[x1,..., xn] = (F[x1,..., xn−1])[xn], is

irreducible in (F(x1,..., xn−1))[xn] = (E(x1))[xn] by the Gauss Lemma. So, G(xn) is

irreducible in (E(x1))[xn]. 37

Let K be the splitting field of G(xn) over E(x1). K is a field of algebraic functions of

t one variable over E. We have G(xn) = [(xn − r1) ··· (xn − rs)] , where r1,..., rs ∈ K are distinct. Let ℘ be any place of K over (p). Then ν℘(r1) = ··· = ν℘(rs), see [6, p.54]. Since

gi0 ν℘( ) < 0 (recall that p | g0 but p gi ), we have ν℘(r1) = ··· = ν℘(rs) < 0. g0 - 0

◦ 3 We claim that νp( fi(x1,..., xn−1)) ≥ 0 for all i. Assume to the contrary that

α a fi = paβ , where a > 0, α, β ∈ F[x1,..., xn−1], p - α, p - β. Then p β fi ∈ F[x1,..., xn−1]. By

the induction hypothesis, β fi ∈ F[x1,..., xn−1], which is a contradiction.

◦ 4 Since g f ∈ F[x1,..., xn], we have    0 1       ··         f (x ,..., x )    f (x ,..., x )   u+1 1 n−1     u 1 n−1   .   ··   .   .  =    .  (3.5)  .     .     ··          fu+k(x1,..., xn−1)   fu+k−1(x1,..., xn−1)  0 1      − gk · · · − g2 − g1  g0 g0 g0

for all u ≥ U, where U is a fixed positive integer. There exists P = (pi j) ∈ GL(n, K) such that    0 1       ··          J1   ··      −1  .    = P  ..  P,      ··          Js  0 1      − gk · · · − g2 − g1  g0 g0 g0 38 where     ri 1       ··      Ji =  ··  .      · 1      ri t×t So        f (x ,..., x )  Jm   f (x ,..., x )   U+m 1 n−1   1   U 1 n−1   .     .  P  .  =  ...  P  .  (3.6)  .     .           m   fU+m+k−1(x1,..., xn−1) Js fU+k−1(x1,..., xn−1) for all m ≥ 0. Let          fU (x1,..., xn−1)  α1      .   .  P  .  =  .  .          fU+k−1(x1,..., xn−1) αk

Let P1 be the submatrix of P consisting of the first t rows. By (3.6),   rm ∗ · · ∗   1                   fU+m(x1,..., xn−1)  α1  ···  α1          .   .     .  P  .  = Jm  .  =    .  . (3.7) 1  .  1  .   ···   .                   f (x ,..., x ) α   · ∗  α  U+m+k−1 1 n−1 t   t    m r1

By comparing the last components of both sides of (3.7), we have

m mν℘(r1) + ν℘(αt) = ν℘(r1 αt) ≥ min{ν℘(pi j) : 1 ≤ i, j ≤ k} for all m ≥ 0. 39

◦ (Note that by 3 ν℘( fi(x1,..., xn−1)) ≥ 0 for all i.) If follows that ν℘(αt) = ∞, i.e., αt = 0. Now (3.7) becomes   rm ∗ · · ∗   1               f (x ,..., x − )   ···   α   U+m 1 n 1     1         .     .  P2  .  =  ···   .  ,              f (x ,..., x )  · ∗  α  U+m+k−1 1 n−1   t−1    m r1

where P2 is the submatrix of P1 consisting of the first t − 1 rows. By induction, we have

α1 = ··· = αt−1 = 0.

In the same way, αit+1 = ··· = αit+t = 0 for all 0 ≤ i < s. Thus α1 = ··· = αk = 0,

which implies that fU (x1,..., xn−1) = ··· = fU+k−1(x1,..., xn−1) = 0. By (3.5),

fu(x1,..., xn−1) = 0 for all u ≥ U. So f ∈ (F(x1,..., xn−1))[xn]. By symmetry,

f ∈ (F(x1,..., xi−1, xi+1,..., xn))[xi] for all 1 ≤ i ≤ n. Thus f ∈ F[x1,..., xn].

(ii) Let us write g = g1 ··· gsh, where g1,..., gs ∈ F[x1,..., xn] are irreducible with

g1(0,..., 0) = ··· = gs(0,..., 0) = 0 and h ∈ F[x1,..., xn], h(0,..., 0) , 0. From

g f = g1 ··· gsh f ∈ F[x1,..., xn], and by (i), g2 ··· gsh f ∈ F[x1,..., xn]. Therefore,

repeating this argument, we get h f ∈ F[x1,..., xn]. 

Now, let us show that

∗ F((x1,..., xn))

i1 in = {x1 ··· xn h | i1,..., in ∈ Z, h ∈ F[[x1,..., xn]], h(0,..., 0) , 0}. (3.8)

∗ In fact, if f ∈ F((x1,..., xn)) , then f g = 1, for some g ∈ F((x1,..., xn)). Write

i1 in j1 jn f = x1 ··· xn h, g = x1 ··· xn k, where i1,..., in, j1,..., jn ∈ Z, h, k ∈ F[[x1,..., xn]] and

i1+ j1 in+ jn xs - h, xs - k in F[[x1,..., xn]] for all 1 ≤ s ≤ n. Thus x1 ··· xn hk = 1 and xs - hk in

F[[x1,..., xn]] for all 1 ≤ s ≤ n. So hk = 1, and hence h(0,..., 0) , 0 is invertible in

∗ F((x1,..., xn)) . The converse is straightforward. Also, by (3.8), we get that 40

F((x1,..., xn)) ∩ F(x1,..., xn)

i1 in = {x1 ··· xn h | i1,..., in ∈ N, h ∈ F[x1,..., xn], h(0,..., 0) , 0}.

In the following corollary we establish that

∗ F((x1,..., xn)) ∩ F[x1,..., xn]

h = { | h ∈ F[x ,..., x ], g ∈ F((x ,..., x ))∗ ∩ F[x ,..., x ]}. g 1 n 1 n 1 n

Therefore, both sides of this equality may be used as a valid definition of rational functions in F((x1,..., xn)).

Corollary 3.3.3 Let F be a field and f (x1,..., xn) ∈ F((x1,..., xn)). If there exists

0 , g ∈ F[x1,..., xn] such that g f ∈ F[x1,..., xn], then there exist i1,..., in ∈ N and

i1 in h ∈ F[x1,..., xn] with h(0,..., 0) , 0 such that x1 ··· xn h f ∈ F[x1,..., xn].

−i1 −in Proof. Write f = x1 ··· xn f1, where i1,..., in ∈ N and f1 ∈ F[[x1,..., xn]]. Since

i1 in g f1 = x1 ··· xn g f ∈ F[x1,..., xn], by Theorem 3.3.2 (ii), there is h ∈ F[x1,..., xn] with

i1 in h(0,..., 0) , 0 such that h f1 ∈ F[x1,..., xn]. Hence, x1 ··· xn h f = h f1 ∈ F[x1,..., xn] 

3.4 Generalization of Kronecker’s Criterion to F[[x1,..., xn]]

Let us denote by Mm×n(F), the set of all m × n matrices over a field F; Mn×n(F) is abbreviated as Mn(F). If A ∈ Mm×n(F), the row space of A over F is denoted by R(A) and ker A = {x ∈ Fn | Ax = 0}. As we saw in Section 1.1, definitions 4 & 5, if

n n−1 f = x + an−1 x + ··· + a0 ∈ F[x], the companion matrix of f is     0 −a0      1 −a1  M ( f ) =   .  .. .   . .       1 −an−1 41

Now let us state the first result about rationality in F[[x]]. The equivalence between (i) and (ii) in the following theorem is known as Kronecker’s theorem, see [7].

X i Theorem 3.4.1 Let F be a field. Let f = ai x ∈ F[[x]] and i≥0   a a a ···  0 1 2    a a a ···  1 2 3  A =   . (3.9) a a a ···  2 3 4   . . .   . . .  Then the following statements are equivalent.

(i)f ∈ F(x).

(ii) rank A < ∞.

(iii) There exist m, r ≥ 0 such that      am am+1 ···     am+1 am+2 ··· rank   ≤ r.  . .   . .      am+r am+r+1 ···

h Proof. (i) ⇒ (iii) Assume f = g , where h, g ∈ F[x], g(0) = 1, deg h = k, deg g = r. Write l X i g = bi x , b0 = 1. Choose m ∈ N such that m > k − r. Then i=0

h = g f

m+r m+r+1 = b0(am+r x + am+r+1 x + ··· )

m+r m+r+1 + b1(am+r−1 x + am+r x + ··· ) (3.10) + ···

m+r m+r+1 + br(am x + am+1 x + ··· )

+ (terms of degree < m + r). 42

So    a a ···  m m+1    a a ···  m+1 m+2  (br,..., b0)   = 0. (3.11)  . .   . .      am+r am+r+1 ···

Thus      am am+1 ···     am+1 am+2 ··· rank   ≤ r.  . .   . .      am+r am+r+1 ···

(iii) ⇒ (ii) We may assume that (3.11) holds for some b0,..., br ∈ F with b0 = 1. Let    a a ···  0 1     a a ···  1 2  A1 =   .  . .   . .      am+r−1 am+r ···

By (3.11), (am+r, am+r+1,... ) ∈ R(A1). If we ignore the first component, and use that

b0 = 1, we get that    a a ···  1 2     a a ···  2 3  (am+r+1, am+r+2,... ) ∈ R( ) ⊂ R(A1).  . .   . .      am+r am+r+1 ···

By induction, all rows of A belong to R(A1). So rank A ≤ m + r.

(ii) ⇒ (i) Since rank A < ∞, there exist b1,..., br ∈ F such that   a a ···  0 1    a a ···  1 2  (br,..., b1, 1)   = 0.  . .   . .      ar ar+1 ··· 43

r Thus (1 + b1 x + ··· + br x ) f is a polynomial of degree at most r − 1. Therefore f ∈ F(x).  Remark. Statement (iii) in Theorem 3.4.1 means that the subspace of Fr+1 generated by

{(am+i, am+1+i,..., am+r+i) | i ∈ N}, is proper. Recall that this is the window code X i Wm, r+1( ai x ) from definition 17. In the proof of Theorem 3.4.1, we actually proved the following slightly more general result which we will indeed need later.

X i Theorem 3.4.2 Let F be a field and A an F-algebra. Let f = ai x ∈ A[[x]] and let A i≥0 be as in (3.9). The following statements are equivalent.

(i) There exists g ∈ F[x] with g(0) = 1 such that g f ∈ A[x].

(ii) dimF RF(A ) < ∞, where RF(A ) is the F-space generated by the rows of A .

(iii) There exist m, r ≥ 0 such that      am am+1 ···     am+1 am+2 ···   dimF RF   ≤ r.  . .   . .      am+r am+r+1 ···

The significance of condition (iii) is that one can use an analogue of it to characterize

the elements of F[[x1,..., xn]] which are multivariable rational functions. That extension is the content of Theorem 3.11, where (i) is still equivalent to a multivariable version adapted for (iii). However, the multivariable version of (i) is weaker than that of (ii) (Theorem 3.4.4).

Firstly, we establish a convenient notation as follows: For i = (i1,..., in) and

n j = ( j1,..., jn) ∈ N , i ≤ j means that it ≤ jt for all 1 ≤ t ≤ n. Also, i + j is the addition

n i i1 in component-wise of i and j. For i = (i1,..., in) ∈ N , define x = x1 ··· xn . If h ∈ F x ,..., x h h,..., h n [ 1 n], define deg = (degx1 degxn ). To each -dimensional infinite 44

{ } n array ai i∈N of elements from F, we associate a power series X i f = ai x ∈ F[[x1,..., xn]] and a function n i∈N

A : Nn × Nn −→ F (3.12) (i, j) 7−→ ai+ j.

For a fixed i ∈ Nn, also define

n Ai : N −→ F (3.13) j 7−→ ai+ j.

(Note that when n = 1, A is the infinite circulant matrix in (3.9) and Ai is the row of A with

n n label i.) For convenience, we define ai = 0 for i ∈ Z \ N , and hence, in (3.13), we may allow i to be in Zn.

Theorem 3.4.3 In the above setting, f ∈ F(x1,..., xn) if and only if there exist

n k = (k1,..., kn), m = (m1,..., mn) ∈ N such that

dimF (A j−k+m(1) ,..., A j−k+m(n) ) | j ≤ k < (k1 + 1) ··· (kn + 1), (3.14) where m(i) = (0,..., 0, m + 1, 0,..., 0) and h i means the F-linear span. | {z i } i X ⇒ ∈ j ∈ Proof. ( ) Since f F ( x 1 ,..., xn), there exists 0 , g = b j x F[x1,..., xn], where j≤k n n k ∈ N , such that g f ∈ F[x1,..., xn]. Choose m ∈ N such that m ≥ deg( f g). Then

XX  i g f = bk− jai−k+ j x n i∈N j≤k

X X  i = bk− jai−k+ j x + (terms of deg ≤ m). n i∈N , i6≤m j≤k So

X n bk− jai−k+ j = 0 for all i ∈ N , i 6≤ m. (3.15) j≤k 45

Note that i ∈ Nn and i 6≤ m if and only if i ≥ m(t), for some 1 ≤ t ≤ n. Thus, (3.15) is equivalent to

X n bk− ja j−k+m(t)+u = 0 for all u ∈ N and 1 ≤ t ≤ n, j≤k i.e., X bk− jA j−k+m(t) = 0 for all 1 ≤ t ≤ n. (3.16) j≤k

Because bk− j, j ≤ k, are not all 0, (3.16) implies that

dimF (A j−k+m(1) ,..., A j−k+m(n) ) | j ≤ k < (k1 + 1) ··· (kn + 1).

(⇐) Inequality (3.14) implies that (A j−k+m(1) ,..., A j−k+m(n) ), j ≤ k, are linearly dependent. Thus there are b j ∈ F, j ≤ k, not all zero such that (3.16) holds. We may now go back from (3.16) to (3.15). Hence g f is a polynomial in F[x1,..., xn] with

X j deg(g f ) ≤ m, where g = b j x . Therefore, f ∈ F(x1,..., xn).  j≤k Theorem 3.4.4 Let f and A be as above. Then

n dimFhAi | i ∈ N i < ∞ (3.17) if and only if h(x ,..., x ) f = 1 n (3.18) g1(x1) ··· gn(xn)

for some h ∈ F[x1,..., xn] and some gi ∈ F[xi] with gi(0) = 1, 1 ≤ i ≤ n.

Proof. 1◦ We first prove that (3.17) is equivalent to

dimFhA (0,...,0,i ,0,...,0) | i ∈ Ni < ∞, for all 1 ≤ t ≤ n. (3.19) |{z} t

Of course we only have to show that (3.19) implies (3.17). For each i ∈ Nn, define

n n ρi : N −→ N (3.20) j 7−→ j + i. 46

Choose mt ∈ N such that

hA (0,...,0,i ,0,...,0) | i ∈ Ni = hA (0,...,0,i ,0,...,0) | i ≤ mti. |{z} |{z} t t n For each (i1,..., in) ∈ N , we have X A(0,...,0,i ,0,...,0) = ciA (0,...,0,i ,0,...,0) t |{z} i≤mt t

for some ci ∈ F, i ≤ mt. Then

A(i1,...,in) = A(0,...,0,it,0,...,0) ◦ ρ(i1,...,it−1,0,it+1,...,in) X = ciA (0,...,0,i ,0,...,0) ◦ ρ(i ,...,i ,0,i ,...,i ) |{z} 1 t−1 t+1 n (3.21) i≤mt t X = ciA(i1,...,it−1,i,it+1,...,in). i≤mt

It follows from (3.21) that A(i1,...,in) ∈ hA( j1,..., jn) | ( j1,..., jn) ≤ (m1,..., mn)i. So

n dimFhAi | i ∈ N i < (m1 + 1) ··· (mn + 1). ◦ 2 Let 1 ≤ t ≤ n and view f as an element of (F[[x1,..., xt−1, xt+1,..., xn]])[[xt]]. By Theorem 3.4.2,

dimFhA (0,...,0,i ,0,...,0) | i ∈ Ni < ∞ |{z} t

if and only if there exists gt ∈ F[xt] with gt(0) = 1 such that

gt(xt) f ∈ (F[[x1,..., xt−1, xt+1,..., xn]])[xt]. (3.22)

3◦ It remains to show that (3.18) holds if and only if (3.22) holds for all 1 ≤ t ≤ n. The “only if” part is obvious. For the “if” part, note that

g1(x1) ··· gn(xn) f ∈ F[[x1,..., xn]] is a polynomial in every xt. Thus

g1(x1) ··· gn(xn) f ∈ F[x1,..., xn], hence (3.18) holds. This completes the proof of the

theorem.  n To end this section, we observe an interesting property of the space hAi | i ∈ N i. Call a subset I ⊂ Nn an ideal of the partially ordered set (Nn, ≤) if i ∈ Nn, j ∈ I, i ≤ j imply i ∈ I. 47

n n n Proposition 3.4.5 Let A : N × N → F and Ai : N → F be as in (3.12) and (3.13). Then

n n hAi | i ∈ N i has a basis of the form {Ai | i ∈ I}, where I is an ideal of (N , ≤).

Proof.[The case n = 1 is obvious] For n > 1 we use the lexicographical order ≺ in Nn, i.e.,

(i1,..., in) ≺ ( j1,..., jn) means that there exists s (1 ≤ s ≤ n) such that it = jt for all t ≤ s

n and is+1 < js+1. It is easy to see that every nonempty subset of (N , ≺) has a minimal element, i.e., (Nn, ≺) is a well ordered set. Construct χ : Nn → {0, 1} inductively as

follows. Let   1 if A(0,...,0) , 0, χ(0,..., 0) =    0 if A(0,...,0) = 0.

Assume that χ( j) has been defined for all j  i. Define   1 if A hA | j ii,  i < j  χ(i) =   0 otherwise.

−1 n n Let I = χ (1) ⊂ N . Then {Ai | i ∈ I} is a basis of hAi | i ∈ N i having the property that for each i ∈ Nn,

Ai ∈ hA j | j ≺ i and j ∈ Ii. (3.23)

We claim that I is an ideal of (Nn, ≤). Suppose to the contrary that there exists i ∈ I and k ∈ Nn \ I such that k ≤ i. By (3.23),

Ak ∈ hA j | j ≺ k, j ∈ Ii ⊂ hA j| j  ki. (3.24) 48

Let i = k + m. Then

Ai = Ak+m

= Ak ◦ ρm (ρm defined in (3.20))

⊂ hA j ◦ ρm | j  ki (by (3.24))

= hA j+m | j  ki

= hA j | j  ii ( j  k ⇔ j + m  i)

= hA j | j  i, j ∈ Ii (by (3.23)).

This contradicts the fact that {Ai | i ∈ I} is linearly independent.  49 4 Sequential Codes

4.1 Introduction

Results in this chapter are based upon our paper [9]. In this part we introduce the notion of sequential code which is a natural generalization of cyclic and even constacyclic codes over a (not necessarily finite) field F. A truncation of a cyclic code over F is both left and right sequential (bisequential). We prove that the converse holds if and only if F is algebraic over Fp, for some prime p. Finally, we show that all sequential codes are obtained by a simple and explicit construction.

4.2 Sequential Codes

Definition 23 A right sequential code of length n over a field F is a subspace C ⊂ Fn having the property that if a0 ... an−1 ∈ C , then there exists b ∈ F such that

n a1 ... an−1b ∈ C . A subspace C ⊂ F is left sequential if a0 ... an−1 ∈ C , then there exists

c ∈ F such that ca0 ... an−2 ∈ C . A code C is bisequential if it is both, left and right sequential.

Clearly cyclic codes and negacyclic codes, and more generally, constacyclic codes, are examples of sequential codes, see [23, Ch. 5], [1, §9.3, §13.2], [13], [22].

It is easy to see that for a given right sequential code C ( Fn, each b is uniquely

determined by its corresponding a0 ... an−1 ∈ C . In fact b is a linear function of a0 ... an−1, since C is a linear code. So, there are constants c0,..., cn−1 ∈ F such that b = c0a0 + ··· + cn−1an−1. Because in this case being a function already means that the function is linear, without lost of generality we have the following definition.

Definition 24 A sequential code C ( Fn is called right deterministic when b is a linear function of a0 ... an−1. Likewise, we define left deterministic. 50

Theorem 4.2.1 A right (left) sequential code C ⊂ Fn is right (left) deterministic if and only if C , Fn.

Proof. It suffices to prove the right-side case, since the proof for left deterministic is quite symmetric. Let C , Fn, and suppose C is not right deterministic. Then there exist distinct a1 ... an−1b ∈ C and a1 ... an−1c ∈ C , i.e., b , c. Thus

1 0 ... 01 = b−c (a1 ... an−1b − a1 ... an−1c) ∈ C . Since C is right sequential, by induction, we get 0 ... 01, 0 ... 01∗,..., 1 ∗ · · · ∗ ∈ C . So C = Fn, which is a contradiction. The other direction is straightforward.  n If C ( F is a deterministic code and a0 ... an−1 ∈ C , then there is a unique sequence

(a0 ... an−1)C = (a0,..., an−1, an, an+1,... ), generated by the linear recurrence relation,

such that aiai+1 ... ai+n−1 ∈ C for all i ≥ 0. The linear recurrence relation is precisely given

n by ai+n = c0ai + ··· + cn−1ai+n−1 for some c0 ... cn−1 ∈ F . We will show that the field F has

n the property that (a1 ... an−1)C is eventually periodic for all deterministic codes C ( F and all a0 ... an−1 ∈ C if and only if F is algebraic over Fp, for some prime p. In fact (cf. [15, §8.1]),

(a , a ,..., a ) = (a ,..., a ) i , i ∈ , i i+1 i+n−1 0 n−1 C(c0,...,cn−1) N

where   0 ··· 0 c   0    1 c   1  C(c0,...,cn−1) =   .  .. .   . .       1 cn−1

Since the sequence (a0,..., an−1)C depends only on (a0,..., an−1) and (c0,..., cn−1), we

also denoted it by (a0,..., an−1)(c0,...,cn−1). The sequence (a0,..., an−1)(c0,...,cn−1) is eventually

i j periodic if and only if (a ,..., a − )( − ) = 0, for some i > j ≥ 0. 0 n 1 C(c0,...,cn−1) C(c0,...,cn−1)

Consequently, (a0,..., an−1)(c0,...,cn−1) is eventually periodic for all 51

n (a0,..., an−1), (c0,..., cn−1) ∈ F if and only if

n i j ∀ (c ,..., c − ) ∈ F , ∃ i > j ≥ 0 such that = . (4.1) 0 n 1 C(c0,...,cn−1) C(c0,...,cn−1)

Theorem 4.2.2 Condition (4.1) is satisfied if F is algebraic over Fp, for some prime p.

Proof. Assume that F is not an algebraic extension of a finite field. Then there exists

0 1 0 n−1 a ∈ F such that the sequence of powers (a , a ,... ) = (a ,..., a )(0,...,0,a) is not eventually periodic. Thus (4.1) fails.

n Conversely, for each (c0,..., cn−1) ∈ F , there exists a finite field Fq such that c0,...,

cn−1 ∈ Fq. Since C(c0,...,cn−1) ∈ Mn(Fq) and |Mn(Fq)| < ∞, there must exist i > j ≥ 0 such that i = j . C(c0,...,cn−1) C(c0,...,cn−1)  X i + Remember, Definition 17, given f = ai x ∈ F[[x]], m ∈ N and n ∈ Z , i≥0 W ⊂ n m,n( f ) F is the window code of the sequence (ai)i∈N of length n starting at the mth place, which is defined to be the linear span of {(ai, ai+1,..., ai+n−1) | i ≥ m}, i.e.,      am am+1 ··· am+n−1     Wm,n( f ) = R(a a ··· a ).  m+1 m+2 m+n   . . .   . . . 

From the definition it is also immediate that all the window codes (for all m, n) are always sequential. We now characterize the rationality of F in terms of window codes.

h Theorem 4.2.3 In the above notation. Wm,n( f ) is deterministic if and only if f = g for some h, g ∈ F[x] with g(0) = 1, deg g ≤ n − 1 and deg h < m + deg g. 52

Proof. The proof is essentially the same as the proof of (i) ⇒ (iii) in Theorem 3.4.1. We have h “ f = for some h, g ∈ F[x] with g(0) = 1, deg g ≤ n − 1, deg h < m + deg g” g h ⇔ “ f = for some h, g ∈ F[x] with g(0) = 1, deg g = n − 1, deg h < m + n − 1” g (for (⇒), multiply both g and h by xn−1−deg g + 1)

n−1 X i ⇔ (3.10) with r = n − 1, g = bi x i=0 ⇔ (3.11) with r = n − 1

     am am+1 ···      am+1 am+2 ··· ⇔ rank   ≤ n − 1  . .   . .      am+n−1 am+n ···

n ⇔ Wm,n( f ) , F .

 By a truncation of a code C ⊂ Fn one usually means any code E ⊂ Fn−t obtained by removing a fix set of t entries from every word of C . In the terminology of [11], these are called punctured codes. In this work we assume that the t entries removed are the first t

entries. Clearly in the case where C is cyclic this is equivalent to remove any fix set of cyclically consecutive entries. Obviously, truncations are indeed codes of smaller lengths than the one from the original code, if t > 0. It is easy to see that

a truncation of a cyclic code over F is both left and right sequential (bisequential). (4.2)

Whether the converse holds depends on the field F.

Lemma 4.2.4 If F is not periodic, then 4.2 fails. 53

Proof. If F is not periodic then there is a ∈ F such that the powers ai, i ∈ N, are all distinct. Thus h(1a)i ⊂ F2 is bisequential but not a truncated cyclic code. (Assume to the

contrary that h(1a)i is a truncation of a cyclic code C ⊂ Fn, n ≥ 2. Since h(1a)i is

deterministic, we must have C = h(1a ··· an−1)i. But then (an−11a ... an−2) < C , which is a

contradiction.) 

We prove that the converse holds if and only if F is algebraic over Fp.

Theorem 4.2.5 Let F be a field. The following statements are equivalent.

(i) F is algebraic over Fp, for some prime p.

(ii) Every bisequential code C over F is a truncated cyclic code.

Proof. (ii) ⇒ (i) If (i) is false, then there exists a ∈ F such that ai, i ∈ N, are all distinct, and (ii) is false from 4.2.

(i) ⇒ (ii) Let C ⊂ Fn be bisequential. If C = Fn, then C is cyclic itself. So assume

n C , F . It follows that C is bideterministic. Thus each α = a0 ... an−1 ∈ C determines a

unique bisequence eα = (..., a−2, a−1, a0, a1,..., an−1, an,... ) such that aiai+1 ... ai+n−1 ∈ C

for all i ∈ Z. Since F is an algebraic extension of Fp, Theorem 4.2.2 implies that the

sequence (a0, a1,... ) is eventually periodic. Since C is left deterministic, it follows that

the bisequence eα is totally periodic. Let l(α) denote the period of eα. Let α1, . . . , αk ∈ C be

a basis of C . Put l = lcm(l(α1),..., l(αk)). Then l is a period of eα for all α ∈ C . We may assume l ≥ n. (Replace l by a multiple of l if necessary.) Let D be the restriction of

{eα : α ∈ C } to the components labeled from 0 to l − 1. Then D ⊂ Fl is cyclic and C is a

truncation of D to the first n components. 

4.3 Constructing Sequential Codes

The construction of sequential codes resembles that of cyclic codes. We show that there is a bijection from the set of all (n, k) sequential codes over F and the set of all 54 monic polynomials of degree k in F[x]. From each monic polynomial of degree k in F[x], one can easily write a parity check matrix and a generator matrix for the corresponding sequential code. From the paragraph preceding Theorem 4.2.2 it is clear that a sequential code in Fn is

n precisely an invariant subspace of the matrix C(c0,...,cn−1) for some (c0,..., cn−1) ∈ F .

n Namely, a sequential code C ⊂ F is the row space of some X ∈ Mk×n(F) satisfying

XC(c0,...,cn−1) = AX (4.3)

n for some (c0,..., cn−1) ∈ F and some A ∈ Mk(F). Let

n n−1 f (x) = x − cn−1 x − · · · − c0 ∈ F[x]

and note that C(c0,...,cn−1) is the companion matrix of f (x). The solution of (4.3) is

n−1 X = (x0, Ax0,..., A x0) (4.4)

with x0 ∈ ker f (A). If k ≤ n and f is a multiple of the characteristic polynomial of A, then

n the condition x0 ∈ ker f (A) is automatically satisfied. Therefore sequential codes in F are precisely of the form

n−1 k R((x0, Ax0,..., A x0)), A ∈ Mk(F), x0 ∈ F , k ≤ n. (4.5)

If we require the sequential code in (4.5) to have dimension k, we need to choose A

n−1 and x0 such that rank (x0, Ax0,..., A x0) = k.

n−1 Theorem 4.3.1 The matrix (x0, Ax0,..., A x0) in (4.5) has rank k if and only if the following conditions are satisfied.

(i) The minimal polynomial m(x) of A is the characteristic polynomial of A (i.e., A is nonderogatory, see [21, p. 644].) 55

Ss (ii)x 0 < i=1 ker mi(A), where m1(x),..., ms(x) ∈ F[x] are the maximal divisors of m(x).

n−1 k−1 Proof. If rank (x0, Ax0,..., A x0) = k, then rank (x0, Ax0,..., A x0) = k. Thus

g(A)x0 , 0 for all 0 , g ∈ F[x] with deg g < k. (4.6)

So the minimal polynomial m(x) of A has degree ≥ k, i.e., A is nonderogatory. Condition

Ss (4.6) implies that x0 < i=1 ker mi(A). Ss Conversely, since deg m = k and because of x0 < i=1 ker mi(A), we get that (4.6)

k−1 holds. Hence rank (x0, Ax0,..., A x0) = k. Since k ≤ n,

n−1 k−1 rank (x0, Ax0,..., A x0) = rank (x0, Ax0,..., A x0) = k. 

Assume that A and x0 satisfy the conditions in Theorem 4.3.1. Let the characteristic

k k−1 polynomial of A be m(x) = x + bk−1 x + ··· + b0 ∈ F[x]. Since m(A) = 0, we have

n−1 T (x0, Ax0,..., A x0)B = 0, where     b0 b1 ······ bn−1 1 0       0 b0 b1 ······ bn−1 1  B =   . (4.7)  ......   . . . . .       0 b0 b1 ······ bn−1 1 (n−k)×n n−1 Since rank (x0, Ax0,..., A x0) = k, we have

n−1 ⊥ R((x0, Ax0,..., A x0)) = R(B) . (4.8)

The sequential code in (4.8) depends only on the characteristic polynomial of A but not on

x0 (as along as x0 satisfies condition (ii) of Theorem 4.3.1). For practical purpose, a

generator matrix for the sequential code in (4.8) independent of x0 can be easily found as

follows: Use elementary row operations to bring B into the form (B1, In−k). Then

⊥ T R(B) = R((Ik, −B1 )). 56

For theoretical purpose, it is also possible to determine a generator matrix for the sequential code (4.8) explicitly.

n−1 −1 In R((x0, Ax0,..., A x0)) we may replace A be QAQ and x0 by Qx0, where Q ∈ GL(k, F). Thus we may assume that A is a rational canonical form. Write

e1 es m(x) = p1(x) ··· ps(x) , where p1,..., ps ∈ F[x] are distinct irreducible polynomials,

+ deg pi = di, and e1,..., es ∈ Z . By the above remark, we may assume   M(pe1 )   1   .   ..    A =   .        es   M(ps 

m(x) The maximal divisors of m(x) are mi(x) = , 1 ≤ i ≤ s. Then pi(x)

x = (1 0 ··· 0 ··· 1 0 ··· 0)T 0 | {z } | {z } e1d1 esds satisfies condition (ii) of Theorem 4.3.1. For this choice of x0, we have

    X1   n−1  .  (x0, Ax0,..., A x0) =  .  , (4.9)     Xs

where Xi ∈ Meidi×n(F) consists of the first n columns of

  ei 0 ei eidi ei 2eidi M(pi ) , M(pi ) , M(pi ) , ··· .

To summarize, we have the following theorem.

Theorem 4.3.2 Let 0 ≤ k < n. There is a bijection from the set of all monic polynomials of degree k in F[x] to the set of all k-dimensional sequential codes in Fn. Let

k k−1 e1 es m(x) = x + bk−1 x + ··· + b0 = p1(x) ··· ps(x) ∈ F[x], where p1,..., ps ∈ F[x] are

+ distinct irreducible polynomials and e1,..., es ∈ Z . Then the sequential code 57 corresponding to m(x) has a parity check matrix B given by (4.7) and a generator matrix given by (4.9).

The next two example show that in certain parameters, sequential codes can achieve optimal minimum distance.

Example 1 The optimal minimum distance of (14, 8) codes over F2 is 4 ([29]). A computer search found that there is only one (14, 8, 4) sequential code over F2. The corresponding polynomial of the code is x8 + x7 + x6 + x5 + x4 + x3 + x2 + 1. This code has a parity check matrix    1 0 1 1 1 1 1 0 1       1 0 1 1 1 1 1 0 1       1 0 1 1 1 1 1 0 1    ,    1 0 1 1 1 1 1 0 1       1 0 1 1 1 1 1 0 1       1 0 1 1 1 1 1 0 1  a generator matrix    1 1 0 1 1 0 1       1 0 1 0 1 1 0       1 1 0 0 1 1 0       1 1 1 1 1 1 0    ,    1 1 1 0 0 1 0       1 1 1 0 1 0 0       1 1 1 0 1 1 1       1 0 1 1 0 1 1  and weight enumerator

1 + 29x4 + 32x5 + 24x6 + 64x7 + 59x8 + 32x9 + 8x10 + 7x12. 58

It is easy to see that this code is not cyclic. Therefore the example shows that with certain parameters, optimal minimum distance can be achieved by sequential codes but not by cyclic codes.

Example 2 The optimal minimum distance of (22, 5) codes over F3 is 12 ([29]). There are

16 (22, 5, 12) sequential codes over F3, see Table 4.1 (this table was first published in our

5 4 paper [9]). In Table 4.1, the polynomial corresponding to the code is x + b4 x + ··· + b0. 59

Table 4.1: (22, 5, 12) sequential codes over F3

(b0,..., b4) weight enumerator

(1, 0, 0, 1, 1) 1 + 20x12 + 62x13 + 60x14 + 20x15 + 22x16 +30x17 + 22x18 + 4x19 + 2x22

(1, 0, 1, 0, 1) 1 + 28x12 + 58x13 + 46x14 + 26x15 + 26x16 + 26x17 + 26x18 + 6x19

(, 0, 1, 1, 1) 1 + 20x12 + 58x13 + 56x14 + 42x15 + 20x16 + 12x17 +18x18 + 12x19 + 4x20

(1, 0, 2, 2, 2) 1 + 132x12 + 110x18

(1, 1, 0, 1, 0) 1 + 28x12 + 58x13 + 46x14 + 26x15 + 26x16 + 26x17 + 26x18 + 6x19

(1, 1, 1, 0, 0) 1 + 20x12 + 62x13 + 60x14 + 20x15 + 22x16 + 30x17 +22x18 + 4x19 + 2x22

(1, 1, 1, 1, 0) 1 + 20x12 + 58x13 + 56x14 + 42x15 + 20x16 + 12x17 +18x18 + 12x19 + 4x20

(1, 2, 2, 2, 0) 1 + 132x12 + 110x18

(2, 0, 0, 1, 2) 1 + 20x12 + 62x13 + 60x14 + 20x15 + 22x16 + 30x17 +22x18 + 4x19 + 2x22

(2, 0, 1, 2, 1) 1 + 132x12 + 110x18

(2, 0, 2, 0, 2) 1 + 28x12 + 58x13 + 46x14 + 26x15 + 26x16 + 26x17 + 26x18 + 6x19

(2, 0, 2, 1, 2) 1 + 20x12 + 58x13 + 56x14 + 42x15 + 20x16 + 12x17 +18x18 + 12x19 + 4x20

(2, 1, 0, 1, 0) 1 + 28x12 + 58x13 + 46x14 + 26x15 + 26x16 + 26x17 + 26x18 + 6x19

(2, 1, 2, 0, 0) 1 + 20x12 + 62x13 + 60x14 + 20x15 + 22x16 + 30x17 +22x18 + 4x19 + 2x22

(2, 1, 2, 1, 0) 1 + 20x12 + 58x13 + 56x14 + 42x15 + 20x16 + 12x17 +18x18 + 12x19 + 4x20

(2, 2, 1, 2, 0) 1 + 132x12 + 110x18 60 5 Polycyclic Codes

5.1 Introduction

Most of the results in this chapter were published in our paper [17]. In what follows we introduce another generalization of the notion of cyclicity of codes: polycyclic codes, over a finite field F. We define these codes by looking at a property that we have did not consider for sequential codes. We establish a duality between these two generalizations and also show connections between them and other well-known generalizations of cyclicity such as the notions of negacyclicity and constacyclicity. In particular, it is shown that a code C is sequential and polycyclic if and only if C and its dual C ⊥ are both sequential if and only if C and its dual C ⊥ are both polycyclic. Furthermore, any one of these equivalent statements characterizes the family of constacyclic codes. Since the second chapter we have been writing vectors (or words) in Fn, without parentheses or commas, so far. Now we will use parentheses for only two distinct purposes. An n-vector with first entry the scalar multiple αb1 of b1 would be denoted

(αb1)b2 ... bn. On the other hand, parentheses around the vector facilitate displaying a scalar multiple of the entire vector. So, α(a1 ... an) = (αa1)(αa2) ... (αan) is an example of both notational conventions. Recall that a linear code C ⊆ Fn is said to be cyclic if whenever the word c = c0c1 ... cn−1 ∈ C , then the word cn−1c0c1 ... cn−2 is also in C . In other words, C is closed under clockwise cyclic shifts. Obviously, a cyclic code is also closed under counterclockwise cyclic shifts. In the second chapter, we also talked about a well-know generalization of cyclicity: constacyclic codes; namely, those codes C ⊆ Fn for which there exists 0 , a ∈ F such that for every c = c0c1 ... cn−1 ∈ C , the word (acn−1)c0c1 ... cn−2 is also in C . References for constacyclic codes include [1, 12–14, 18, 28]. For these codes we use the expression that C is closed under a-clockwise shifts. An important class of constacyclic codes is that 61 of negacyclic codes (i.e. those codes which are constacyclic with respect to the constant a = −1). Clearly, when F is of characteristic two, the concepts of negacyclic and cyclic codes are one and the same. Notice that while negacyclic codes are also closed under (−1)-counterclockwise shifts, making an explicit mention of the orientation of the shift unnecessary, by the same token a code is closed under the a-clockwise shift if and only if it is closed under the a−1-counterclockwise shift. In other words, in the general case, with a change in the orientation of the shift, one still has constacyclicity but the constant must be adjusted appropriately. For this reason, we need terminology that distinguishes the two versions of constacyclicity. In order to be explicit about the constant with respect to which a code is constacyclic as well as about the orientation of the constacyclicity, we refer to a code closed under the a-clockwise shift as being right a-constacyclic and to one closed under the b-counterclockwise shift as being left b-constacyclic. The usual characterization of cyclic codes as being those codes which correspond to

F[x] ideals in the quotient ring hxn−1i via the correspondence n−1 c = c0c1 ... cn−1 7→ c(x) = c0 + c1 x + ... cn−1 x extends naturally to that of a code being

F[x] right a-constacyclic if it corresponds to an ideal of the quotient ring hxn−ai under said correspondence. The notion of left b-constacyclicity may be characterized in a similar

F[x] manner. A code C is left b-constacyclic if it corresponds to an ideal of hxn−bi but under the n−1 reciprocal correspondence c = c0c1 ... cn−1 7→ c(x) = cn−1 + cn−2 x + ... c0 x . In Section 5.2 we develop the concepts of right and left polycyclicity of codes, where codes images

F[x] under certain isomorphisms are ideals of quotient rings h f (x)i . These concepts encompass the properties of cyclic, negacyclic and constacyclic codes discussed so far. Another property held by constacyclic codes is right (left) sequentiality. Namely, a

code C is right (left) sequential if for every c0c1 ... cn−1 ∈ C , there exists d ∈ F such that

c1 ... cn−1d ∈ C (resp. dc0c1 ... cn−2 ∈ C ). Sequential codes were first introduced in our 62 paper [9]. We continue their study in Section 5.3 where we show, among other things, that a code C is right sequential if and only if its dual C ⊥ is right polycyclic. We also show that a code C satisfies both right polycyclicity and sequentiality if and only if C is constacyclic. It is easy to see that there is a strong connection between linear recurrence sequences and sequential codes. However, we do not make any explicit use of the results from that theory in this chapter. We have not found any way in which such mention would be helpful enough to justify the detour and the additional effort on behalf of the reader. For interested readers on linear recurrence sequences, [15] could be a good starting point. As sequential codes were introduced in [9], that paper provides examples (Examples 6.3 and 6.4) to illustrate the promise of sequential codes as a source for good (even optimal) codes. With that in mind, the practical importance of sequential and polycyclic codes cannot be understated. Our intention in this chapter, however, is to lay down foundational results for further study of these types of codes and not necessarily to seek practical applications. We save those considerations for a later project.

5.2 Polycyclic Codes

The terminology of the previous section may be extended to define a larger family of codes. We start by introducing vector-induced clockwise and counterclockwise shifts.

n Given a vector c = c0c1 ... cn−1 ∈ F , the c-clockwise shift is the correspondence a0a1 ... an−1 7→ 0a0a1 ... an−2 + an−1(c0c1 ... cn−1). Similarly, the c-counterclockwise shift is given by a0a1 ... an−1 7→ a1a2 ... an−10 + a0(c0c1 ... cn−1). This terminology allows us to coin the following definition.

Definition 25 Let C be a linear code of length n over a finite field F. C is right

n polycyclic if there exists a c = c0c1 ... cn−1 ∈ F such that for every a0a1 ... an−1 ∈ C ,

0a0a1 ... an−2 + an−1(c0c1 ... cn−1) ∈ C . Similarly C is left polycyclic if there exists a 63

n c = c0c1 ... cn−1 ∈ F such that for every a0a1 ... an−1 ∈ C , a1a2 ... an−10 + a0(c0c1 ... cn−1) ∈ C . In words, the properties above can be expressed by saying that C is right (left) polycyclic if it is closed under a clockwise (counterclockwise) shift. In either case we call c an associate vector of C , and C is the right (left) polycyclic code induced by c. C is bi-polycyclic if it is both left and right polycyclic.

Polycyclicity of codes is a generalization of cyclicity, as clearly a cyclic code is right polycyclic induced by c = 10 ... 0 and left polycyclic using c = 0 ... 01. So, indeed a cyclic code is bi-polycyclic. Similarly, using c = a0 ... 0 and d = 0 ... 0a−1, we see that an a-constacyclic code is bi-polycyclic. We must point out that the use of the word polycyclic should not be interpreted as an attempt to relate this concept to that of polycyclic groups or any other use of that word in the literature. As with cyclic and constacyclic codes, polycyclic codes may be understood in terms

n of ideals in quotient rings of polynomial rings. Given c = c0c1 ... cn−1 ∈ F , if we let

n n−1 f (x) = x − c(x), where c(x) = c0 + c1 x ··· + cn−1 x then the F-linear isomorphism n → F[x] ρ : F h f (x)i = Rn n−1 sending the vector a = a0a1 ... an−1 to the polynomial a0 + a1 x + ··· + an−1 x ,

allows us to identify the right polycyclic codes induced by c with the ideals of Rn.

We can proceed similarly when C is a left polycyclic code. However, we need to use

n a slightly different isomorphism. As before, let c = c0c1 ... cn−1 ∈ F but this time let

n−1 n−2 n c(x) = c0 x + c1 x + ··· + cn−1. Then let f (x) = x − c(x) and consider n → F[x] 7→ n−1 ··· λ : F h f (x)i = Ln defined via λ : a0a1 ... an−1 a0 x + + an−2 x + an−1. In this setting, very much like before, we conclude that λ(C ) is an ideal of the quotient ring

F[x] Ln = h f (x)i . In either case we use the expression right (left) polycyclic code with respect to f (x) to refer to these particular polycyclic codes. One must emphasize, however, that the right 64

n F[x] polycyclic code C is the subspace of F and not its realization as an ideal ρ(C ) of h f (x)i .A single right polycyclic code C (other than Fn) has several realizations as ideals of quotient

F[x] k rings h f (x)i . In fact, if C is k-dimensional, then there are q such realizations (where q = |F|). This is an important distinction to keep in mind, for example when looking at Theorem 5.2.1.

F[x] F[x] Since all ideals of F[x] are principal, the same is true in h f (x)i , thus the ambient h f (x)i is a PIR. Furthermore, following the usual arguments used in the theory of cyclic codes,

one easily sees that every polycyclic code C of dimension k has a monic polynomial g(x) of minimum degree n − k belonging to the code. This polynomial is a factor of f (x) and

we call it the generator polynomial of C . Also, the generator code is unique up to

associates in the sense that if g1(x) ∈ F[x] has degree n − k, it is easy to show that g1(x) is

in the code generated by g(x) if and only if g1(x) = ag(x) for some 0 , a ∈ F. This gives us the following theorem.

Theorem 5.2.1 Let 0 ≤ k < n. There is a one to one correspondence between monic polynomials of degree k and n − k dimensional polycyclic codes.

As with cyclic codes, using the generator polynomial of a polycyclic code C , one can readily construct a generator matrix for it. It turns out that this property in fact characterizes polycyclic codes, as per the following result.

Theorem 5.2.2 A code C ⊆ Fn is right polycyclic if and only if it has a k × n generating matrix of the form      g0 g1 ... gn−k 0 0 ... 0       0 g0 ... gn−k−1 gn−k 0 ... 0  G =   (∗)  . ..   . .       0 ... 0 g0 g1 g2 ... gn−k  65

h ··· n−ki F[x] with gn−k , 0. In this case ρ(C ) = g0 + g1 x + + gn−k x is an ideal of Rn = h f (x)i . The

same criterion, but requiring that g0 , 0 instead of gn−k , 0, serves to characterize left

n−k polycyclic codes. In the latter case, λ(C ) = hgn−k + gn−k−1 x + ··· + g0 x i is an ideal of

F[x] Ln = h f (x)i .

F[x] Proof. If C is right polycyclic then we may assume that ρ(C ) ¡ h f (x)i . Let n−k g(x) = g0 + g1 x + ··· + gn−k x be the generator polynomial of C . Now it is immediate that the matrix G in (*) is a generator matrix of C , and since g(x) is monic, gn−k , 0.

Conversely suppose without loss of generality that gn−k = 1, and define the monic

n−k polynomial g(x) = g0 + g1 x + ··· + gn−k x . Now let h(x) be any monic polynomial of degree k. Thus f (x) = g(x)h(x) is a monic polynomial of degree n, and we may consider F[x] − i the ring Rn = h f (x)i . Since ρ sends the i th row of the generating matrix G to x g(x), it is clear that ρ(C ) = hgi. Hence ρ(C ) ¡ Rn, and therefore C is right polycyclic. The left polycyclic case is argued analogously.  It is clear from Theorem 5.2.2 that a code C with generating matrix G as above with

g0 , 0 , gn−k is bi-polycyclic. In fact, the converse is also true as shown in the following theorem.

Theorem 5.2.3 A right polycyclic code C ⊆ Fn with generator polynomial

n−k g(x) = g0 + ··· + gn−k x is left polycyclic if and only if g0 , 0.

Proof. We only need to show that if g0 = 0 then C is not left polycyclic. Suppose otherwise, then codewords in C have zero as their first entry. Let 1 ≤ i ≤ n − k, be the first i such that gi , 0. Then 0 ... 0gi ... 10 ... 0 ∈ C . If C were also left polycyclic, we would have gi ... 10 ... 0 ∈ C but then gi = 0, a contradiction.  66

As the clockwise and counterclockwise polycyclic shifts are linear maps represented by the square matrices      0 1     ..   .  D =      0 1       c0 c1 ... cn−1  and

     c0 c1 ... cn−1       1  E =   ,  .   ..       0 1 0 

it follows that a code C ⊂ Fn is right polycyclic with associate vector c ∈ Fn if and only if it is invariant under right multiplication by D, and a left polycyclic code with associate vector c ∈ Fn if and only if it is invariant under right multiplication by E. Given a generator polynomial g(x) of degree k < n there is more than one polynomial of degree n such that g(x)| f (x). So, there are multiple matrices of the form of D and E

above that describe the fact that C is polycyclic. This will be clearer in the next section when the connection between polycyclic codes and sequential codes is shown.

5.3 Sequential Codes

Cyclic and constacyclic codes share the properties that if a0 ... an−1 ∈ C then there

exists b ∈ F such that a1 ... an−1b ∈ C as well as d ∈ F such that da0 ... an−2 ∈ C . Codes with these properties are the subject of our next definition. In fact, it can easily be seen [9]

that the correspondences a0 ... an−1 7→ b and a0 ... an−1 7→ d may be assumed to be linear

maps losing only the trivial code C = Fn in doing so. 67

Definition 26 Let C be a linear code of length n over a finite field F. C is right sequential

n if there is a function φ : F → F such that for every a0a1 ... an−1 ∈ C , a1 ... an−1b ∈ C

n where b = φ(a0a1 ... an−1). C is left sequential if there is a function ψ : F → F such that for every a0a1 ... an−1 ∈ C , da0a1 ... an−2 ∈ C where d = ψ(a0a1 ... an−1). C is bi-sequential if it is both right and left sequential. As a convention we also call C = Fn (left, right, bi) sequential. But, in this case φ and ψ are no longer functions. Since φ and ψ are, as a rule, linear functions, each one of them is associated to any vector that realizes

them. Any such vector is called an associate vector of the code.

n Let C ⊂ F be a right sequential code with an associate vector c0c1 ... cn−1. Then C is invariant under right multiplication by the matrix    0 c   0     1 c  T  1  D =    .. .   . .       1 cn−1 

Let H be a check matrix for C . Then 0 = C HT . Since C is invariant under DT we have 0 = C DT HT = C (HD)T . Hence, the dual of C is invariant under right multiplication by D. From the discussion at the end of Section 5.2, we see that the dual is a right polycyclic code. Similarly left sequential codes are duals of left polycyclic codes. This discussion gives the following theorem.

Theorem 5.3.1 Let C be a code. Then C is right (respectively left, bi-) sequential if and only if C ⊥ is right (respectively left, bi-) polycyclic.

Let us consider the case when a generator polynomial (of a right polycyclic code) is divisible by some xl for l > 0. Assume we have a generator polynomial 68

l k−1 k g(x) = gl x + ··· + gk−1 x + x for some 0 < l ≤ k where k = deg(g) and gl , 0. Then      0 ... 0 0 ... 0 gl ... gk−2 gk−1 1     . . .   . . .  G =      0 ... 0 0 gl ... gk−1 1 0 ... 0       0 ... 0 gl ... gk−1 1 0 ...... 0  is a generator matrix for the code generated by g(x). Since gl , 0,

k−1−l k−l gˆ(x) = gl + ··· + gk−1 x + x would generate, as a right polycyclic code, an (n − l, n − k) bi-polycyclic code. From this we see that this code can be shortened to a code generated byg ˆ(x). Sinceg ˆ(x) has non-zero constant, it will generate a bi-polycyclic code. This gives the following result.

Theorem 5.3.2 An (n, k) polycyclic code can be shortened to an [n0, k] bi-polycyclic code for some n0 ≤ n. Furthermore, for right (left) polycyclic codes, the shortening is done on a set of coordinates {0,..., l} (or {l,..., n}) for some l.

Corollary 5.3.3 Every right sequential code is a direct sum of a bi-sequential code and Fl for some l.

Proof. Let C be right sequential. Assume C is not bi-sequential. By Theorem 5.3.1, C ⊥ is a right polycyclic code. By the discussion preceding Theorem 5.3.2, there is a set of coordinates S = {0,..., l − 1} for some 0 < l ≤ n − 1 such that all code words in C ⊥ are zero on S . Assume l is the largest such l. So, in these coordinates C can have any values. This shows that C is the direct sum of Fl and some linear code. We will show this linear code is bi-sequential. By Theorem 1.5.7(i) in [11], the shortening of the dual of a code is

⊥ ⊥ the dual of the code punctured at the same coordinates. Let (C )S be C shortened at S

S ⊥ ⊥ S ⊥ and C be C punctured at S . We know (C )S is bi-polycyclic and (C )S = (C ) . Hence,

S l S C is bi-sequential and C = F ⊕ C .  69

Constacyclic codes are right and left polycyclic and right and left sequential; in addition, as the duals of constacyclic codes are also constacyclic, constacyclic codes share their polycyclicity with their duals. It seems natural to ask when codes satisfy any of a variety of combinations of the properties of sequentiality and polycyclicity. The next two results shows that, in most cases, this type of behavior is limited precisely to constacyclic codes.

Theorem 5.3.4 For a code C ⊆ Fn the following are equivalent:

1-R. C and C ⊥ are right sequential.

2-R. C and C ⊥ are right polycyclic.

3-R. C is right sequential and right polycyclic.

4-R. C is right sequential and bi-polycyclic.

5-R. C is right sequential and left polycyclic with generator polynomial not a monomial of the form xt (t ≥ 1).

1-L. C and C ⊥ are left sequential.

2-L. C and C ⊥ are left polycyclic.

3-L. C is left sequential and left polycyclic.

4-L. C is left sequential and bi-polycyclic.

5-L. C is left sequential and right polycyclic with generator polynomial not a monomial of the form xt (t ≥ 1).

(A) C is right polycyclic and bisequential.

(B) C is left polycyclic and bisequential. 70

(C) C is constacyclic.

Proof. The equivalence of first three statements is immediate from Theorem 5.3.1. To see that the third statement implies the fourth, let g(x) be the generator polynomial of C as a right polycyclic code then, since C is right sequential, the constant term g0 of g(x) cannot be equal to zero. Therefore, by Theorem 5.2.3, we get that C is also left polycyclic. The implication (4-R) ⇒ (5-R) is trivial. To see that (5-R) implies (C), notice that if C and C ⊥ have generator matrices of the forms      1 gn−k−1 ... g0 0 ... 0     .. ..  G =  . .       0 ... 0 1 gn−k−1 ... g0 

and      h0 h1 ... hk−1 1 0 ... 0     .. ..  H =  . .       0 ... 0 h0 h1 ... hk−1 1  X T n i respectively, then, as GH = 0, g(x)h(x) = x + g0h0, where g(x) = gi x , and

X j h(x) = h j x . Now because g(x) is not monomial, neither is g(x)h(x), consequently

−1 −1 g0h0 , 0. If we set a = −g0h0, then C is left a −constacyclic, and hence constacyclic. Furthermore, constacyclic codes clearly satisfy, say, property (2-R). So, the first five statements are equivalent to the last one. Considering that (C) is right-left symmetric and invariant under duals, statements (1-L) throughout (5-L) are all also equivalent to

condition (C). Finally, condition (A) is simply (4-R) on C ⊥ so it is equivalent to the statement that C ⊥ is constacyclic, a statement obviously equivalent to (C). On the other hand, (C) trivially implies (A). Likewise one shows the equivalence of the other properties

with (B).  71

Notice the condition g(x) , xt may not be removed from conditions (5-R), and (5-L) above as seen in the next theorem which completely characterizes one-sided sequential codes which are polycyclic on the opposite side.

Theorem 5.3.5 A code C ⊆ Fn is right sequential and left polycyclic if and only if C is constacyclic or a code of the form C = {~a~0 |~a ∈ Fk,~0 ∈ Fn−k} for some positive integer k ≤ n.

Proof. A right sequential and left polycyclic code C will have a generator polynomial g(x). When g(x) is not a monomial of the form xt (t ≥ 1) then C is constacyclic (by Theorem 5.3.4). The generator g(x) is a constant monomial if and only if C = Fn, i.e. C is of the form in the statement of the theorem with k = 0. Similarly, the cases when g(x) is a non-constant monomial xt for some t ≥ 1 correspond precisely to the remaining cases

with k = n − t.  72 References

[1] E. R. Berlekamp, Algebraic Coding Theory, McGraw-Hill Book Co., New York, 1968.

[2] A. Betten, M. Braun, H. Fripertinger, A. Kohnert, and A. Wassermann Error-Correcting Linear Codes, Springer-Verlag, Berlin, 2006

[3] R. Blahut Algebraic Codes for Data Transmission, Cambridge University Press, Cambridge, 2003

[4] N. Bourbaki, Elements of Mathematics, Algebra II Chapters 4 - 7, Springer-Verlag, Berlin, 2003.

[5] J. Brewer, Power Series over Commutative Rings, Marcel Dekker, Inc., New York, 1981.

[6] C. Chevalley, Introduction to the Theory of Algebraic Functions of One Variable, American Mathematical Society, New York, 1951.

[7] P. Fuhrmann, A Polynomial Approach to Linear Algebra, Springer-Verlag, New York, 1996.

[8] R. Hamming, Error Detecting and Error Correcting Codes, Bell System Tech. J., 29, 147-160 (1950)

[9] X. Hou, S. Lopez-Permouth,´ and B. Parra-Avila, Power Series, Sequential Codes and Periodicity of Sequences, Journal of Pure and Applied Algebra, 213, Issue 6, 1157-1169, (2009).

[10] C. Huffman, Codes and groups, Handbook of coding theory, Vol. II, 1345-1440, North-Holland, Amsterdam, 1998. 73

[11] W. Huffman, and V. Pless, Fundamentals of Error-Correcting Codes, Cambridge University Press, Cambridge, 2003.

[12] G. Hughes, Constacyclic Codes, Cocycles and a u + v|u − v Construction, IEEE Trans. Inform. Theory 46, 674680 (2000).

[13] J. Jensen, A Class of Constacyclic Codes, IEEE Trans. Inform. Theory 40, 951-954 (1994).

[14] A. Krishna, and D. Sarwate, Pseudocyclic maximum-distance-separable codes, IEEE Trans. Inform. Theory, 36, 880-884 (1990).

[15] R. Lidl and H. Niederreiter, Finite Fields, Cambridge University Press, Cambridge, 1997.

[16] S. Ling, and H. Niederreiter, and P. Sole,´ On the algebraic structure of quasi-cyclic codesIV. Repeated roots, Designs, Codes and Cryptography, 38, 337-361 (2006).

[17]S.L opez-Permouth,´ B. Parra-Avila, and S. Szabo, Dual Generalizations of the Concept of Cyclicity of Codes, Advances in Mathematics of Communications, 3, No. 3, 227-234 (2009).

[18] T. Maruta, On the existence of cyclic and pseudo-cyclic MDS codes, European Journal of Combinatorics, 19, 159-174 (1998).

[19] J. Massey, Shift-Register Synthesis and BCH Decoding, IEEE Trans. Inform. Theory, 15, 122-129 (1969).

[20] B. McDonald, Finite Rings with Identity, Marcel Dekker Inc., New York, 1974. 74

[21] C. Meyer, Matrix Analysis and Applied Linear Algebra, SIAM, Philadelphia, 2000.

[22] J. Pedersen, and C. Dahl, Classification of Pseudo-cyclic MDS codes, IEEE Trans. Inform. Theory 37, 365-370 (1991).

[23] V. Pless, Introduction to the Theory of Error-Correcting Codes, John Wiley & Sons, Inc., New York, 1989.

[24] A. Poli, and L. Huguet, Error Correcting Codes, Theory and applications, Prentice Hall International, 1992.

[25] C. Shannon, A Mathematical Theory of Communication, Bell System Tech. J., 27, 379-423, 623-656, 1948.

[26] I. Siap, and N. Aydin, and D. Ray-Chaudhuri, New ternary quasi-cyclic codes with better minimum distances, IEEE Trans. Inform. Theory, 46, 1554-1558 (2000).

[27] H. Stichtenoth, Algebraic Function Fields and Codes, Springer-Verlag, Berlin, 1993.

[28] J. Wolfmann, Projective two-weight irreducible cyclic and constacyclic codes, Finite Fields and their Applications, 14, 351-360, (2008).

[29] http://www.codetables.de/