CONVOLUTIONAL CODES WITH A MATRIX-ALGEBRA WORD-AMBIENT

. Let M n ( F ) be the algebra of n × n matrices over the ﬁnite ﬁeld F . In this paper we prove that the dual code of each ideal convolutional code in the skew-polynomial ring M n ( F )[ z ; σ U ] which is a direct summand as a left ideal, is also an ideal convolutional code over M n ( F )[ z ; σ U T ] and a direct summand as a left ideal. Moreover we provide an algorithm to decide if σ U is a separable automorphism and returns the corresponding separability element, when pertinent.


Introduction and algebraic preliminaries
The algebraic structure of convolutional codes is known since the pioneer paper [2], which can be understood [3] as direct summands of a free module of finite rank F[z] n over the (commutative) polynomial ring F[z], where F is a finite field. We deal with convolutional codes with cyclic structures from the perspective promoted by Gluesing-Luersen and Schmale [3] and extended by López-Permouth and Szabo [9]. An ideal code over the alphabet F is defined to be a left ideal of a skew polynomial ring A[z; σ], where σ is an automorphism of a finite F-algebra A, which is a direct summand as an F[z]-submodule of A[z; σ]. The cyclicity of the code is then expressed by means its word-ambient A and its sentence-ambient A[z; σ]. When the word-ambient is A = F[x]/ x n −1 (with n coprime with the characteristic of F), we obtain the σ-cyclic convolutional codes, whose study has been systematized in [3]. This kind of cyclic structures were introduced by Piret in [11]. According to [9], we could go beyond and consider (possibly non-commutative) semisimple finite algebras as word-ambient. We will focus on the case of a matrix algebra over F.
An open question is left in [9]: when is an ideal code a direct summand of A[z; σ] as a left ideal? This in particular would imply that the code is generated by an idempotent. A sufficient condition appears in [4,5], where it is shown that, if there is a certain separability element for the ring extension F[z] ⊆ A[z, σ], then every ideal code is a direct summand as a left ideal, and an algorithm to compute explicitly the generating idempotent of each ideal code is designed.
In [9], it is shown that, for a large class of skew polynomial rings A[z; σ], when A is a semisimple finite group algebra, the duals of many ideal codes are also ideal codes with respect to a different skew polynomial algebra. In this paper we give an answer for the same question when A is a matrix algebra. We also include an algorithm that computes a separability element of degree zero for the ring extension We also denote p = v −1 .
Let M ∈ M n×m (F) and N ∈ M p×q (F). The Kronecker product M N is the matrix  We refer to [7,Chapter 4] as a source of well known properties of the Kronecker product that we will use. For the convenience of the reader, we summarize some of them. Let M, N, P, Q be matrices over F of appropriate sizes to allow products or inverses. Then The Kronecker product has a direct connection with the tensor product of linear maps. For any pair of F-vector spaces V and W , its tensor product over F is denoted by V ⊗ W . The map M n×m (F) ⊗ M p×q (F) → M np×mq (F), defined by M ⊗ N → M N , is an F-linear isomorphism, see [8,Proposition 4.10]. Let f : F n → F m and g : F p → F q be linear maps represented by the matrices M ∈ M n×m (F) and N ∈ M p×q (F). The matrix representing f ⊗ g with respect to the canonical bases of F n ⊗ F p and F m ⊗ F q is M N . The usual notation for the Kronecker product in the literature is ⊗ instead of . We adopt this change of notation because in Sections 3 and 4 we have to deal with both situations, i.e. given a, b ∈ M n (F), we have to handle both a ⊗ b ∈ M n (F) ⊗ M n (F), and a b ∈ M n 2 (F). Remark 1.1. We denote by K r,s the matrix with respect to the canonical bases of the isomorphism M r (F) ⊗ M s (F) ∼ = M rs (F) provided by the Kronecker product. This is a permutation matrix.
Let A = M n (F) and σ ∈ Aut F (A), where Aut F (A) denotes the set of Fautomorphisms of the algebra A. By the Skolem-Noether Theorem [8,Theorem 4.9 and Corollary], there exists a non singular matrix U ∈ A such that σ(a) = U aU −1 , i.e. σ = σ U , the inner automorphism associated to U . As usual A[z; σ] denotes the algebra of skew polynomials over A. Its elements are polynomials in z (with coefficients on the right) and the product is determined by the rule az = zσ(a), for all a ∈ A. The inclusion F ⊆ A as scalar matrices is extended to an inclusion Its inverse is the corresponding extension of p.

