ON THE DUALITY AND THE DIRECTION OF POLYCYCLIC CODES

. Polycyclic codes are ideals in quotients of polynomial rings by a principal ideal. Special cases are cyclic and constacyclic codes. A MacWilliams relation between such a code and its annihilator ideal is derived. An inﬁnite family of binary self-dual codes that are also formally self-dual in the classical sense is exhibited. We show that right polycyclic codes are left polycyclic codes with diﬀerent (explicit) associate vectors and characterize the case when a code is both left and right polycyclic for the same associate polynomial. A similar study is led for sequential codes. is a unit we derive a MacWilliams formula between the code and its annihilator. We construct binary self annihilating codes that are also formally self-dual codes in the classical sense that their weight enumerator is a ﬁxed point of the MacWilliams transform. In particular we show that shortened quadratic residue codes are formally self-dual. In the part


Introduction
Polycyclic codes (formerly known as pseudo-cyclic [10]) over a finite field F are defined as ideals in R f = F [x]/(f ) where f = 0 is arbitrary in F [x] and were studied under that name in [7]. Thus the choice f = x n − 1 leads to cyclic codes of length n. Similarly f = x n − a leads to constacyclic codes. It is a classical exercise to show that polycyclic codes are shortened cyclic codes and conversely [10, p.241]. A possible engineering application is burst-error correction [5]. Still polycyclic codes never enjoyed the same popularity that cyclic codes have. One possible reason is that, for a generic f, the dual of a polycyclic code is not polycyclic.
In this paper, we introduce an alternate form of dual that is the annihilator of the ideal. Under the condition that f (0) is a unit we derive a MacWilliams formula between the code and its annihilator. We construct binary self annihilating codes that are also formally self-dual codes in the classical sense that their weight enumerator is a fixed point of the MacWilliams transform. In particular we show that shortened quadratic residue codes are formally self-dual. In the second part of the paper, we study the notion of one-sided polycylic codes and the same notion for sequential codes, the dual class of polycylic codes.
The material is organized as follows. Section 2 collects the necessary notations and definitions. Section 3 studies the duality in the sense of annihilators. In Section 4, infinite families of annihilator self-dual polycyclic codes that are not self-dual are constructed. In Section 5, we show that right polycyclic codes with associate vector c are left polycyclic for another polynomial c. We characterize the case when c = c. In Section 6, we do a similar study for sequential codes which are the dual class of polycyclic codes.

Notation and definitions
2.1. Ring theory. Define an inner product on R f by the rule Where g, h ∈ R f are represented by polynomials of degree less than the degree of f . If C ≤ R f is a polycyclic code, then we define its annihilator dual C 0 by the formula C 0 = {g ∈ R f | ∀h ∈ C, gh(0) = 0}. The name is justified by the following result. Recall that the annihilator Ann(I) of an ideal I in a commutative ring R is Ann(I) = {x ∈ R| ∀y ∈ I, xy = 0}.
Proof. By definition Ann(C) ⊆ C 0 . By hypothesis C = g , with f a multiple of g. This implies Ann(C) = f /g , and both Ann(C) and C 0 have dimension deg(g). The result follows.

2.2.
Formally self-dual codes. The weight enumerator of a code C ≤ F n q is where A i counts the number of codewords of weight i.
A binary code C is said to be formally self-dual (fsd) if Thus a self-dual code is fsd but not conversely. Still, invariant theory can be applied to study the weight enumerators of fsd codes. For more background, we refer to [1,2,4,6].

Duality
We begin with an easy lemma. Proof. We must show that the orthogonal of R f is zero. Let g be an element in that space. Since g ⊥ 1 we see that g = xg for some g . Observe that, by hypothesis, x is invertible in R f with inverse −(f (x) − f (0))(f (0)) −1 , and by induction that x i is invertible for all i. Considering successively g ⊥ x −i for i = 0, . . . , deg(f ) − 1, we obtain the result.
We set up a Fourier Tranform on a function φ with domain R f by the formula where ψ F denotes the standard additive character of F defined by ψ(x) = ω T r(x) , with ω a complex primitive root of unity of order p, the characteristic of F.
Proof. We expand the right hand side of the summation formula as follows.
Now, by Lemma 1 and the orthogonality of group characters, the second sum vanishes. The result follows.
We are ready for the main result of this section, an anlogue of the MacWilliams formula.
Proof. Follows by the preceding lemma applied to φ : d → x n−w(d) y w(d) .

