1
The key equation for codes from order domains
John B. Little
Department of Mathematics and Computer Science,
College of the Holy Cross,
Worcester, MA 01610, USA
E-mail:
[email protected]
We study a sort of analog of the key equation for decoding Reed-Solomon and
BCH codes and identify a key equation for all codes from order domains which
have finitely-generated value semigroups (the field of fractions of the order domain may have arbitrary transcendence degree, however). We provide a natural
interpretation of the construction using the theory of Macaulay’s inverse systems and duality. O’Sullivan’s generalized Berlekamp-Massey-Sakata (BMS)
decoding algorithm applies to the duals of suitable evaluation codes from these
order domains. When the BMS algorithm does apply, we will show how it can
be understood as a process for constructing a collection of solutions of our key
equation.
Keywords: order domain, key equation, Berlekamp-Massey-Sakata algorithm
1. Introduction
The theory of error control codes constructed using ideas from algebraic geometry (including the geometric Goppa and related codes) has undergone a
remarkable extension and simplification with the introduction of codes constructed from order domains. This development has been largely motivated
by the structures utilized in the Berlekamp-Massey-Sakata decoding algorithm with Feng-Rao-Duursma majority voting for unknown syndromes.
The order domains, see [1–4], form a class of rings having many of the
same properties as the rings R = ∪∞
m=0 L(mQ) underlying the one-point
geometric Goppa codes constructed from curves. The general theory gives
a common framework for these codes, n-dimensional cyclic codes, as well as
many other Goppa-type codes constructed from varieties of dimension > 1.
Moreover, O’Sullivan has shown in [5] that the Berlekamp-Massey-Sakata
decoding algorithm (abbreviated as the BMS algorithm in the following)
and the Feng-Rao procedure extend in a natural way to a suitable class of
2
codes in this much more general setting.
For the Reed-Solomon codes, the Berlekamp-Massey decoding algorithm
can be phrased as a method for solving a key equation. For a Reed-Solomon
code with minimum distance d = 2t + 1, the key equation has the form
f S ≡ g mod hX 2t i.
(1)
Here S is a known univariate polynomial in X constructed from the error
syndromes, and f, g are unknown polynomials in X. If the error vector e
satisfies wt(e) ≤ t, there is a unique solution (f, g) with deg(f ) ≤ t, and
deg(g) < deg(f ) (up to a constant multiple). The polynomial f is known as
the error locator because its roots give the inverses of the error locations;
the polynomial g is known as the error evaluator because the error values
can be determined from values of g at the roots of f , via the Forney formula.
O’Sullivan has introduced a generalization of this key equation for onepoint geometric Goppa codes from curves in [6] and shown that the BMS
algorithm can be modified to compute the analogs of the error-evaluator
polynomial together with error locators.
Our main goal in this article is to identify an analog of the key equation Eq. (1) for codes from general order domains, and to give a natural
interpretation of these ideas in the context of Macaulay’s inverse systems
for ideals in a polynomial ring (see [7–10]) and the theory of duality. We
will only consider order domains whose value semigroups are finitely generated. In these cases, the ring R can be presented as an affine algebra
R∼
= F[X1 , . . . , Xs ]/I, where the ideal I has a Gröbner basis of a very particular form (see [3]). Although O’Sullivan has shown how more general
order domains arise naturally from valuations on function fields, it is not
clear to us how our approach applies to those examples. On the positive
side, by basing all constructions on algebra in polynomial rings, all codes
from these order domains can be treated in a uniform way, Second, we also
propose to study the relation between the BMS algorithm and the process
of solving this key equation in the cases where BMS is applicable.
Our key equation generalizes the key equation for n-dimensional cyclic
codes studied by Chabanne and Norton in [12]. Results on the algebraic
background for their construction appear in [13]. See also [14] for connections with the more general problem of finding shortest linear recurrences,
and [15] for a generalization giving a key equation for codes over commutative rings.
The present article is organized as follows. In Section 2 we will briefly
review the definition of an order domain, evaluation codes and dual evalu-
3
ation codes. Section 3 contains a quick summary of the basics of Macaulay
inverse systems and duality. In Section 4 we introduce the key equation and
relate the BMS algorithm to the process of solving this equation.
2. Codes from Order Domains
In this section we will briefly recall the definition of order domains and
explain how they can be used to construct error control codes. We will use
the following formulation.
Definition 2.1. Let R be a Fq -algebra and let (Γ, +, ≻) be a well-ordered
semigroup. We assume the ordering is compatible with the semigroup operation in the sense that if a ≻ b and c is arbitrary in Γ, then a + c ≻ b + c. An
order function on R is a surjective mapping ρ : R → {−∞} ∪ Γ satisfying:
(1)
(2)
(3)
(4)
ρ(f ) = −∞ ⇔ f = 0,
ρ(cf ) = ρ(f ) for all f ∈ R, all c 6= 0 in Fq ,
ρ(f + g) max≻ {ρ(f ), ρ(g)},
if ρ(f ) = ρ(g) 6= −∞, then there exists c 6= 0 in Fq such that ρ(f ) ≺
ρ(f − cg),
(5) ρ(f g) = ρ(f ) + ρ(g).
We call Γ the value semigroup of ρ.
Axioms 1 and 5 in this definition imply that R must be an integral domain.
In the cases where the transcendence degree of R over Fq is at least 2, a ring
R with one order function will have many others too. For this reason an
order domain is formally defined as a pair (R, ρ) where R is an Fq -algebra
and ρ is an order function on R. However, from now on, we will only use
one particular order function on R at any one time. Hence we will often
omit it in refering to the order domain, and we will refer to Γ as the value
semigroup of R. Several constructions of order domains are discussed in [3]
and [4].
The most direct way to construct codes from an order domain given
by a particular presentation R ∼
= Fq [X1 , . . . , Xs ]/I is to generalize Goppa’s
construction in the case of curves.
Let XR be the variety V (I) ⊂ As and let
XR (Fq ) = {P1 , . . . , Pn }
be the set of Fq -rational points on XR . Define an evaluation mapping
ev : R → Fnq
f 7→ (f (P1 ), . . . , f (Pn ))
4
Let V ⊂ R be any finite-dimensional vector subspace. Then the image
ev(V ) ⊆ Fnq will be a linear code in Fnq . One can also consider the dual code
ev(V )⊥ .
Of particular interest here are the codes constructed as follows (see
[5]). Let R be an order domain whose value semigroup Γ can be put into
order-preserving one-to-one correspondence with Z≥0 . We refer to such Γ as
Archimedean value semigroups because it follows that for all nonconstant
f ∈ R and all g ∈ R there is some n ≥ 1 such that ρ(f n ) ≻ ρ(g). This
property is equivalent to saying that the corresponding valuation of K =
QF (R) has rank 1. O’Sullivan gives a necessary and sufficient condition for
this property when ≻ is given by a monomial order on Zr≥0 in [2], Example
1.3. Let ∆ be the ordered basis of R with ordering by ρ-value. Let ℓ ∈ N
and let Vℓ be the span of the first ℓ elements of ∆. In this way, we obtain
evaluation codes Evℓ = ev(Vℓ ) and dual codes Cℓ = Evℓ⊥ for all ℓ.
O’Sullivan’s generalized BMS algorithm is specifically tailored for this
last class of codes from order domains with Γ Archimedean. If the Cℓ codes
are used to encode messages, then the Evℓ codes describe the parity checks
and the syndromes used in the decoding algorithm.
3. Preliminaries on Inverse Systems
A natural setting for our formulation of a key equation for codes from order domains is the theory of inverse systems of polynomial ideals originally
introduced by Macaulay. There are several different versions of this theory. For modern versions using the language of differentiation operators,
see [9, 10]. Here, we will summarize a number of more or less well-known
results, using an alternate formulation of the definitions that works in any
characteristic. A reference for this approach is [8].
Let k be a field, let S = k[X1 , . . . , Xs ] and let T be the formal power
series ring k[[X1−1 , . . . , Xs−1 ]] in the inverse variables. T is an S-module
under a mapping
c:S×T → T
(f, g) 7→ f · g,
sometimes called contraction, defined as follows. First, given monomials X α
in S and X −β in T , X α · X −β is defined to be X α−β if this is in T , and 0
otherwise. We then extend by linearity to define c : S × T → T .
Let Homk (S, k) be the usual linear dual vector space. It is a standard
5
fact that the mapping
φ : Homk (S, k) → T
X
Λ 7→
Λ(X β )X −β
β∈Zs≥0
is an isomorphism of S-modules, if we make Homk (S, k) into an S-module
in the usual way by defining (qΛ)(p) = Λ(qp) for all polynomials p, q in S.
In explicit terms, the k-linear form on S obtained from an element g ∈ T
is a mapping Λg defined as follows. For all f ∈ S,
Λg (f ) = (f · g)0 ,
where (t)0 denotes the constant term in t ∈ T . In the following we will
identify elements of T with their corresponding linear forms on S.
The theory of inverse systems sets up a correspondence between ideals
in S and submodules of T . All such ideals and submodules are finitely
generated and we will use the standard notation hf1 , . . . , ft i for the ideal
generated by a collection of polynomials fi ∈ S.
For each ideal I ⊆ S, we can define the annihilator, or inverse system,
of I in T as
I ⊥ = {Λ ∈ T : Λ(p) = 0, ∀ p ∈ I}.
It is easy to check that I ⊥ is an S-submodule of T under the module
structure defined above. Similarly, given an S-submodule H ⊆ T , we can
define
H ⊥ = {p ∈ S : Λ(p) = 0, ∀ Λ ∈ H},
and H ⊥ is an ideal in S. The key point in this theory is the following duality
statement.
Theorem 3.1. The ideals of S and the S-submodules of T are in inclusionreversing bijective correspondence via the constructions above, and for all
I, H we have:
(I ⊥ )⊥ = I,
(H ⊥ )⊥ = H.
See [8] for a proof.
We will be interested in applying Theorem 3.1 when I is the ideal of
some finite set of points in the n-dimensional affine space over k (e.g. when
k = Fq and I is an error-locator ideal arising in decoding – see Section 4
below). In the following, we will use the notation mP for the maximal ideal
of S corresponding to the point P ∈ k s .
6
Theorem 3.2. Let P1 , . . . , Pt be points in k s and let
I = mP1 ∩ · · · ∩ mPt .
The submodule of T corresponding to I has the form
H = I ⊥ = (mP1 )⊥ ⊕ · · · ⊕ (mPt )⊥ .
Proof. In Proposition 2.6 of [11], Geramita shows that (I ∩ J)⊥ = I ⊥ + J ⊥
for any pair of ideals. The idea is that I ⊥ and J ⊥ can be constructed degree
by degree, so the corresponding statement from the linear algebra of finitedimensional vector spaces applies. The equality (I + J)⊥ = I ⊥ ∩ J ⊥ also
holds from linear algebra (and no finite-dimensionality is needed). The sum
in the statement of the Lemma is a direct sum since mPi + ∩j6=i mPj = S,
hence (mPi )⊥ ∩ Σj6=i (mPj )⊥ = {0}.
We can also give a concrete description of the elements of (mP )⊥ .
Theorem 3.3. Let P = (a1 , . . . , as ) ∈ As over k, and let Li be the coordinate hyperplane Xi = ai containing P .
(1) (mP )⊥ is the cyclic S-submodule of T generated by
X
hP =
P u X −u ,
u∈Zs≥0
where if u = (u1 , . . . , us ), P u denotes the product au1 1 · · · aus s (X u evaluated at P ).
(2) f · hP = f (P )hP for all f ∈ S, and the submodule (mP )⊥ is a onedimensional vector space over k.
(3) Let ILi be the ideal hXi − ai i in S (the ideal of Li ). Then (ILi )⊥ is the
P∞
submodule of T generated by hLi = j=0 aji Xi−j .
Qs
(4) In T , we have hP = i=1 hLi .
Proof. (1) First, if f ∈ mP , and g ∈ S is arbitrary then
Λg·hP (f ) = (f · (g · hP ))0 = ((f g) · hP )0 = f (P )g(P ) = 0.
Hence the S-submodule hhP i is contained in (mP )⊥ . Conversely, if h ∈
(mP )⊥ , then for all f ∈ mP ,
0 = Λh (f ) = (f · h)0 .
An easy calculation using all f of the form f = xβ − aβ ∈ mP shows that
h = chP for some constant c. Hence (mP )⊥ = hhP i.
7
(2) The second claim follows by a direct computation of the contraction
product f · hp .
(3) Let f ∈ ILi (so f vanishes at all points of the hyperplane Li ), and
let g ∈ S be arbitrary. Then
Λg·hLi (f ) = (f · (g · hLi ))0 = ((f g) · hLi )0
= f (0, . . . , 0, ai , 0, . . . , 0)g(0, . . . , 0, ai , 0, . . . , 0) = 0,
since the only nonzero terms in the product ((f g) · hLi ) come from monomials in f g containing only the variable Xi . Hence hhLi i ⊂ T is contained
in IL⊥i . Then we show the other inclusion as in the proof of (1).
(4) We have mP = IL1 +· · ·+ILs . Hence (mP )⊥ = (IL1 )⊥ ∩· · ·∩(ILs )⊥ ,
and the claim follows. We note that a more explicit form of this equation
can be derived by the formal geometric series summation formula:
hP =
X
P u X −u =
u∈Zs≥0
s
Y
s
Y
1
=
hLi .
1 − ai /Xi
i=1
i=1
Both the polynomial ring S and the formal power series ring T can be
viewed as subrings of the field of formal Laurent series in the inverse variables,
K = k((X1−1 , . . . , Xs−1 )),
which is the field of fractions of T . Hence the (full) product f g for f ∈ S
and g ∈ T is an element of K. The contraction product f · g is a projection
of f g into T ⊂ K. We can also consider the projection of f g into S+ =
hX1 , . . . , Xs i ⊂ S ⊂ K under the linear projection with kernel spanned by
all monomials not in S+ . We will denote this by (f g)+ .
4. The Key Equation and its Relation to the BMS
Algorithm
Let C be one of the codes C = ev(V ) or ev(V )⊥ constructed from an
order domain R ∼
= Fq [X1 , . . . , Xs ]/I. Consider an error vector e ∈ Fnq
(where entries are indexed by the elements of the set XR (Fq )). In the
usual terminology, the error-locator ideal corresponding to e is the ideal
Ie ⊂ Fq [X1 , . . . , Xs ] defining the set of error locations:
Ie = {f ∈ Fq [X1 , . . . , Xs ] : f (P ) = 0, ∀ P s.t. eP 6= 0}.
We will use a slightly different notation and terminology in the following
because we want to make a systematic use of the observation that this ideal
8
depends only on the support of e, not on the error values. Indeed, many
different error vectors yield the same ideal defining the error locations. For
this reason we will introduce E = {P : eP 6= 0}, and refer to the errorlocator ideal for any e with supp(e) = E as IE .
For each monomial X u ∈ Fq [X1 , . . . , Xs ], we let
X
Eu = he, ev(X u )i =
eP P u
(2)
P ∈XR (Fq )
be the corresponding syndrome of the error vector. (As in Theorem 3.3, P u
is shorthand notation for the evaluation of the monomial X u at P .)
In the practical decoding situation, of course, for a code C = ev(V )⊥
where V is a subspace of R spanned by some set of monomials, only the
Eu for the X u in a basis of V are initially known from the received word.
In addition, the elements of the ideal I +hX1q −X1 , . . . , Xsq −Xs i defining
the set XR (Fq ) give relations between the Eu . Indeed, the Eu for u in the
ordered basis ∆ for R with all components ≤ q − 1 determine all the others,
and these syndromes still satisfy additional relations. Thus the Eu are, in
a sense, highly redundant.
To package the syndromes into a single algebraic object, following [12],
we define the syndrome series
X
Eu X −u
Se =
u∈Zs≥0
in the formal power series ring T = Fq [[X1−1 , . . . , Xs−1 ]]. (This depends both
on the set of error locations E and on the error values.) As in Section 3, we
have a natural interpretation for Se as an element of the dual space of the
ring S = Fq [X1 , . . . , Xs ].
The following expression for the syndrome series Se will be fundamental.
We substitute from Eq. (2) for the syndrome Eu and change the order of
summation to obtain:
X
X
X
Se =
Eu X −u =
eP P u X −u
u∈Zn
≥0
=
X
P ∈XR (Fq )
u∈Zn
≥0 P ∈XR (Fq )
eP
X
u∈Zn
≥0
P u X −u =
X
eP hP ,
P ∈XR (Fq )
where hP is the generator of (mP )⊥ from Theorem 3.3. The sum here
taking the terms with eP 6= 0, gives the decomposition of Se in the direct
sum expression for IE⊥ as in Theorem 3.2.
The first statement in the following Theorem is well-known; it is a translation of the standard fact that error-locators give linear recurrences on the
9
syndromes. But to our knowledge, this fact has not been considered from
exactly our point of view in this generality (see [16] for a special case).
Theorem 4.1. With all notation as above,
(1) f ∈ IE if and only if f · Se = 0 for all error vectors e with supp(e) = E.
(2) For each e with supp(e) = E, IE = hSe i⊥ in the duality from Theorem 3.1.
(3) If e, e′ are two error vectors with the same support, then hSe i = hSe′ i
as submodules of T .
Proof. For (1), we start from the expression for Se from Eq. (3). Then by
Theorem 3.3, we have
X
X
eP f (P )hP .
eP (f · hP ) =
f · Se =
P ∈E
P ∈E
If f ∈ IE , then clearly f ·Se = 0 for all choices of error values eP . Conversely,
if f · Se = 0 for all e with supp(e) = E, then f (P ) = 0 for all P ∈ E, so
f ∈ IE .
Claim (2) follows from (1).
The perhaps surprising claim (3) is a consequence of (2). Another way
to prove (3) is to note that there exist g ∈ R such that g(P )eP = e′P for all
P ∈ E. We have
X
X
X
e′P hP = Se′ .
eP g(P )hP =
eP (g · hP ) =
g · Se =
P ∈E
P ∈E
P ∈E
′
Hence hSe′ i ⊆ hSe i. Reversing the roles of e and e , we get the other inclusion as well, and (3) follows.
The following explicit expression for the terms in f · Se is also useful.
P
Let f = m fm X m ∈ S. Then
X
X X
X
f · Se = (
fm X m ) · (
Eu X −u ) =
(
fm Em+r )X −r .
u∈Zs≥0
m
P
r∈Zs≥0
m
Hence f · Se = 0 ⇔ m fm Em+r = 0 for all r ≥ 0.
The equation f · S = 0 from (1) in Theorem 4.1 is the prototype, so
to speak, for our generalizations of the key equation to codes from order
domains, and we will refer to it as the key equation in the following. It also
naturally generalizes all the various key equations that have been developed
in special cases, as we will demonstrate shortly. Before proceeding with
that, however, we wish to make several comments about the form of this
equation.
10
Comparing the equation f ·Se = 0 with the familiar form Eq. (1), several
differences may be apparent. First, note that the syndrome series Se will
not be entirely known from the received word in the decoding situation.
The same is true in the Reed-Solomon case, of course. The polynomial S in
the congruence in Eq. (1) involves only the known syndromes, and Eq. (1)
is derived by accounting for the other terms in the full syndrome series.
With a truncation of Se in our situation we would obtain a similar type of
congruence (see the discussion following Eq. (8) below, for instance). It is
apparently somewhat rare, however, that the portion of Se known from the
received word suffices for decoding up to half the minimum distance of the
code.
Another difference is that there is no apparent analog of the errorevaluator polynomial g from Eq. (1) in the equation f · Se = 0. The way to
obtain error evaluators in this situation is to consider the “purely positive
parts” (f Se )+ for certain solutions of our key equation.
We now turn to several examples that show how our key equation relates
to several special cases that have appeared in the literature.
Example 4.1. We begin by providing more detail on the precise relation
between Theorem 4.1, part (1) in the case of a Reed-Solomon code and
the usual key equation from Eq. (1). These codes are constructed from the
order domain R = Fq [X] (where Γ = Z≥0 and ρ is the degree mapping).
The key equation Eq. (1) applies to the code Evℓ = ev(Vℓ ), where Vℓ =
Span{1, X, X 2 , . . . , X ℓ−1 }, and the evaluation takes place at all Fq -rational
points on the affine line, omitting 0.
Our key equation in this case is closely related to, but not precisely
the same, as Eq. (1). The reason for the difference is that Theorem 4.1 is
applied to the dual code Cℓ = Evℓ⊥ rather than Evℓ . Starting from Eq. (3)
and using the formal geometric series summation formula as in Theorem 3.3
part (4), we can write:
P
Q
X
X
P ∈E eP
Q∈E,Q6=P (X − Q)
u −u
Q
.
eP
Se =
P X
=X
P ∈E (X − P )
P ∈E
u≥0
Hence, in this formulation, Se = Xq/p, where p is the generator of the
actual error locator ideal (not the ideal of the inverses of the error locations).
Moreover if we take f = p in Theorem 4.1, then
(pSe )+ = Xq
(3)
gives an analog of the error evaluator. There are no “mixed terms” in the
products f Se in this one-variable situation.
11
Example 4.2. The key equation for s-dimensional cyclic codes introduced
by Chabanne and Norton in [12] has the form
!
s
Y
(4)
Xi g,
σSe =
i=1
Qs
where σ = i=1 σi (Xi ), and σi is the univariate generator of the elimination
ideal IE ∩Fq [Xi ]. Our version of the Reed-Solomon key equation from Eq. (3)
is a special case of Eq. (4). Moreover, Eq. (4) is clearly the special case of
Theorem 4.1, part (1) for these codes where f = σ is the particular error
Qs
locator polynomial i=1 σi (Xi ) ∈ IE . For this special choice of error locator,
Qs
σ · Se = 0, and (σSe )+ = ( i=1 Xi ) g for some polynomial g. We see that
Se can be written as
!
s
X
Y
X
1
,
eP Qs
Xi
eP hP =
Se =
i=1 (Xi − Xi (P ))
i=1
P
P
and the product σSe = (σSe )+ reduces to a polynomial (again, there are
no “mixed terms”).
Example 4.3. We now turn to the key equation for one-point geometric
Goppa codes introduced by O’Sullivan in [6]. Let X be a smooth curve
over Fq of genus g, and consider one-point codes constructed from R =
∪∞
m=0 L(mQ) for some point Q ∈ X (Fq ), O’Sullivan’s key equation has the
form:
f ωe = φ.
(5)
Here ωe is the syndrome differential, which can be expressed as
X
ωe =
eP ωP,Q ,
P ∈X (Fq )
where ωP,Q is the differential of the third kind on Y with simple poles at
P and Q, no other poles, and residues resP (ωP,Q ) = 1, resQ (ωP,Q ) = −1.
For any f ∈ R, we have
X
eP f (P ),
resQ (f ωe ) =
P
the syndrome of e corresponding to f . (We only defined syndromes for
monomials above; taking a presentation R = Fq [X1 , . . . , Xs ]/I, however,
any f ∈ R can be expressed as a linear combination of monomials and the
syndrome of f is defined accordingly.) The right-hand side of Eq. (5) is
also a differential. In this situation, Eq. (5) furnishes a key equation in the
12
following sense: f is an error locator (i.e. f is in the ideal of R corresponding
to IE ) if and only if φ has poles only at Q. In the special case that (2g − 2)Q
is a canonical divisor (the divisor of zeroes of some differential of the first
kind ω0 on X ), Eq. (5) can be replaced by the equivalent equation f oe = g,
where oe = ωe /ω0 and g = φ/ω0 are rational functions on X . Since ω0 is
zero only at Q, the key equation is now that f is an error locator if and
only if Eq. (5) is satisfied for some g ∈ R.
For instance, when X is a smooth plane curve V (F ) over Fq defined
by F ∈ Fq [X, Y ], with a single smooth point Q at infinity, then it is true
that (2g − 2)Q is canonical. O’Sullivan shows in Example 4.2 of [6] (using
a slightly different notation) that
X
oe =
eP HP ,
(6)
P ∈X (Fq )
F (a,Y )
where if P = (a, b), then HP = (X−a)(Y
−b) . This is a function with a pole
of order 1 at P , a pole of order 2g − 1 at Q, and no other poles.
To relate this to our approach, note that we may assume from the start
that Q = (0 : 1 : 0) and that F is taken in the form
F (X, Y ) = X β − cY α + G(X, Y )
for some relatively prime α < β generating the value semigroup at Q. Every
term in G has (α, β)-weight less than αβ. First we rearrange to obtain
HP =
F (a, Y )
(aβ − X β ) + F (X, Y ) + (G(a, Y ) − G(X, Y ))
=
(X − a)(Y − b)
(X − a)(Y − b)
The F (X, Y ) term in the numerator does not depend on P . We can collect
those terms in the sum Eq. (6) and factor out the F (X, Y ). We will see
shortly that those terms can in fact be ignored. The G(a, Y ) − G(X, Y ) in
the numerator furnish terms that go into the error evaluator g here. The
remaining portion is
β−1 ∞
X β−1 X X ai bj
−(X β − aβ )
=−
.
(X − a)(Y − b)
Y i=0 j=0 X i Y j
The sum here looks very much like that defining our hP from Theorem 3.3,
except that it only extends over the monomials in complement of hLT (F )i.
Call this last sum h′P . As noted before the full series hP (and consequently
S) are redundant. For example, every ideal contained in mP (for instance
the ideal I = hF i defining the curve), produces relations between the coefficients. From the duality theorem, Theorem 3.1, we have that I ⊂ mP
implies (mP )⊥ ⊂ I ⊥ , so F · hP = 0.
13
The relation F · hP = 0 says in particular that the terms in h′P are
sufficient to determine the whole series hP . Indeed, we have
i
β
∞
X
X
(cY α − G)
′
h′P .
h
=
hP =
P
β
X
F
i=0
It follows that O’Sullivan’s key equation and ours are equivalent.
We now turn to the precise relation between solutions of our key equation and the polynomials generated by the BMS decoding algorithm applied
to the Cℓ = Evℓ⊥ codes from order domains R. We will see that the BMS
algorithm systematically produces successively better approximations to
solutions of f · Se = 0, so that in effect, the BMS algorithm is a method for
solving the key equation for these codes.
For our purposes, it will suffice to consider the “Basic Algorithm” from
§3 of [5], in which all needed syndromes are assumed known and no sharp
stopping criteria are identified. The syndrome mapping corresponding to
the error vector e is
Syne : R → Fq
X
eP f (P ),
f 7→
P ∈E
where as above E is the set of error locations. The same reasoning used in
the proof of our Theorem 4.1 shows
f ∈ IE ⇔ Syne (f g) = 0, ∀g ∈ R.
(7)
From Definition 2.1 and Geil and Pellikaan’s presentation theorem, we
have an ordered monomial basis of R:
∆ = {X α(j) : j ∈ N},
whose elements have distinct ρ-values. As in the construction of the Evℓ
codes, we write Vℓ = Span{1 = X α(1) , . . . , X α(ℓ) }. The Vℓ exhaust R, so
for f 6= 0 ∈ R, we may define
o(f ) = min{ℓ : f ∈ Vℓ },
and (for instance) o(0) = −1. In particular the semigroup Γ in our presentation carries over to a (nonstandard) semigroup structure on N defined by
the addition operation
i ⊕ j = k ⇔ o(X α(i) X α(j) ) = k.
14
Given f ∈ R, one defines
span(f ) = min{ℓ : ∃g ∈ Vℓ s.t. Syne (f g) 6= 0}
f ail(f ) = o(f ) ⊕ span(f ).
When f ∈ IE , span(f ) = f ail(f ) = ∞.
The BMS algorithm, then, is an iterative process which produces a
Gröbner basis for IE with respect to a certain monomial order >. The
strategy is to maintain data structures for all m ≥ 1 as follows. The ∆m
are an increasing sequence of sets of monomials, converging to the monomial
basis for IE as m → ∞, and δm is the set of maximal elements of ∆m with
respect to > (the “interior corners of the footprint”). Similarly, we consider
the complement Σm of ∆m , and σm , the set of minimal elements of Σm
(the “exterior corners”). For sufficiently large m, the elements of σm will
be the leading terms of the elements of the Gröbner basis of IE , and Σm
will be the set of monomials in LT> (IE ).
For each m, the algorithm also produces collections of polynomials Fm =
{fm (s) : s ∈ σm } and Gm = {gm (c) : c ∈ δm } satisfying:
o(fm (s)) = s,
f ail(fm (s)) > m
span(gm (c)) = c,
f ail(gm (c)) ≤ m.
In the limit as m → ∞, by Eq. (7), the Fm yield the Gröbner basis for IE .
We record the following simple observation.
Theorem 4.2. With all notation as above, suppose f ∈ R satisfies o(f ) =
s, f ail(f ) > m. Then
f · Se ≡ 0 mod Ws,m ,
where Ws,m is the Fq -vector subspace of the formal power series ring T
spanned by the X −α(j) such that s ⊕ j > m.
Proof. By the definition, f ail(f ) > m means that Syne (f X α(k) ) = 0 for
all k with o(f ) ⊕ k ≤ m. By the definitions of Se and the contraction
product, Syne (f X α(k) ) is exactly the coefficient of X −α(k) in f · Se .
The subspace Ws,m in Theorem 4.2 depends on s = o(f ). In our situation, though, note that if s′ = max{o(f ) : f ∈ Fm }, then Theorem 4.2
implies
f · Se ≡ 0 mod Ws′ ,m
(8)
15
for all f = fm (s) in Fm . Moreover, only finitely many terms from Se enter
into any one of these congruences, so Eq. (8) is, in effect, a sort of general
analog of Eq. (1).
The fm (s) from Fm can be understood as approximate solutions of key
equation (where the goodness of the approximation is determined by the
subspaces Ws′ ,m , a decreasing chain, tending to {0} in T , as m → ∞).
The BMS algorithm thus systematically constructs better and better approximations to solutions of the key equation. O’Sullivan’s stopping criteria
(see [5]) show when further steps of the algorithm make no changes. The
Feng-Rao theorem shows that any additional syndromes needed for this can
ℓ )−1
⌋.
be determined by the majority-voting process when wt(e) ≤ ⌊ dF R (C
2
We conclude by noting that O’Sullivan has also shown in [6] that, for
codes from curves, the BMS algorithm can be slightly modified to compute
error locators and error evaluators simultaneously in the situation studied
in Example 4.3. The same is almost certainly true in our general setting,
although we have not worked out all the details.
Acknowledgements
Thanks go to Mike O’Sullivan and Graham Norton for comments on an
earlier version prepared while the author was a visitor at MSRI. Research
at MSRI is supported in part by NSF grant DMS-9810361.
References
[1] T. Høholdt, R. Pellikaan, and J. van Lint, Algebraic Geometry Codes, in:
Handbook of Coding Theory, W. Huffman and V. Pless, eds. (Elsevier, Amsterdam, 1998), 871-962.
[2] M. O’Sullivan, New Codes for the Berlekamp-Massey-Sakata Algorithm, Finite Fields Appl. 7 (2001), 293-317.
[3] O. Geil and R. Pellikaan, On the Structure of Order Domains, Finite Fields
Appl. 8 (2002), 369-396.
[4] J. Little, The Ubiquity of Order Domains for the Construction of Error
Control Codes, Advances in Mathematics of Communications 1 (2007), 151171.
[5] M. O’Sullivan, A Generalization of the Berlekamp-Massey-Sakata Algorithm, preprint, 2001.
[6] M. O’Sullivan, The key equation for one-point codes and efficient error evaluation, J. Pure Appl. Algebra 169 (2002), 295-320.
[7] F.S. Macaulay, Algebraic Theory of Modular Systems, Cambridge Tracts in
Mathematics and Mathematical Physics, v. 19, (Cambridge University Press,
Cambridge, UK, 1916).
16
[8] D.G. Northcott, Injective envelopes and inverse polynomials, J. London
Math. Soc. (2) 8 (1974), 290-296.
[9] J. Emsalem and A. Iarrobino, Inverse System of a Symbolic Power, I, J.
Algebra 174 (1995), 1080-1090.
[10] B. Mourrain, Isolated points, duality, and residues J. Pure Appl. Algebra
117/118 (1997), 469-493.
[11] A. Geramita, Inverse systems of fat points, Waring’s problem, secant varieties of Veronese varieties and parameter spaces for Gorenstein ideals, The
Curves Seminar at Queen’s (Kingston, ON) X (1995), 2–114.
[12] H. Chabanne and G. Norton, The n-dimensional key equation and a decoding
application, IEEE Trans. Inform Theory 40 (1994), 200-203.
[13] G.H. Norton, On n-dimensional Sequences. I, II, J. Symbolic Comput. 20
(1995), 71-92, 769-770.
[14] G.H. Norton, On Shortest Linear Recurrences, J. Symbolic Comput. 27
(1999), 323-347.
[15] G.H. Norton and A. Salagean, On the key equation over a commutative ring,
Designs, Codes and Cryptography 20 (2000), 125-141.
[16] J. Althaler and A. Dür, Finite linear recurring sequences and homogeneous
ideals, Appl. Algebra. Engrg. Comm. Comput. 7 (1996), 377-390.