Duality and ideal codes
In this section the word-ambient of the (cyclic) convolutional codes will be the matrix algebra A = M n (F). We know that every algebra automorphism of A is inner, so we fix a non-singular matrix U ∈ A and the corresponding inner automorphism σ U : A → A defined by σ U (a) = U aU −1 . Let R = A[z; σ U ]. Recall from [9] that an ideal code is a left ideal I ≤ R such that v(I) is a direct summand of F[z] n 2 . So, ideal codes are convolutional codes. In our investigation of the dual code of an ideal code, we will make use of left and right annihilator ideals. Let us recall this basic construction.
For each X ⊆ R, the left and the right annihilator of X are defined as Ann r R (X) = {f ∈ R | xf = 0 ∀x ∈ X}, respectively. They are a left ideal and a right ideal of R, respectively. Proof. Let X be any subset of R. By [3, Proposition 2.2] it is enough to prove that if f g ∈ Ann R (X) for some f ∈ F[z] \ {0}, g ∈ R, then g ∈ Ann R (X). This is clear because R is a torsionfree F[z]-module.
Our next aim is to get an efficient representation in coordinates with respect to B of the basic algebraic operations of the word-ambient A (like the product or the action of σ U ). To this end, we use the Kronecker product.
For each F-linear map λ : A → A, let M λ be the matrix of λ with respect to B. Writing the coordinates as row vectors, we know that M λ is defined by for all x ∈ A. By basic linear algebra, For each a ∈ A, let ρ a : A → A be the left A-module map (and hence F-linear) defined by ρ a (x) = xa. In this case we also denote M a = M ρa . Next lemma describes this matrix in terms of the Kronecker product. Proof. For each a = (a ij ) ∈ A, it is straightforward to check that (k rows) a l,0 a l,1 · · · a l,n−1 . . .
i.e. E kl a is the matrix whose only non zero row is the k-th, in which appears the l-th row of a. The result follows directly from this observation.
Let us collect a number of identities needed along the paper.
Lemma 2.3. The following properties hold: are direct consequences of the properties of Kronecker product, Lemma 2.2 and equation (1). Since we also have (vi).
With these tools at hand, we are ready to give a good representation of the relevant operations of the sentence-ambient R. For Since B is also a basis of R as an F[z]-module, it follows that M R (f ) is the matrix associated to the F[z]-module map defined by right multiplication by f , and its rows generate Rf as Given any f ∈ R, we use the notation f = k z k f k .
Proof. This proof is adapted and simplified from [9, Propositions 4.7 and 4.8]. Since Hence (iii) follows from (i).
In order to prove (iv) observe first that the linearity is clear.
the map given by right multiplication by M ; im(·M ) and ker(·M ) are the image and the kernel of this linear map. As we will see, many ideal codes are principal left ideals of R, generated by some skew polynomial f . The following corollary will enable to get the generating matrix of the code from the coefficients of f .
Proof. It follows directly from Proposition 2.4.
We are now in position to address the main problem in this section, namely, under which conditions the dual code of an ideal code with sentence-ambient R is an ideal code with a sentence-ambient of the same kind? To this end, we build a suitable skew polynomial ring S over A.
Definition 2.6. Let θ : A → A given by θ(a) = a T , the transpose of a, which is an F-linear involution. For each σ ∈ Aut F (A), we define σ = θσ −1 θ. Remark 2.7. Direct consequences of this definition are: The automorphism σ U allows to build a new sentence-ambient S = A[z; σ U ] with the same word-ambient. Our aim is to describe the dual code of a given ideal code over R as an ideal code over S. Next propositions are the key-tools for this purpose.
Proof. First observe that, by Lemma 2.3, For each convolutional code C ⊆ F[z] m , recall that the dual code is defined as We can now prove the main result of this section.
Proof. By Lemma 2.1, C is an ideal code because Rf is an annihilator left ideal. Consider the following commutative diagram of F[z]-modules.
The equality Rf = Ann R (hR) is equivalent to say that the first row of (3) is exact.
Since v is an isomorphism of F[z]-modules, the second row is also exact. This implies that C = im(·M R (f )) = ker(·M R (h)). From Proposition 2.10 it follows that Ann r S (S h) = f S and S h = Ann S ( f S), where S = A[z; σ U ]. Using a diagram similar to (3), we get from S h = Ann S ( f S) that is exact, i.e. im(·M S ( h)) = ker(·M S ( f )). By Proposition 2.9 we conclude that im(·M R (h) T ) = ker(·M R (f ) T ). So . By Corollary 2.5 we have that p(C ⊥ ) = S h. By Lemma 2.1, C ⊥ is an ideal code.   When the word-ambient A is the group algebra of a finite group G, the split ideal codes are just the (G, σ)-convolutional codes from [1]. Corollary 2.16. Let A and U be as in Theorem 2.12. If C ⊆ F[z] n 2 is a split ideal code, then C ⊥ is a split ideal code.