Formally self-dual codes
In this section, we assume F = GF (2). We begin with a classic Lemma. Recall that a code is homogeneous if sets of words of any fixed weight hold a 1-design. We denote by C/i and C − i the shortened and punctured codes of C at coordinate i. Lemma 3. If C is homogeneous, then for any coordinate i the weight enumerators of its punctured and shortened codes are, respectively Proof. This is a restatement of Prange's theorem [4, Th. 7.6.1] in terms of weight enumerators.
Theorem 2. If C is an homogeneous code of distance > 1, obtained by puncturing from a fsd homogeneous code of distance > 1, then any of its shortened codes is fsd.
Proof. Let E denote the homogeneous code from which C is obtained and let W = W E , S = W C and T = W C/1 . Since E is fsd we get Applying Lemma 3 twice we get and, from the right hand side of the transformation law for W, eventually By substitution in that equality we obtain Applying Lemma 3 again to the definition of W, S, T we identify the right hand side of the last equality as T (x, y). The result follows.
There is a fsd code with distance 2, length 6, obtained for g = x 3 + x + 1, the generator polynomial of the [7,4,3] Hamming code. This example is generalized in the two following corollaries. Corollary 1. Let QR(p) denote the binary quadratic residue code attached to the prime p. The shortening of QR(p) at any place is a self-annihilating code which is formally self-dual.
Proof. The generator polynomial g(x) of QR(p) as a cyclic code of length p is also the generator polynomial of its shortening modulo g 2 . Homogeneity properties come from the fact that the automorphism group of the extended quadratic residue code XQR(p) contains P SL(2, p) a group that is two-transitive. The fsd property of XQR(p) is well known, since this code is either self-dual or isodual depending on the congruence class of p modulo 4 [8]. The result follows then by the preceding theorem applied to C = QR(p). The minimum distance of QR(p) is trivially > 1 by the BCH bound, and so is, as a consequence, that of XQR(p).

Remarks:
• The shortened cyclic codes constructed by the above theorem cannot be selfdual; they contain odd weight vectors, being obtained by shortening and puncturing from an even weight code. • There are shortened cyclic codes of rate one half that are not isodual. For instance shortening the binary cyclic code of length 31 and generator polynomial x 15 + x 7 + x 3 + x + 1 on its first coordinate yields a [30, 15, 5] code that is neither self-dual nor isodual. In fact, it is not even formally self-dual, as it contains 26 codewords of weight 5, and its dual only 6. If C is a polycyclic code with C = C 0 we say that C is a self-annihilator. Proof. If g 2 = 0 then it is immediate that C ⊆ C 0 . Then we have that the deg(g) = deg(f ) 2 . Hence the dimension of C is precisely half the dimension of the ambient space. Therefore C = C 0 .
A code over a field is said to be isodual if C and C ⊥ are equivalent codes. It is self-dual if C = C ⊥ .

Proposition 2.
If C is self-annihilator and cyclic then C is isodual.
Proof. If C is cyclic then the generator polynomial of the annihilator and the generator polynomial of the dual are related by taking the reciprocal polynomial.
A polycyclic code over a field is said to be annihilating isodual if C and C 0 are equivalent codes.

Proposition 3.
If C is a self-dual cyclic code then C is annihilating isodual.
Proof. The proof is identical to the proof of Proposition 2.

Polycyclic codes
In this section (Theorem 4) we provide a new proof of Theorem 2.4 in [7]. We do so to serve our purpose of determining the non-existence of self-dual left-right polycyclic codes (Theorem 6). That proof requires an explicit description of the associate vector d when a right polycyclic code is viewed as left-polycyclic. Such explicit description was not given in the original proof of Theorem 2.4 in [7].
We say that a linear code C over a field F is right polycyclic if there exists a vector c = (c 0 , c 1 , . . . , c n−1 ) ∈ F n such that for every (a 0 , a 1 , . . . , a n−1 ) ∈ C we have (0, a 0 , a 1 , . . . , a n−2 ) + a n−1 (c 0 , c 1 , . . . , c n−1 ) ∈ C. Similarly, we say that a linear code C over a field F is left polycyclic if there exists a vector c = (c 0 , c 1 , . . . , c n−1 ) ∈ F n such that for every (a 0 , a 1 , . . . , a n−1 ) ∈ C we have (a 1 , . . . , a n−1 , 0) + a 0 (c 0 , c 1 , . . . , c n−1 ) ∈ C. We refer to c as an associate vector of C. Note that such a vector may be not unique.
Associate c with the polynomial c(x) = c 0 +c 1 x+c 2 x 2 +· · ·+c n−1 x n−1 . Let f (x) = x n − c(x). It is shown in [7] that right polycyclic codes are ideals in F [x]/ f (x) with the usual correspondence between vectors and polynomials and left polycyclic codes are ideals in F [x]/ f (x) with the reciprocal correspondence that associates c with the polynomial c(x) = c n−1 + c n−2 x + c n−3 x 2 + · · · + c 0 x n−1 . Hence both of these types of codes are polycyclic codes in terms of our original definition.
It is shown in [7], that a right polycyclic code with associate vector c is held invariant by right multiplication of the matrix D of the form: It is also shown in [7], that a left polycyclic code with associate vector d is held invariant by right multiplication of the matrix E of the form: Lemma 4. Let D be a matrix with entries from the finite field F . If D is of the form given in Equation (1) with c 0 = 0, then it is invertible, and its inverse for j < n − 1 and

