Web site: http://www.aimSciences.org
Advances in Mathematics of Communications
Volume X, No. 0X, 200X, X–XX
ALGEBRAIC STRUCTURE OF THE MINIMAL SUPPORT
CODEWORDS SET OF SOME LINEAR CODES
Irene Márquez-Corbella
Dpto. Álgebra, Geometrı́a y Topologı́a
Universidad de Valladolid, Castilla, Spain
Edgar Martı́nez-Moro
Dpto. Matemática Aplicada
Universidad de Valladolid, Castilla, Spain
(Communicated by the associate editor name)
Abstract. It has been widely known that complete decoding for binary linear
codes can be regarded as an linear integer programming problem with binary
arithmetic conditions. Conti and Traverso [8] have proposed an efficient algorithm which uses Gröbner bases to solve integer programming with ordinary integer arithmetic conditions. Ikegami and Kaji [11] extended the Conti-Traverso
algorithm to solve integer programming with modulo arithmetic conditions. It
is natural to consider for those problems the Graver basis associated to them
which turns to be the minimal cycles of the matroid associated to the code, i.e.
minimal support codewords in the binary case and its geometry. This provides
us an universal test set for the programs considered.
1. Introduction
The sets of minimal support codewords in linear codes had been considered
related to gradient-like decoding algorithms [1, 10]. Also there is interest to them
due to the work of J. Massey in secret sharing schemes derived from linear codes
[13], where minimal codewords describe the minimal access structures. It is quite
dificult to describe the set of minimal codewords for an arbitrary linear code even
in the binary case, in fact, the knowledge of the minimal codewords is related with
the complete decoding problem which is a NP-problem [2] even if preprocessing is
allowed [7]. The problem of determining the set of minimal codewords has been
solved for q-ary Hamming codes and for the second order binary Reed-Muller codes
and there has been attempts to characterize if for other classes of codes like BCH
codes and the rth -order binary Reed-Muller code, see [6] and the references therein.
From now on we will denote by Z, Z≥0 , R, Zq the integer numbers , the integers
greater or equal to 0, the real numbers and the ring of integers modulo q respectively.
The goal this paper is the use of Graver basis associated to modular linear program
problems to describe the sets of codewords of minimal support codes defined on
Znq . The main tools will be combinatorial algebra techniques [17] related to linear
integer programming addapted to the modular case. The outline of the paper
is as follows. In section 2, we start by briefly reviewing the algorithm of Conti
and Traverso, presented in [8], which shows the use Gröbner basis to solve integer
2000 Mathematics Subject Classification: Primary: 94B05, 13P25 ; Secondary:13P10.
Key words and phrases: Minimal codewords, Modular/integer programming, Gröbner basis.
The authors are partially supported by Spanish MCINN under project MTM2007-64704.
1
c
200X
AIMS-SDU
2
Irene Márquez-Corbella and Edgar Martı́nez Moro
programming problems. The main idea of this algorithm is to compute a Gröbner
basis of an ideal defined from the constrain equations and find the solution which
minimizes the linear function using the Gröbner basis reduction. Then we discuss
the extension of the Conti-Traverso algorithm given by Ikegami and Kaji [11] to
solve linear integer programming with modulo arithmetic conditions. The reader
should recall that the maximum likelihood decoding can be regarded as an linear
integer programming with arithmetic conditions. In Section 3 we extend the work
of [4] to the non-binary modular case. In [4] they introduce a binomial ideal derived
from a binary lineal code C, which we prove that can be seen as the ideal associated
to the kernel (over Z2 ) of a modular linear integer programming problem. Finally,
in section 4, we describe the set of codewords of minimal support of codes defined
on Znq using the Graver basis associated to an ideal. This Graver basis is again
the Zq -kernel associated to a Lawrence lifted matrix so techniques on the previous
section also apply to compute the set of minimal support codewords.
It is important to recall that the modular integer programming approach in this
paper does not allow to perform complete decoding in a straigth forward way for
q > 2 as stated in Subsection 3.2 but the description of the Graver basis of the
modular problem provides a description of the minimal support codewords set of
linear codes over Znq , see Subsection 4.3.
2. Integer-modular linear programs and Gröbner basis
2.1. Conti-Traverso algorithm. Given an integral matrix A ∈ Zm×n , which
is known as the matrix of coefficients, and the vectors b ∈ Zm and w ∈ Rn , the
vector w is called the cost vector, the integer linear programming problem, denoted
by IPA,w (b) consists of three parts: a linear function to be minimized, a problem
constraints and non-negative variables. Therefore if we expresse the problem in
matrix form it becomes:
minimize w· u
Aut = b
(1)
IPA,w (b) =
subject to
u ∈ Zn≥0
A solution u ∈ Zn≥0 which satisfied Aut = b is called optimal if u minimizes the
inner product w · u. Although an integer program differs from a linear program
only in the requirement that solutions are integral instead of real, the general integer program is NP-complete while linear programs can be solved in polynomial
time. The first general algorithm to solve an integer program was Gomory’s cutting
plane method, then further methods around branching and bounding integer linear
programs were designed. For other algorithms and further reading on both linear
and integer programming see [16].
In [8] Conti and Traverso introduced a Gröbner basis based algorithm to solve
IPA,w as follows. Every u ∈ Zn can be written uniquely as u = u+ − u− where
u+ , u− ∈ Zn≥0 and have disjoint supports where the support of a vector u ∈ Zn is
the set supp(u) = {i | ui 6= 0} ⊆ {1, . . . , n}. For a given integer linear programming
problem IPA,w stated as in Equation
D (1) the algorithm computes
E a reduced Gröbner
+
−
basis Gw of the toric ideal I = {xu − xu | u ∈ kerZ (A)} w.r.t the term order
w induced by the cost vector w ∈ Rn and defined as:
either w · α w · β or
α w β ⇔
w · α = w · β, α β, for a fixed admisible ordering.
Advances in Mathematics of Communications
Volume X, No. X (200X), X–XX
Algebraic structure of the minimal support codewords set
3
Note that the reduced Gröbner basis of the binomial ideal I is given also by binomials (see [17], Corolary 4.4 for a proof). Finally, for any non-optimal solution u
of IPA,w (b), we compute the normal form of the monomial xu w.r.t. Gw namely
0
nf Gw (xu ) = xu , and then u0 is the optimal solution. The interested reader can
refer to [17] for an account on Gröbner basis material related to integer linear programming.
A test set for the family of problems IPA,w is a subset Tw ⊆ kerZ (A) if, for each
non-optimal solution u to a program IPA,w (b), there exists t ∈ Tw such that u − t
is also a solution and t w 0. The binomials involved in the reduced Gröbner basis
Gw induce a uniquely defined test set for IPA,w called the Gröbner basis test set.
The existence of a finite test set Tw gives a trivial gradient descent method for
finding the optimal solution of the problem IPA,w (b). Indeed, starting at a solution
u of IPA,w (b) we can successively move to an improved solution of the program by
subtracting an appropriate element of Tw , then the solution u0 is optimal if, and
only if, there does not exists t ∈ Tw such that u0 − t is feasible for IPA,w (b).
2.2. Modular linear programming. Ikegami and Kaji in [11] adapted the ideas
of the Conti-Traverso algorithm to solve the modular integer programming problem.
Let us consider the integer q ≥ 2, from now on we will use the following characteristic
crossing functions :
(2)
H : Zs → Zsq
and N : Zsq → Zs
where s is determined by context and the spaces may also be matrix spaces. The
map H is reduction modulo q, but the map N replaces the class of 0, 1, . . . , q − 1 by
the same symbols regarded as integers, both maps act coordinatewise. These maps
will be used with matrices and vectors, themselves regarded as maps, acting on the
right.
n
and the vectors b ∈ Zm
Consider the matrix A ∈ Zm×n
q , w ∈ R , we define a
q
modular integer program, denoted by IPA,w,q (b) as the problem of finding a vector
u ∈ Znq that minimizes the inner product w · Nu subject to Aut ≡ b mod q. If we
expressed the problem in matrix form it becomes:
minimize w· Nu
Aut ≡ b mod q
(3)
IPA,w,q (b) =
subject to
u ∈ Znq
Note that the constrain conditions are a modular ones but the weight minimizing
condition is over the reals.
Let x denote n variables x1 , . . . , xn and y denote m variables y1 , . . . , ym , consider
the ring homomorphism Θ defined by
(4)
Θ : K[x] −→
xv 7−→
K[y]
t
Θ(xv ) = y(NA)v .
Let Jq be a binomial ideal defined by Jq = h{yiq − 1}m
i=1 i in the polynomial ring
K[y]. We have the following result.
Lemma 2.1 ([11], Lemma 1). Aut ≡ b mod q if and only if Θ(xNu ) ≡ yNb
mod Jq .
In [11] they showed that the ideal generated by the binomials associated to the
vectors belonging to the Zq -kernel of the matrix A, which is the kernel of the ring
Advances in Mathematics of Communications
Volume X, No. X (200X), X–XX
4
Irene Márquez-Corbella and Edgar Martı́nez Moro
homomorphism Θ, is given by the elimination ideal I = IA ∩ K[x] where
(5)
m
Y
a
IA = {φi − xi }ni=1 , {yjq − 1}m
⊆
K[x,
y],
and
φ
=
Θ(x
)
=
yj i,j .
i
i
j=1
j=1
Remark 1. In other words, we can see the ideal related to the the Zq -kernel
of A as an elimination ideal of the ideal related to the Z-kernel of the matrix
(NA , q · Im ) ∈ Zm×(m+n) .
The following lemma gives the characterization of the polynomials that belong
to the ideal IA . Necessary condition was already stated in [11], we show it here
again for completenesses.
Lemma 2.2. f ∈ IA ∩ K[x] if and only if f ∈ K[x] and Θ(f ) ≡ 0 mod Jq .
Proof.
Let f ∈ IA ,P
by representing f with the generators of IA , thus f (x, y) =
Pn
m
q
λ
(φ
−
x
)
+
i
i=1 i i
j=1 βj (yj − 1) where λ1 , . . . , λn , β1 , . . . , βm ∈ K[x, y]. Then
Θ(f )
= f (Θ(x1 ), . . . , Θ(xn ), y1 , . . . , ym )
m
n
X
X
Θ(βj )(yjq − 1)
Θ(λi ) (φi − Θ(xi )) +
=
=
i=1
m
X
j=1
Θ(βj )(yjq − 1) ≡ 0
mod Jq .
j=1
To prove the converse, first note that given u ∈ Znq a monomial xNu = xu1 1 · · · xunn
with can be written, for some B1 , . . . Bn ∈ K[x, y] as:
xu1 1 · · · xunn
u1
· · · (φn + (xn − φn ))
un
=
(φ1 + (x1 − φ1 ))
=
φ1u1 · · · φunn + B1 (x1 − φ1 ) + . . . Bn (xn − φn ).
Thus, there existPpolynomials C1 , . . . , Cn ∈ K[x, y], f ∈ K[x] such that f (x) =
n
f (φ1 , . . . , φn ) + i=1 Ci (xi − φi ). From the initial assumption we have Θ(f ) =
f (Θ(x1 ), . . . , Θ(xn )) = f (φ1 , . . . , φn ) ≡ 0 mod Jq , therefore
f (x1 , . . . , xn )
=
f (φ1 , . . . , φn ) +
{z
}
|
∈Jq ⊆IA
n
X
Ci (xi − φi ) ∈ IA .
i=1
|
{z
∈IA
}
A monomial order w on K[x, y] is adapted to the problem IPA,w,q (b) if it is an
elimination order for K[x] and it is compatible with w, i.e. for any u, v ∈ Znq such
t
t
that Θ(xNu ) ≡ Θ(xNv ) mod Jq ( i.e. yN(Au ) ≡ yN(Av ) mod Jq ) if w · u w · v
then xu w xv .
Consider Gw a Gröbner basis of the ideal IA w.r.t. an adapted monomial order
w then the Conti-Traverso algorithm is extended to the modular case as follows:
Theorem 2.3 ([11], Theorem 6). Given the monomial xNb and let the normal
0
form w.r.t. Gw be nf Gw (xNb ) = xu , then Hu0 will give an optimal solution of
the problem IPA,w,q (b).
Advances in Mathematics of Communications
Volume X, No. X (200X), X–XX
Algebraic structure of the minimal support codewords set
5
3. Describing the kernel in K[x]
Note that in the previous description one requires m × n variables for describing
the elimination ideal IA ∩ K[x] which is in the ambient space K[x] which involves
n variables only. Therefore in order to improve the eficiency it is desirable that
the whole computation would be inside K[x]. Di Biase and Urbanke [9] developed
some ideas concerning this problem for the integer Z-kernel related to the problem
IPA,w (b) in Equation (1). We will describe in this section how to compute the
Zq -kernel of the problem IPA,w,q (b) in Equation (3) considering only computations
in K[x].
Let A ∈ Zqk×n be a matrix, we will define the following ideal
(6)
I(A) = h{xu1 − xu2 | A · H(u1 − u2 ) ≡ 0 mod q}i
i.e. all the binomials such that H(u1 − u2 ) is in the modular kernel kerZq (A). If
we consider the linear subespace {u ∈ Znq | u · a = 0, ∀ a row of A} and A⊥ be a
matrix whose rows generate such linear subespace The following proposition is an
extension of Proposition 1 of [4].
Proposition 3.1. Let {w1 , . . . , wk } ⊆ Znq a set of generators of the row space of
and consider any vector a, b ∈ Zn . The following conditions
the matrix A ∈ Zk×n
q
are equivalent:
1. A⊥ · Ha ≡ A⊥ · Hb mod q,
2. xa − xb ∈ I(A⊥ ).
3. ∃t1 , t2 ∈ K[x] and λ1 , . . . , λk ∈ Zn such that
(7)
xa+(q−1)b tq1 = tq2
s
Y
xλi Nwj .
j=1
Proof. First we will see the equivalence between 1. and 2. By Lemma 2.2, xa − xb
⊥
⊥
belongs to I(A⊥ ) if, and only if, Θ(xa −xb ) ≡ 0 mod Jq . Thus y(NA) ·a ≡ y(NA) ·b
mod Jq . By Lemma 2.1 this holds if and only if A⊥ · Ha ≡ A⊥ · Hb mod q. Let us
define the homomorphism Φ from K[x] to Znq as
Φ : K[x] −→
xa 7−→
Znq
Φ(x ) = ((Ha1 ), . . . , (Han )) .
a
It is easy to see that for all a, b ∈ Zn the two following properties hold:
(8)
Φ(xa ) = Φ(xb ) ⇐⇒ ∃t1 , t2 ∈ K[x] such that tq1 xa = tq2 xb .
Φ(xa ) − Φ(xb ) = Φ(xa ) + (q − 1)Φ(xb ) = Φ(xa+(q−1)b ).
Furthermore xa − xb ∈ I(A⊥ ) if and only if Φ(xa ) − Φ(xb ) belongs to the vector space generated by the set of vectors {w1 , . . . wk }, since xa − xb ∈ I(A⊥ ) ⇔
A⊥ · H(a − b) ≡ 0 mod q, i.e. H(a − b) ∈ h{w1 , . . . , wk }i.
2. ⇒ 3. If xa − xb ∈ I(A⊥ ) we have that Φ(xa ) − Φ(xb ) = Φ(xa+(q−1)b ) =
Pk
Qk
Nλq,i Nwi
) where λq,i ∈ Znq i = 1, . . . , k. Let Nλq,i = λi
i=1 λq,i wi = Φ( i=1 x
i = 1, . . . , k, by Equation 8, there exist t1 , t2 ∈ K[x] such that tq1 xa+(q−1)b =
Qk
tq2 i=1 xλi Nwi .
2. ⇐ 3. If there exist t1 , t2 ∈ K[x] and λ1 , . . . , λk ∈ Zn such that tq1 xa+(q−1)b =
Qk
Qk
Pk
tq2 i=1 xλi Nwi then Φ(xa )−Φ(xb ) = Φ(xa+(q−1)b ) = Φ( i=1 xλi Nwi ) = i=1 Hλi wi
Advances in Mathematics of Communications
Volume X, No. X (200X), X–XX
6
Irene Márquez-Corbella and Edgar Martı́nez Moro
and we may conclude that the vector Φ(xa ) − Φ(xb ) is a linear combination of the
set {w1 , . . . , wk } , that is xa − xb ∈ I(A⊥ ).
Let us define the following ideal
(9)
NI = {xNw1 − 1, . . . , xNwk − 1} ∪ {xqi − 1}ni=1 ⊆ K[x]
Theorem 3.2. NI = I(A⊥ ) = IA ∩ K[x].
Proof. It is clear that NI ⊆ I(A⊥ ) since all binomials in the generating set of NI
belong to I(A⊥ ).
To show the converse it is enough to prove that any binomial xa − xb of I(A⊥ )
belongs to NI. Notice that by PropositionQ 3.1, there exist t1 , t2 ∈ K[x] and
s
λ1 , . . . , λk ∈ Zn such that xa+(q−1)b tq1 = tq2 j=1 xλj Nwj . If z1 − 1, z2 − 1 ∈ NI,
since z1 z2 − 1 = (z1 − 1) · z2 + (z2 − 1), we have z1 · z2 − 1 ∈ NI. Therefore
Qk
Nwi
− 1 ∈ NI and
i=1 x
k
k
Y
Y
Y
Y
xλj Nwj − 1 =
xNwj − 1 ·
x(λj −1)Nwj +
x(λj −1)Nwj − 1
j=1
j=1
= ... =
k
Y
j|λj >0
j|λj >0
Y
xNwj − 1 ·
j=1
x(λj −1)Nwj + . . . +
j|λj >0
Y
xNwj − 1
j|λj >0
q Qk
This implies that tq1 xa+(q−1)b − 1 = t2 j=1 xλj Nwj − 1 ∈ NI.
Since xa − xb = xb (xa+(q−1)b − 1) − xa (xqb − 1) ∈ NI, we may conclude that
I(A⊥ ) = NI.
Now we will show that NI = IA ∩K[x]. First we notice that Θ(xNwi −1) = 0 (since
P
⊥
A·A⊥ = 0) and Θ(xqi −1) = Θ(xqei −1) = y(N(A ))(qei ) −1 ≡ j|a⊥ 6=0 Bj (yjq −1) ≡ 0
ij
m×n
mod Jq where (NA⊥ ) = (a⊥
, Bj ∈ K[y] and ei represent the ith-unit
ij ) ∈ Z
n
vector of the standard basis of Z . Therefore by Lemma 2.2 it follows that any
binomial in the generating set of NI belongs to IA ∩ K[x].
On the other hand, since IA ∩K[x] is a binomial ideal it is generated by binomials.
Let us consider a binomial f = xu − xv ∈ IA ∩ K[x] with u, v ∈ Zn≥0 . Lemma 2.2
⊥
t
⊥
t
implies that Θ(f ) = y(NA )u − y(NA )v ≡ 0 mod Jq . Furthermore, by Lemma
2.1 we have that A⊥ Hu ≡ A⊥ Hv mod q, hence by Proposition 3.1, we conclude
that f ∈ I(A⊥ ) = NI.
Remark 2. Note that the matrix A⊥ plays the role of the non negative matrix that
Di Biase and Urbanke look for in their paper, thus the previous theorem can be seen
as a generalization of the setting in [9] for getting rid of the variables concerning y
in IA .
3.1. Computing the Gröbner basis. In order to carry out Conti-Traverso procedure we must compute a reduced Gröbner basis of IA ∩K[x]. Note that we know a
set of generators of the ideal IA ∩K[x] given by {xNw1 −1, . . . , xNwk −1}∪{xqi −1}ni=1
∼
thus for computing a reduced Gröbner basis G w.r.t. a degree compatible order we
can use the FGLM-based trick in [4]. In that paper it is stated for the binary case,
but the generalization to the modulo q is straight forward. We just point out the
main idea and advantages of the algorithm, the interested reader can look at [4] for
a detailed description of the algorithm and its complexity issues.
Advances in Mathematics of Communications
Volume X, No. X (200X), X–XX
Algebraic structure of the minimal support codewords set
7
The idea is the following, given a set of generators {f1 , f2 , . . . , fr } of the ideal
IA ∩K[x] notice that each syzygy in K[x]r+1 with generator set F = {−1, f1 , . . . , fr }
points to an element in the ideal. Now consider the syzygies (f1 , 1, 0, 0, . . . , 0),
. . . , (fr , 0, 0, 0, . . . , 1). They are a Gröbner basis of the syzygy module w.r.t. a
position over term (POT) ordering induced from an ordering < in K[x] and the
weight vector (1, T< (f1 ), ..., T< (fr )). Now we use the FGLM idea and run through
the terms of K[x]r+1 in adequate term over position (TOP) ordering that reveals
the Gröbner basis of the ideal in the first component. The above procedure is
completely general, in our setting it has the following advantages:
(i) Note that the total degree of the binomials involved is bounded by n × q,
moreover the degree of each variable is at most q since the binomials {xqi −1}ni=1
belong to the ideal.
(ii) We can encode all the information of the problem in the exponents, thus we
can always take K = F2 even if q 6= 2.
(iii) All the steps can be carried out as Gaussian elimination steps.
The two first items above make the most common drawbacks of Gröbner basis
computation fail, namely growth of the total degree and growth of coefficients.
3.2. Complete decoding. To end this section we review the relation of this approach with the complete decoding problem in the binary case. Let q = 2 and H be
the parity check matrix of a linear code over Z2 . Then solving the modular program
IPH,1,2 (b) where 1 = (1, 1, . . . , 1) is equivalent to complete decoding b. This is the
approach in [11] and we have just shown by Theorem 3.2 above that (only in the
binary case) it is equivalent to the approach in [4]. It must be noticed that the
reduced Gröbner basis associated to the problem provides us a (minimal) test set
T whose elements are binomials associated to minimal codewords. Thus, this complete decoding scheme is equivalent to the gradient descent decoding given by Barg
[1] and proven to be equivalent to Liebler approach [12], see [4] for a proof. Unfortunately, Hamming metric can not be stated as a linear programming objective for
q > 2, i.e. min {w · Nu} =
6 min {w(u)} where w denotes the Hamming weight. In
[5] avoided the problem above for q = pr (p a prime) by using some non-admisible
but noetherian-confluent orderings and substituting Gröbner basis by Border basis.
4. Minimal support codewords set
As stated in the previous subsection, modular integer programming approach in
this paper does not allow to perform complete decoding in a straigth forward way
for q > 2. We shall prove in this section that this approach allow us to describe the
set of minimal support codewords of a code which will be related to the Graver basis
of the modular integer program. The main tool for computing such a Graver basis
will be a Gröbner basis computation that again will be well suited for an extended
algorithm in [4] showed in Subsection 3.1.
4.1. Graver basis. Given an integer matrix A ∈ Zm×n we define the universal
Gröbner basis UGBA as the union of all reduced Gröbner basis for every generic
+
−
weight w. A binomial xu − xu ∈ IA is primitive if there exists no other binomial
−
+
−
+
+
−
xv − xv ∈ IA such that xv divides xu and xv divides xv . In other words, an
integral vector u ∈ kerZ (A) is said to be primitive if the greatest common divisor of
the components of the corresponding binomial (+’ve and −’ve) is 1. We call the set
of primitive binomials in IA the Graver basis of A and denote it by GrA ⊆ kerZ (A).
Advances in Mathematics of Communications
Volume X, No. X (200X), X–XX
8
Irene Márquez-Corbella and Edgar Martı́nez Moro
A circuit of A is a non-zero primitive vector u ∈ kerZ (A) such that its support is
minimal. If we denote CA the set of circuits of A, we have that CA ⊆ UGBA ⊆ GrA
(see [17], Proposition 4.11 for a proof).
Definition 4.1. The lattice L(A) = {x ∈ Zn | Ax = 0} has a natural partial order.
For u, v ∈ Zn we say that u is conformal to v, denoted u @ v if |ui | ≤ |vi | and
ui · vi > 0 for all i = 1, . . . , n
That is, u and v lie in the same orthant of Rn and each component of u is
bounded by the corresponding component of v in absolute value. Note that the
+
−
binomial xu − xu in IA is primitive if the vector u = u+ − u− ∈ Zn is minimal
with respect to the order @. Thus the Graver basis of an integer matrix A is the set
of conformal-minimal nonzero integer dependencies on A. A set UA ⊆ kerZ (A) is an
universal test set for IPA if UA contains a test set for the family of integer programs
IPA,w for every generic w. The Graver basis GrA and the universal Gröbner basis
UGBA of A are universal test set for A.
Another way of looking at Graver basis is the following. For each σ ∈ {+, −}
consider the semigroup Sσ = kerZ (A)∩Rnσ where Rσn is the orthant with sign pattern
σ. We have a pointed polyhedral cone in Rn
nX
o
pos(Sσ ) =
λi xi | xi ∈ Sσ , λi > 0
Pointed cones have a unique Hilbert basis Hσ . Graver showed that GrA := ∪σ Hσ \ {0}
is a universal test set for IPA .
4.2. Lawrence Lifting. The Lawrence lifting of the matrix A ∈ Zm×n is the
enlarged matrix
A 0m×n
Λ(A) =
∈ Z(m+n)×2n
In
In
Where In ∈ Zn×n is the n-identity matrix and 0m×n ∈ Zm×n is the all zero matrix.
The matrices A and Λ(A) have isomorphic kernels kerZ (Λ(A)) = {(u, −u) | u ∈
kerZ (A)} and the toric ideal IΛ(A) is an homogeneous prime ideal defined as
(10)
+
−
−
+
IΛ(A) = hxu zu − xu zu | u ∈ ker(A)i ⊆ K[x, z]
where z represents the variables z1 , z2 , . . . , zn .
Theorem 4.2 (Sturmfels-Thomas, 1998, [17] Theorem 7.1). For the matrix Λ(A)
the following sets coincide:
1. The Graver basis of Λ(A).
2. The universal Gröbner basis of Λ(A).
3. Any reduced Gröbner basis of Λ(A).
4. Any minimal generating set of Λ(A) (up to scalar multiples).
Theorem 4.2 above suggest the following algorithm for computing a Graver basis
of A. Choose any term order on K[x, z] and compute a reduced Gröbner basis of
Λ(A), by Theorem 4.2, any reduced Gröbner basis of Λ(A) is also a Graver basis of
Λ(A). Thus for each element in the Graver basis xα zβ − xβ zα , the element xα − xβ
belongs to the Graver basis of A.
Now let us consider the matrix A ∈ Zm×n
, in a similar fashion we can consider
q
the Lawrent lifting for the modulo q of the matrix A as
A 0q,m×n
Λ(A)q =
∈ Zq(m+n)×2n
Iq,n
Iq,n
Advances in Mathematics of Communications
Volume X, No. X (200X), X–XX
Algebraic structure of the minimal support codewords set
9
Where Iq,n ∈ Zn×n
is the n-identity matrix and 0q,m×n ∈ Zm×n
is the all zero
q
q
matrix.
Remark 3. Note that again, as pointed in Remark 1 we can see the ideal related
to the the Zq -kernel of Λ(A)q as an elimination ideal of the ideal related to the
Z-kernel of the matrix
NA 0m×n q · Im
∈ Z(m+n)×(2n+m) .
In
In
0n×m
Then we have a similar result to that in the previous theorem relating the Zq kernel of A and the kernel of Λ(A)q (see [11, Theorem 8]). In order to to compute
the Gaver basis note that again we can use the modified version of the FGLM-like
algorithm in order to compute kerZq (Λ(A)q ).
4.3. Minimal support codewords set. We will consider a linear code over the
alphabet Zq of length n and dimension n−k as linear subspace CCZnq . The elements
of C are call codewords and for a c ∈ C we define the support of c = (c1 , . . . , cn ) as
its support as a vector, i.e. supp(c) = {i | ci 6= 0}. Let HC be the parity check with
parity check matrix of C. We will say that a codeword m has minimal support or
that it is a minimal support codeword if it is non-zero and supp(m) is not contained
in the supports of any other codewords. We have the following easy result
Lemma 4.3. Two minimal support codewords in C C Znq with the same support
should be one scalar multiple of the other.
Proof. Suppose that m = (m1 , . . . , mn ) ∈ C is a minimal support codeword and
there is a mi 6= 0 i ∈ {1, . . . , n} and such that αmi = 0 where 0 6= α ∈ Zq , then
αm ∈ C and supp(αm) $ supp(m) which contradices the minimality of m unless
αm = 0. Thus either all its non-zero entries must be units in Zq or all of them
are non units. Moreover, if all its non-zero entries are non units they must be
equal since if there are two of them different 0 6= mi1 6= mi2 6= 0 we can suppose
w.l.g. that Nmi1 < Nmi2 , take β = Nmq i then Hβm is a non-zero codeword with
2
supp(Hβm) $ supp(m) which contradices the minimality.
Now consider the case where all its non-zero entries are units in Zq and let
m0 = (m01 , . . . , m0n ) be also a minimal support codeword with supp(m) = supp(m0 )
and let mi , m0i two non zero entries of m, m0 respectively, thus they are units and
mi
0
c = m− m
0 m ∈ C. Since supp(c) $ supp(m) and m is a minimal support codeword
i
mi
then m − m0 m0 = 0 and the result holds.
i
We will define a set of codewords of minimal support of the code as a set containing
a representative of all the minimal support codewords of the code modulo scalar
multiplication.
Theorem 4.4. A Graver basis of HC a parity check matrix of C gives us a set of
codewords of minimal support of the code C ⊆ Znq .
Proof. Let m be a codeword of minimal support of the code C and GrHC the Graver
+
−
basis of HC . Assume that m ∈
/ GrHC , this implies that the binomial xm − xm
+
−
is not primitive. Hence there exists a binomial xu − xu such that u @ m,
contradicting the fact that m has minimal support.
The previous result gives us a procedure to compute the set of minimal supports
of codes defined on Zq , in particular for codes over Fp with p prime, but not for the
Advances in Mathematics of Communications
Volume X, No. X (200X), X–XX
10
Irene Márquez-Corbella and Edgar Martı́nez Moro
case pr since Fpr 6≡ Zpr . In the binary case the set of codewords of minimal support
of the code are all minimal codewords, we have CA = UGBA = GrA , the cases when
this equality holds and the obstructions for this property in the non modular case
are studied by Bogart, Jensen and Thomas [3]. Now the two following corollaries
are straigth forward
Corollary 4.5. Let C ⊆ Znq be a linear code and HC a parity check matrix of C,
then the set of minimal support codewords of the code C is the projection on the first
n coordinates of the set
(11)
{w | w = (v, (q − 1) · v) ∈ T }
where T is a Gröbner test set of the integer modular linear program with associated
matrix
HC 0
.
In In
Corollary 4.6. The minimal codewords of C can be computed from the ideal
D
E
(12) {xNw1 zNw1 (q−1) − 1, . . . , xNwk zNwk (q−1) − 1} ∪ {xqi − 1}ni=1 ∪ {ziq − 1}ni=1
where wi for i = 1, . . . , k are the rows of a generator matrix of C.
Example 4.7 (Toy example). Consider H C F72 the [7, 4, 3] Hamming code over
F2 . It has 16 codewords of weights 0, 3, 4, 7. All the 14 codewords of weight 3 or 4
we are minimal and the only non minimal codewords are 0 and 1. If we compute
the Gröbner test set for H w.r.t. a degree reverse lexicographic ordering we get the
following Gröbner basis
{x3 x7 + x1 , x1 x7 + x3 , x5 x6 + x1 , x4 x6 + x3 , x3 x6 + x4 , x2 x6 + x7 ,
x1 x6 + x5 , x4 x5 + x7 , x3 x5 + x2 , x2 x5 + x3 , x1 x5 + x6 , x3 x4 + x6 ,
x2 x4 + x1 , x1 x4 + x2 , x2 x3 + x5 , x1 x3 + x7 , x1 x2 + x4 } ∪ {x2i − 1}7i=1
which gives us the 7 minimal codewords of weight 3
(0, 1, 0, 0, 0, 1, 1), (1, 0, 1, 0, 0, 0, 1), (1, 1, 0, 1, 0, 0, 0), (0, 1, 1, 0, 1, 0, 0),
(0, 0, 1, 1, 0, 1, 0), (1, 0, 0, 0, 1, 1, 0), (0, 0, 0, 1, 1, 0, 1).
The degree reverse lexicographic Gröbner basis of the Lawrence lifting used for computing the Graver basis has 155 elements representing the 7 words already in the
Gröbner test set plus the 7 minimal codewords of weight 4.
(0, 1, 0, 1, 1, 1, 0), (1, 0, 1, 1, 1, 0, 0) , (1, 1, 1, 0, 0, 1, 0), (0, 1, 1, 1, 0, 0, 1),
(1, 1, 0, 0, 1, 0, 1), (1, 0, 0, 1, 0, 1, 1), (0, 0, 1, 0, 1, 1, 1)
Acknowledgements
We would like to thank A. Vigneron for his valuable comments and suggestions.
In fact some of the ideas behind modulo q integer programs are closely related to the
ideas in Vigneron-Pisón’s paper [15] when considering semigroups with q-torsion.
References
[1] A. Barg, Complexity issues in coding theory, In Handbook of Coding Theory, Elsevier Science,
1, (1998), 649–754
[2] E.R. Berlekamp, R.J. McEliece, H.C.A. van Tilborg, On the Inherent Intractability of Certain
Coding Problems IEEE Trans. Inform. Theory, IT-24, no. 3, (1978), 384–386.
[3] T. Bogart, A.N. Jensen and R.R. Thomas, The circuit ideal of a vector configuration, J.
Algebra 308 (2007), no. 23, 518–542.
Advances in Mathematics of Communications
Volume X, No. X (200X), X–XX
Algebraic structure of the minimal support codewords set
11
[4] M. Borges-Quintana, M.A. Borges-Trenard, P. Fitzpatrick and E. Martı́nez-Moro, Gröbner
bases and combinatorics for binary codes, Appl. Algebra Engrg. Comm. Comput. 19 (2008),
no. 5, 393–411.
[5] M. Borges-Quintana, M.A. Borges-Trenard and E. Martı́nez-Moro, A Gröbner bases structure
associated to linear codes, J. Discrete Math. Sci. Cryptogr. 10 (2007), no. 2, 151–191.
[6] Y. Borissov, N. Manev, Nickolai Minimal codewords in linear codesSerdica Math. J. 30 no.
2-3, (2004), 303–324
[7] J. Bruck, M. Naor, The Hardness of Decoding Linear Codes with Preprocessing, IEEE Trans.
Inform. Theory 36, no. 2, (1990)
[8] P. Conti and C. Traverso, Buchberger algorithm and integer programming, Applied algebra,
algebraic algorithms and error-correcting codes (New Orleans, LA, 1991), Lecture Notes in
Comput. Sci. 539 (1991), 130–139.
[9] F. Di Biase and R. Urbanke, An algorithm to calculate the kernel of certain polynomial ring
homomorphisms, Experiment. Math. 4 (1995), no. 3, 227–234.
[10] T.Y. Hwang, Decoding linear block codes for minimizing word error rate, IEEE Trans. Inform.
Theory 25 (1979), 733–737.
[11] D. Ikegami and Y. Kaji, Maximum likelihood decoding for linear block codes using Gröbner
bases, IEICE Trans. Fund. Electron. Commun. Comput. Sci. E86-A , 3 (2003) 643–651.
[12] R. Liebler,Implementing gradient descent decoding,Michigan Math. J. 58 , Issue 1 (2009),
285–291.
[13] J. L. Massey. Minimal Codewords and Secret Sharing, Proceedings of the 6th Joint SwedishRussian International Workshop on Information Theory (1993), 246–249.
[14] H. Ohsugi,, D. Ikegami, T. Kitamura and T. Hibi, Gröbner bases bases of certain zerodimensional ideals arising in coding theory, Adv. in Appl. Math., 31 (2003) no. 2, 420–432.
[15] P. Pisón-Casares and A. Vigneron-Tenorio, On Lawrence semigroups Journal of Symbolic
Computation, 43 (2008), 804–810.
[16] A. Schrijver, Theory of Linear and Integer Programming Wiley-Interscience, (1996).
[17] B. Sturmfels, Gröbner bases bases and Convex Polytopes University Lecture Series, 8, American Mathematical Society, Providence, RI, (1996).
Received April 2010; revised ??.
E-mail address: [email protected]
E-mail address: [email protected]
Advances in Mathematics of Communications
Volume X, No. X (200X), X–XX
© Copyright 2026 Paperzz