Duality and separable automorphisms.
In this section we consider the following problem: When is every ideal code a split ideal code? We will give a sufficient condition, in terms of the non singular matrix U , based on the general results from [4,5].
Let us consider a ring extension C ⊆ R. We use ⊗ C to denote the tensor product of a right and a left C-modules. The multiplication on R can be viewed as an Rbimodule map µ : R ⊗ C R → R. Recall from [6] that C ⊆ R is called separable if µ is an splitting morphism of R-bimodules, i.e. there exists a homomorphism of R-bimodules β : R → R ⊗ C R such that µβ(f ) = f for all f ∈ R. Or equivalently there exists p ∈ R ⊗ C R satisfying rp = pr for all r ∈ R, and µ(p) = 1. Obviously, in this case, β(1) = p. The element p is called a separability element.
The extension F ⊆ M n (F) is separable (see, e.g. [10, Example A, pp. 183]). We provide a complete description of all separability elements of this extension in Proposition 4.1. We feel that such a description may already be known to specialists in separable extensions but we were not able to find any reference to it in the literature.
If the extension F[z] ⊆ A[z; σ U ] is separable, then every ideal code of A[z; σ U ] is a split ideal code. With this motivation, the separability of these ring extensions has been investigated in [4,5]. We collect some results of [4,5] in the next proposition.  The following theorem, which is now a direct consequence of Theorem 2.12 and Proposition 3.2, summarizes the good behavior of ideal codes when σ U is separable.
Theorem 3.4. Let A and σ U be as in Theorem 2.12 such that σ U is a separable automorphism. Then for each ideal code C, C ⊥ is also an ideal code, and both are split ideal codes.
Two questions arise at this point.
• How can we check wether σ U is a separable automorphism?
• If C inherits its ideal structure from A[z; σ U ] then the left ideal structure of C ⊥ comes from A[z; σ U ]. If σ U is separable, is σ U also a separable automorphism?
We are going to answer the second question right now, and we postpone the first one to Section 4.
Then p is a separability element such that σ U ⊗ ( p) = p.
Proof. Let µ : A ⊗ F A → A be the A-bimodule map defined by µ(a ⊗ b) = ab, and let τ : which is equivalent to say that On the other side, which can be rewritten, as a composition of morphisms, as which in terms of elements means that as desired.