Proof. Multiply the two matrices together and get
Then by making the last row equal to (0, 0, . . . , 0, 1) we have the result.
Theorem 4. Let C be a code over the finite field F . If C is a right polycyclic code for the polynomial c(x) = c 0 + c 1 x + · · · + c n−1 x n−1 with c 0 = 0, then C is a left polycyclic code for the polynomial d( for j < n − 1 and d n−1 = 1 c0 . Proof. Let C be a right polycyclic code for the polynomial c(x) = c 0 + c 1 x + · · · + c n−1 x n−1 then CD = C, where D is the matrix given in Equation 1. Then multiplying on the right by D −1 we have CDD −1 = CD −1 which implies C = CD −1 and then C is a left polycyclic code since by Lemma 4, D −1 is of the form for the invariant of a right polycyclic code.
Remark: The proof of Theorem 4 requires an explicit description of the associate vector d when a right polycyclic code is viewed as left-polycyclic and such an explicit description was not given in the original proof of Theorem 2.4 in [7]. It follows from Lemma 4 that Namely, the first part gives d n−1 and the second part gives the rest. We say that a code is left-right polycyclic, if it is both left polycyclic and right polycyclic for the same polynomial c(x). The next result characterizes such codes by their associate polynomial. Proof. In this case we have c(x) = d(x). Then by Equation 3, we have We need this expression to be a polynomial, hence we need the denominator to divide the numerator. The root of the denominator is −1 c0 . We need this to also be a root of the numerator. That is we need ( −1 c0 ) n + c 0 = 0. This simplifies to (−1) n+1 = c n+1 0 . Then multiplying both sides by −1 gives the result.
Theorem 6. There are no self-dual left-right polycyclic codes.
Proof. If C = C ⊥ then C and C ⊥ are left polycyclic codes which implies C is constacyclic by Theorem 3.5 in [7]. However, our polynomial c(x) for left-right polycyclic codes is never the polynomial for constacyclic codes.

Sequential codes
Let C be a linear code in F n , F a field. The code C is right sequential if there is a function φ : F n → F such that for every (a 0 , a 1 , . . . , a n−1 ) ∈ C we have that (a 1 , a 2 , . . . , a n−1 , b) ∈ C where b = φ((a 0 , a 1 , . . . , a n−1 )). The code C is left sequential if there is a function ψ : F n → F such that for every (a 0 , a 1 , . . . , a n−1 ) ∈ C we have that (d, a 0 , a 1 , a 2 , . . . , a n−2 ) ∈ C where d = ψ((a 0 , a 1 , . . . , a n−1 )). The code C is bisequential if it is both right and left sequential. The functions φ and ψ are, as a rule, linear functions. Each one of them is associated with any vector that realizes them. This vector is known as the associate vector of the code.
It is shown in [7], that a right sequential code with associate vector c is held invariant by right multiplication of the matrix D T of the form: It is also shown in [7], that a left sequential code with associate vector d is held invariant by right multiplication of the matrix E T of the form: Theorem 7. Let C be a code over the finite field F . If C is a right sequential code for the polynomial c(x) = c 0 + c 1 x + · · · + c n−1 x n−1 with c 0 = 0, then C is a left sequential code for the polynomial d( for j < n − 1 and d n−1 = 1 c0 . Proof. If the code C is right sequential then we have that CD T = C where D T is given in Equation 4. Then by multiplying on the right (D T ) −1 we have C = C(D T ) −1 .
We note that (D T ) −1 = (D −1 ) T . Then the computation follows exactly as in Theorem 4.
We say that a code is left-right sequential, if it is both left polycyclic and right polycyclic for the same polynomial c(x). Proof. Follows exactly as in Theorem 5.
Let C be a code with parity check matrix H. Then 0 = CH T . If C is right sequential then 0 = CD T H T = C(HD) T . Therefore the dual of C is invariant by multiplication by D on the right and hence is right polycyclic. Notice, however, that they have the same associate vector. It is easy to see that the same is true for left sequential and left polycyclic. Since it is the same associate vector we have the following theorem.
Theorem 9. A code C over a field is left-right polycyclic if and only if C ⊥ is left-right sequential.

Conclusion and open problems
We have introduced the notion of the annihilator code of a polycyclic code which behaves like the dual of a standard cyclic code in many ways. For example, we derive MacWilliams relations which relate the weight enumerator of the code with the weight enumerator of its annihilator. The class of self annihilator codes deserves more attention. We have shown that right polycyclic codes are left polycyclic for different associate polynomials and characterized the case when they are equal. We conducted a similar study for sequential codes. Extension of these results to skew polynomial rings warrants further study.