Computing a separability element
Let σ U be an algebra automorphism of A = M n (F). Our aim in this section is to design an algorithm for computing a separability element p ∈ A ⊗ F A such that σ ⊗ U (p) = p, whenever it does exist. The set Recall that µ : A ⊗ F A → A is the multiplication map sending a ⊗ b ∈ A ⊗ F A onto its product ab.
In order to design an algorithm to compute our desired separability element, we prove in the following proposition that the set of all separability elements of A ⊗ F A is a affine subspace of E. It is explicitly described.
Proposition 4.1. The set P = {p ij : 0 ≤ i, j ≤ n − 1} is a basis of E as a vector space over F and, hence, E is of dimension n 2 . Let E 0 = {p ∈ E : µ(p) = 0} and E 1 = {p ∈ E : µ(p) = 1}. Then E 0 is a vector subspace of E and E 1 is an affine subspace of E both of dimension n 2 − 1. Moreover E 1 = {p + p 00 : p ∈ E 0 }.
Proof. Let us first observe that P ⊆ E. To this end, it suffices to check that E ab p ij = p ij E ab for all i, j, a, b ∈ {1, . . . , n}, which is an easy computation. The linear independence of P is deduced from the fact that {E ki ⊗ E lj : 0 ≤ i, j, k, l ≤ n − 1} is linearly independent. In fact, this set is a basis of A ⊗ F A as an F-vector subspace, so that, given any p ∈ E, there exists a unique representation where α kl ij ∈ F for all i, j, k, l ∈ {0, . . . , n − 1}. Now, imposing the conditions E ab p = pE ab for every a, b ∈ {0, . . . , n − 1} in (5) and equalizing coefficients, we get that, for every i, j ∈ {0, . . . , n − 1}, α kl ij = 0 if k = l, and α kk ij = α ll ij for any k, l = 0, . . . , n − 1. Therefore, α 00 ij p ij , and thus P spans E.
Observe that E 1 is a non empty set. Indeed, p ii ∈ E 1 for every i = 0, . . . , n − 1. On the other hand, µ(p) ∈ F for all p ∈ E: if a ∈ A, then aµ(p) = µ(ap) = µ(pa) = µ(p)a, and, hence, µ(p) is a scalar matrix. Therefore, the restriction of µ to E gives a linear form µ |E : E → F, hence E 0 is the vector subspace defined by the linear equation µ |E (p) = 0, E 1 becomes the affine hyperplane of E given by the condition µ |E (p) = 1, and E 1 = {p + p 00 : p ∈ E 0 }. Since dim P = n 2 , both dimensions of E 0 and E 1 are n 2 − 1.
We denote the linear span of any subset X of an F-vector space by X .

Algorithm 1 Separable Automorphism
Input: A regular matrix U ∈ A providing the inner automorphism σ U Output: A separability element invariant under σ ⊗ U if σ U is a separable automorphism. 0 otherwise.  Proof. Recall that A ⊗ F A is isomorphic to M n 2 (F), via the Kronecker product, as vector spaces. Under this isomorphism E ki E jl = E kn+j,in+l ∈ M n 2 (F). By Lemma 2.3, M σ U = U T U −1 , and by the properties of the Kronecker product Now σ U is a separable automorphism if and only if there exists p ∈ E 1 such that σ ⊗ U (p) = p. This is equivalent to the existence of q ∈ E 0 such that σ ⊗ U (p 00 + q) = p 00 +q, i.e. (σ ⊗ it follows that p = i =j α ij p ij + i α i (p 00 −p ii ) ∈ E 0 satisfies σ ⊗ U (p 00 +p) = p 00 +p, hence Algorithm 1 works correctly.

From this,
Observe that M S ( 1 − e) = M R (1 − e) T as expected.
Next example illustrates the execution of Algorithm 1 for two automorphisms. We will conclude that the first one is separable, and a corresponding separability element is provided, whilst the second automorphism is not.  Since v(p 00 ) · (M σ ⊗ U − I 16 ) = (1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1) is the sum of the first two rows of the matrix generating G , Algorithm 1 returns p 00 + p 01 + p 10 . Hence σ U is a separable automorphism. Finally, let us consider the inner automorphism associated to V = ( 1 1 0 1 ). Then which does not belong to G . The algorithm returns 0 and σ V is not a separable automorphism.

Conclusions and future work
In this paper we improve the knowledge of the algebraic structure of some convolutional codes. Concretely, we deal with split ideal codes, in the sense of Definition 2.15, over the matrix algebra A = M n (F). The main result asserts that if C is a split ideal code of R = A[z; σ U ], where U ∈ A is a regular matrix, then the dual code C ⊥ is also a split ideal code of the algebra S = A[z; σ U ]. Furthermore, a generating matrix for C ⊥ can be computed from the generating idempotent of C. If the automorphism σ U is separable, then every ideal code is a split ideal code ( [4,5]). We design an algorithm (Algorithm 1) to compute a separability element in A ⊗ F A making σ U a separable automorphism whenever it does exist.
Future work should extend Theorem 2.12 and Algorithm 1 to more general classes of semisimple algebras A over finite fields. Some special cases when A is a group algebra are considered in [9]. On the other hand, following the theory developed in this paper, the separability elements we are looking for have degree zero over z, viewed in A[z; σ U ] ⊗ F[z] A[z; σ U ]. Example 5.2 shows that for some automorphisms, such a separable element does not exist. An interesting problem is to study if the extension F[z] ⊆ A[z; σ U ] is separable finding separability elements of higher degree. This could help to determine if any ideal code over a semisimple algebra is a split ideal code, as conjectured in [4,9].