New code upper bounds from the Terwilliger

1
New code upper bounds from the Terwilliger
algebra and semidefinite programming
Alexander Schrijver
Abstract— We give a new upper bound on the maximum size
A(n, d) of a binary code of word length n and minimum distance
at least d. It is based on block-diagonalising the Terwilliger algebra of the Hamming cube. The bound strengthens the Delsarte
bound, and can be calculated with semidefinite programming in
time bounded by a polynomial in n. We show that it improves a
number of known upper bounds for concrete values of n and d.
From this we also derive a new upper bound on the maximum
size A(n, d, w) of a binary code of word length n, minimum
distance at least d, and constant weight w, again strengthening
the Delsarte bound and yielding several improved upper bounds
for concrete values of n, d, and w.
A. The Terwilliger algebra
We first describe the Terwilliger algebra of the Hamming
cube, in a form convenient for our purposes. For background
we refer to our notes in Subsection I-C.
t
For nonnegative integers i, j, t, let Mi,j
be the P ×P matrix
with
(
1 if |X| = i, |Y | = j, |X ∩ Y | = t,
t
(1)
(Mi,j )X,Y :=
0 otherwise,
Index Terms— block-diagonalisation, codes, constant-weight
codes, Delsarte bound, semidefinite programming, Terwilliger
algebra, upper bounds.
t T
t
for X, Y ∈ P. So (Mi,j
) = Mj,i
. It is trivial but useful
to note that if |X| = i and |Y | = j, then |X ∩ Y | = t is
equivalent to |X4Y | = i + j − 2t.
Let An be the set of matrices
I. D ESCRIPTION
OF THE METHOD
We present a new upper bound on A(n, d), the maximum
size of a binary code of word length n and minimum distance
at least d. The bound is based on block-diagonalising the (noncommutative) Terwilliger algebra of the Hamming cube and
on semidefinite programming. The bound refines the Delsarte
bound [4], which is based on diagonalising the (commutative)
Bose-Mesner algebra of the Hamming cube and on linear
programming. We describe the approach in this section, and
go over to the details in Section II.
Taking a tensor product of the algebra, this approach also
yields a new upper bound on A(n, d, w), the maximum size
of a binary code of word length n, minimum distance at least
d, and constant weight w. This bound strengthens the Delsarte
bound for constant-weight codes. We describe this method in
Section III.
Fix a nonnegative integer n, and let P be the collection of
all subsets of {1, . . . , n}. We identify code words in {0, 1}n
with their support. So a code C is a subset of P. The Hamming
distance of X, Y ∈ P is equal to |X4Y |. The minimum
distance of a code C is the minimum Hamming distance of
distinct elements of C. For finite sets U and V , a U ×V matrix
is a matrix whose rows and columns are indexed by U and
V , respectively.
For background on coding theory and association schemes
we refer to MacWilliams and Sloane [9]. However, most of
this paper is self-contained. While we will mention below a
theorem on the existence of a block-diagonalisation of a C∗algebra, we prove this theorem for the algebras concerned by
displaying an explicit block-diagonalisation.
CWI and University of Amsterdam. Mailing address: CWI, Kruislaan 413,
1098 SJ Amsterdam, The Netherlands. Email: [email protected]
(2)
n
X
t
xti,j Mi,j
i,j,t=0
with xti,j ∈ C. It is easy to check that An is a C∗-algebra: it
is closed under addition, scalar and matrix multiplication, and
taking the adjoint. (Matrix multiplication follows from the fact
t
that Mi,j
Mjs0 ,k = 0 if j 6= j 0 , and that for X, Z ∈ P then the
number of Y ∈ P with |Y | = j, |X ∩ Y | = t, |Y ∩ Z| = s
s
t
Mj,k
is a
only depends on |X|, |Z|, and |X ∩ Z|. So Mi,j
u
linear combination of Mi,k for u = 0, . . . , n.)
This algebra is called the Terwilliger algebra [14] of the
Hamming cube H(n, 2). It has dimension
(3)
dim An =
n+3
3
,
t
since it is the number of triples (i, j, t) with Mi,j
6= 0, which
is equal to the number of triples (a, b, t) with a + b + t ≤ n.
Since An is a C∗-algebra and since An contains the identity
matrix, there exists a unitary P × P matrix U (that is, U ∗ U =
I) and positive integers p0 , q0 , . . . , pm , qm (for some m) such
that U ∗ An U is equal to the collection of all block-diagonal
matrices


C0 0 · · ·
0
 0 C1 · · ·
0 


(4)
 ..

..
.
.
 .
.
.
0 
0
0 · · · Cm
(for later purposes, we start the numbering at 0), where each
Ck is a block-diagonal matrix with qk repeated, identical
blocks of order pk :
2
(5)



Ck = 

Bk
0
..
.
0
Bk
..
.
···
···
..
.
0
0
···

0
0 

.
0 
Bk
As R and R0 are sums of positive semidefinite matrices,
they are positive semidefinite. Moreover, R and R0 belong to
An . To see this, define
(10)
n+3
p20 +· · ·+p2m
So
= dim(An ) = 3 and p0 q0 +· · ·+pm qm =
2n .
By deleting copies of blocks, we see that An is (as a C∗algebra) isomorphic to the direct sum
(6)
m
M
k=0

0
B1
..
.
···
···
..
.
0
0
for k = 0, . . . , m}.
···


Cpk ×pk = {

Cpk ×pk
B0
0
..
.

0
0
0
Bm


 | Bk ∈

The isomorphism maintains positive semidefiniteness of matrices. The number m and the block sizes pk and block
multiplicities qk are (up to permutation of the indices k)
uniquely determined by the C∗-algebra.
So far, this is all standard C∗-algebra theory, but we will
need this block-diagonalisation of the Terwilliger algebra An
more explicitly. In Section II we will specify a matrix U with
the required properties. It will turn out that U can be taken real,
that m = b n2 c, and that, for k = 0, . . . , b n2 c, there is
a block
n
.
Bk of order pk = n−2k+1 and multiplicity qk = nk − k−1
Pb n2 c
n+3
2
(One may check that indeed
(n− 2k + 1) = 3 (cf.
Pb n2 c n k=0
n
−
(n − 2k + 1) = 2n (cf.
(48) below) and k=0
k
k−1
(41) below).)
To describe the image of (2) in (6), define, for i, j, k, t ∈
{0, . . . , n}:
(7)
t
βi,j,k
:=
n
X
u=0
(−1)u−t
u
t
n−2k
u−k
n−k−u
i−u
n−k−u
j−u
.
In Theorem 1 (concluding Section II) we will see that, for
k = 0, . . . , b n2 c, the kth block Bk of the image (6) of (2) is
the following (n − 2k + 1) × (n − 2k + 1) matrix:
(8)
X
t
1
1
n−2k − 2 n−2k − 2 t
βi,j,k xti,j
i−k
j−k
!n−k
.
i,j=k
B. Application to coding
Let C ⊆ P be any code. It will be convenient to assume
∅ 6= C 6= P.
Let Π be the set of (distance-preserving) automorphisms π
of P with ∅ ∈ π(C), and let Π0 be the set of automorphisms π
of P with ∅ 6∈ π(C). Let χπ(C) denote the incidence vector of
π(C) in {0, 1}P (taken as column vector). Define the P × P
matrices R and R0 by:
(9)
X
|Π|−1 χπ(C) (χπ(C) )T and
π∈Π
X
R0 :=
|Π0 |−1 χπ(C) (χπ(C) )T .
R :=
π∈Π0
xti,j :=
1
n
i−t,j−t,t
|C|
λti,j ,
a
denotes the number of pairwise disjoint
where b1 ,...,b
m
subsets of a set of size a, of sizes b1 , . . . , bm respectively,
and where
(11)
λti,j := the number of triples (X, Y, Z) ∈ C 3 with
|X4Y | = i, |X4Z| = j, and |(X4Y )∩(X4Z)| = t.
n
i−t,j−t,t
We set xti,j = 0 if
Then
= 0.
Proposition 1:
(12)
R=
X
t
xti,j Mi,j
and
i,j,t
R0 =
|C| X 0
t
(x
− xti,j )Mi,j
.
2n − |C| i,j,t i+j−2t,0
Proof: Consider any X ∈ P, and let ΠX be the set of
automorphisms π of P with π(X) = ∅. So |ΠX | = n!. Let
(13)
RX :=
X
|ΠX |−1 χπ(C) (χπ(C) )T .
π∈ΠX
As the value of (RX )Y,Z only depends on |X4Y |, |X4Z|,
and |(X4Y ) ∩ (X4Z)|, we know that RX belongs to An .
In fact,
(14)
RX =
X
i,j,t
−1 t,X t
n
λi,j Mi,j ,
i−t,j−t,t
2
where λt,X
i,j is the number of pairs (Y, Z) ∈ C with |X4Y | =
i, |X4Z| = j, and |(X4Y ) ∩ (X4Z)| = t.
Equation (14) follows from the fact that for any π ∈ ΠX and
for all i, j, t, the number of 1’s of χπ(C) (χπ(C) )T in positions
n
t
where Mi,j
is 1, is equal to λt,X
i,j . As there are i−t,j−t,t such
positions, we obtain
P (14). −1
P
n
Now R =
RX and R0 =
X∈C |C|
X∈P\C (2 −
−1
|C|) RX . Moreover,
(15)
X
t
λt,X
i,j = λi,j
X∈C
and
(16)
X
X∈P\C
λt,X
i,j =
i+j−2t
i−t
n−i−j+2t
t
The latter expression follows from
λ0i+j−2t,0 − λti,j .
3
(17)
X
λt,X
i,j =
i+j−2t
i−t
X∈P
n−i−j+2t
t
λ0i+j−2t,0 ,
which holds since for any pair (Y, Z) ∈ C 2 with |Y 4Z| = i+
j −2t, the number of sets X ∈ P with |X4Y | =i, |X4Z| =
n−i−j+2t
.
j, and |(X4Y )∩(X4Z)| = t is equal to i+j−2t
t
i−t
Since |Π| = |C|n! and |Π0 | = (2n − |C|)n!, and since
(18)
−1 i+j−2t n−i−j+2t
n
t
i−t
i−t,j−t,t
=
(14) gives (12).
−1
n
,
i+j−2t
The positive semidefiniteness of R and R0 is by (8) equivalent to:
(19)
for each k = 0, . . . , b n2 c, the matrices
!n−k
n
X
t
t
βi,j,k xi,j
t=0
i,j=k
and
n
X
t
βi,j,k
(x0i+j−2t,0
t=0
−
xti,j )
!n−k
i,j=k
are positive semidefinite.
This is a semidefinite programming problem with O(n3 )
variables, and it can be solved in time polynomial in n. (A
generic form of a semidefinite programming problem is: given
c1 , . . . , ct ∈ R and real symmetric matrices A0 , . . . , At , B
(of
xt ∈ R that maximize
P equal dimensions), find x1 , . . . , P
i xi Ai )−B is positive
i ci xi subject to the condition that (
semidefinite. If all Ai and B are diagonal matrices, we have a
linear programming problem. Under certain conditions (which
are satisfied in the present case), semidefinite programming
problems can be solved in polynomial time. For background on
semidefinite programming we refer to Todd [15] and Wright
[17].)
One may reduce the number of variables by using the wellknown facts that if d is odd then A(n, d) = A(n + 1, d + 1)
and that if d is even then A(n, d) is attained by a code with
all code words having even Hamming weights. So one can put
xti,j = 0 if i or j is odd.
The method gives, in the range n ≤ 28, the new upper
bounds on A(n, d) given in Table I (cf. the tables given
by Best, Brouwer, MacWilliams, Odlyzko, and Sloane [3]
and Agrell, Vardy, and Zeger [2]; A(25, 8) ≤ 5557 and
A(26, 10) ≤ 989 were shown by Mounits, Etzion, and Litsyn
[11], A(22, 10) ≥ 64 by Östergård [12], and A(25, 10) ≥ 192
and A(26, 10) ≥ 384 by Elssel and Zimmermann [5] (see also
Andries Brouwer’s website http://www.win.tue.nl/∼aeb/codes/
binary-1.html)).
− 21 n−2k− 21
as it makes
(We have deleted the factor n−2k
j−k
i−k
the coefficients integer, while positive semidefiniteness is
maintained.)
The xti,j ’s moreover satisfy the following constraints, where
(iv) holds if C has minimum distance at least d:
(20)
n
19
23
25
19
20
25
27
28
22
25
26
(i) x00,0 = 1,
(ii) 0 ≤ xti,j ≤ x0i,0 and x0i,0 + x0j,0 ≤ 1 + xti,j for all
i, j, t ∈ {0, . . . , n},
0
(iii) xti,j = xti0 ,j 0 if (i0 , j 0 , i0 +j 0 −2t0 ) is a permutation
of (i, j, i + j − 2t),
(iv) xti,j = 0 if {i, j, i + j − 2t} ∩ {1, . . . , d − 1} 6= ∅.
d
6
6
6
8
8
8
8
8
10
10
10
best
lower
bound
known
1024
8192
16384
128
256
4096
8192
16384
64
192
384
new
upper
bound
1280
13766
47998
142
274
5477
17768
32151
87
503
886
best upper
bound
previously
known
1288
13774
48148
144
279
5557
17804
32204
88
549
989
Delsarte
bound
1289
13775
48148
145
290
6474
18189
32206
95
551
1040
TABLE I
0
(Condition (ii) follows from the fact that each row of R and R
is nonnegative and is dominated by its diagonal entry (by (9)).
Conditions (iii) and (iv) follow from the fact that λti,j is equal
to the number of triples (X, Y, Z) in C 3 with |X4Y | = i,
|X4Z| = j, and |Y 4Z| = i + j − 2t, as follows directly
from (11).)
Moreover,
(21)
|C| =
n
X
n
i
i=0
x0i,0 ,
P
since |C|2 = ni=0 λ0i,0 . Hence we obtain an upper bound on
A(n, d) by considering the xti,j as variables, and by
(22)
maximizing
(20).
n
X
i=0
n
i
N EW
A(n, d)
Our computations were done by the algorithm SDPT3
version 3.02 (cf. Tütüncü, Toh, and Todd [16]), which is
available through the web on the NEOS Server for Optimization (http://www-neos.mcs.anl.gov/neos/server-solvers.
html#SDP). The answers have been confirmed by the algorithm DSDP version 5.5, available on the same server.
We note that the new bound is stronger than the
P Delsarte
bound, which is equal to the maximum value of i ni x0i,0
subject to the condition that x0i,0 ≥ 0 for all i and x0i,0 = 0 if
1 ≤ i ≤ d − 1, and to the condition that
(23)
x0i,0 subject to conditions (19) and
UPPER BOUNDS ON
X
t
is positive semidefinite.
x0i+j−2t,0 Mi,j
i,j,t
(This matrix belongs to the Bose-Mesner algebra, which is a
4
subalgebra of An .) The latter condition is equivalent to the
Delsarte inequalities (involving the Krawtchouk polynomial).
(Then the variables different from the x0i,0 are superfluous and
can be deleted.) Condition (23) is a consequence of the positive
semidefiniteness of the matrices
(24)
X
t
xti,j Mi,j
and
i,j,t
X
t
(x0i+j−2t,0 − xti,j )Mi,j
,
n
i
OF THE
ALGEBRA
x0i,0 ≤ A∗ (n, d, i),
where A∗ (n, d, i) is any upper bound on the maximum size of
a constant-weight code of word length n, minimum distance
at least d, and constant weight i. Adding these constraints
to the new bound seems less effective than adding them to
the Delsarte bound, as the new bound implicitly contains
the Delsarte bound for the Johnson schemes. Using known
upper bounds A∗ (n, d, i), we did not obtain in this way any
improvement in the above table.
T ERWILLIGER
In this section we show that (8) indeed describes the blockdiagonalisation of An . For k = 0, . . . , b n2 c, let Lk be the linear
space
k−1
Lk := {b ∈ RP | Mk−1,k
b = 0, and bX = 0 if |X| 6=
k}.
(26)
i,j,t
which is, as we saw, equivalent to (19).
A sharpening of the bound can be obtained by adding the
conditions (for appropriate i)
(25)
II. B LOCK - DIAGONALISATION
Then
i
Mi,k
b = 0 for all i < k and b ∈ Lk ,
(27)
k−1
i
i
since Mi,k−1
Mk−1,k
= (k − i)Mi,k
.
The dimension of Lk is given by:
n
k
dim Lk =
(28)
since:
−
n
k−1
,
k−1
Proposition 2: For each k ≤ b n2 c, Mk−1,k
has rank
Proof: We have
C. Some background
Above we have introduced the Terwilliger algebra of the
Hamming cube in a way that is convenient for our purposes,
which differs slightly from the usual (but equivalent) definition. In the usual terminology, we consider the Terwilliger
algebra T = T (0) of the Hamming cube H(n, 2) with respect
to 0. This is the algebra generated by the P × P 0, 1 matrices
Ad and Ed∗ for d = 0, . . . , n, where (Ad )X,Y = 1 ⇐⇒
|X4Y | = d, and (Ed∗ )X,Y = 1 ⇐⇒ X = Y and |X| = d.
t
∗
∗
Then
P Mi,j = Ei Ati+j−2t Ej ∗ for all di, j, t. Conversely, Ad =
i,j,t;i+j−2t=d Mi,j and Ed = Md,d for each d. So T (0)
coincides with our algebra An .
Basic properties of the Terwilliger algebra of the Hamming
cube were found by Go [6]. In particular, Go identified the
irreducible T -modules of the algebra, which implies the block
sizes and block multiplicities of An . Go also described bases
for these modules. Our paper needs, and gives, a more explicit
description of these bases. It also yields an explicit decomposition of the Terwilliger algebra into irreducible constituents.
The present research roots in two basic papers presenting
eigenvalue techniques to obtain upper bounds: Delsarte [4],
giving a bound on codes based on association schemes, and
Lovász [7], giving a bound on the Shannon capacity of a graph.
It was shown by McEliece, Rodemich, and Rumsey [10] and
Schrijver [13] that the Delsarte bound is a special case of (a
close variant of) the Lovász bound. (This is not to say that the
Lovász bound supersedes the Delsarte bound: essential in the
latter bound is a reduction of the 2n -vertex graph problem to a
linear programming problem of order n.) An extension of the
Lovász bound based on ‘matrix cuts’ was given by Lovász and
Schrijver [8]. Applying a variant of matrix cuts to the coding
problem leads to considering the Terwilliger algebra as above.
n
k−1
.
k−1
k−1
Mk−1,k
Mk,k−1
=
k−2
k−2
k−1
Mk−1,k−2
Mk−2,k−1
+ (n − 2k + 2)Mk−1,k−1
.
(29)
k−2
k−2
As Mk−1,k−2
Mk−2,k−1
is positive semidefinite, as n − 2k +
n
k−1
,
2 > 0, and as Mk−1,k−1 is positive semidefinite of rank k−1
n
k−1
k−1
we know that Mk−1,k Mk,k−1 has rank k−1 . Hence also
n
k−1
Mk−1,k
has rank k−1
.
The following formula is basic to our results (note that
cT b = 0 if c ∈ Ll , b ∈ Lk , and l 6= k):
Proposition 3: For i, j, k, l, t ∈ {0, . . . , n} with k, l ≤ b n2 c,
and for c ∈ Ll , b ∈ Lk :
l
t
k
t
cT Ml,i
Mi,j
Mj,k
b = βi,j,k
cT b.
(30)
Proof: First we have for each s ∈ {0, . . . , n}:
(31)
s
s
Ml,s
Ms,k
=
n
X
p=0
p
s
p
Ml,k
,
since the entry of this matrix in position (X, Y ), with |X| = l
and |Y | = k, is equal to the number of common subsets of X
and Y of size s.
Equation (31) implies for all l, k, p ∈ {0, . . . , n}:
(32)
p
Ml,k
=
n
X
s=0
since
(−1)s−p
s
p
s
s
Ms,k
,
Ml,s
5
(33)
n
X
(−1)s−p
s
p
(−1)s−p
s
p
s=0
n
X
s=0
n X
n
X
If l 6= k, this is 0 by (30). If l = k, then, again by (30), it is
T
i
equal to βi,i,k
cT b = n−2k
i−k c b.
s
s
Ml,s
Ms,k
=
n
X
t
s
t=0
s
p
(−1)s−p
t=0 s=0
t
s
t
Ml,k
=
t
Ml,k
=
n
X
p
t
δt,p Ml,k
= Ml,k
,
t=0
where δt,p = 1 if t = p, and δt,p = 0 else.
Equation (32) implies that for all l, k, p ∈ {0, . . . , n} and
b ∈ Lk :
(34)
p
Ml,k
b
=
(−1)k−p kp
p
k
Mp,j
Mj,k
b=
n−k−p
j−p
since
(36)
p
k
Mp,j
Mj,k
b=
n
X
t=0
p=0
n
X
p
t
n−p−k+t
n−j
(−1)k−t
(−1)t−p
p
t
p=0
k
t
t
Mp,k
b=
k
Mp,k
b=
(43)
n−k−p
j−p
k
Mp,k
b.
n−l−p
i−p
n−l−p
i−p
n−k−p
j−p
n−k−p
j−p
l
k
cT Ml,p
Mp,k
b=
n−l−k
n−p−k
(44)
k
cT Ml,k
b.
Proposition 4: For i, j, k, l ∈ {0, . . . , n} with k, l ≤ b n2 c,
and for c ∈ Ll , b ∈ Lk :
(38)
c
=
n−2k
i−k
0
cT b if l = k, i = j,
otherwise.
l
k
Proof: Since Ml,i
Mj,k
= 0 if i 6= j, we can assume
i = j. Then
(39)
c
T
l
k
Ml,i
Mi,k
b
=c
i=0
k=0
n
min{i,n−i}
T
l
i
k
Ml,i
Mi,i
Mi,k
b.
uk,b,i :=
=
n
X
i=0
n
i
−
n
k−1
= 2n .
=
1 k
n−2k − 2
Mi,k b.
i−k
ft )
0 ),(k,b,j 0 ) =
(M
 i,j (l,c,i
− 12 n−2k− 21 t
n−2k

βi,j,k
 i−k
j−k


0
if l = k, i = i0 , j = j 0 ,
and b = c,
otherwise.
Proof: We have
This implies:
(
k
Proposition 5: For (l, c, i0 ), (k, b, j 0 ) ∈ V and i, j, t ∈
{0, . . . , n}:
(45)
l
k
Ml,i
Mj,k
b
n min{i,n−i}
X X
n
With (41), Proposition 4 implies that the uk,b,i ’s form an
orthonormal basis for RP . Let U be the P × V matrix whose
(k, b, i)-th column equals uk,b,i , for (k, b, i) ∈ V . Then for
ft := U T M t U is in blockeach triple i, j, t, the matrix M
i,j
i,j
diagonal form. This will follow from:
By (27), the latter expression is nonzero only if l = k, in
t
cT b. Since cT b = 0 if l 6= k,
which case it is equal to βi,j,k
this proves the proposition.
T
|V | =
i=0
p=0
(−1)t−p
(42)
n
X
l
t
k
cT Ml,i
Mi,j
Mj,k
b=
n
X
p
p
k
l
(−1)t−p pt cT Ml,i
Mj,k
b=
Mp,j
Mi,p
n
X
|V | = 2n ,
since
k
Mp,k
b,
We finally obtain (30) (using (32) and three times (35)):
(37)
Then
For each (k, b, i) ∈ V , define uk,b,i ∈ RP by
n
X
t=0
n−p−k+t
n−j
V := {(k, b, i) | k ∈ {0, . . . , b n2 c}, b ∈ Bk , i ∈
{k, k + 1, . . . , n − k}}.
(40)
(41)
k
b,
Ml,k
s
s
s
since Ml,s
Ms,k
b = 0 if s 6= k: if s < k then Ms,k
b = 0 (by
s
(27)) and if s > k then Ms,k = 0.
Equation (34) implies
(35)
For each k = 0, . . . , b n2 c, choose an orthonormal basis Bk
n
of Lk . By (28), |Bk | = nk − k−1
. Let
t
t
fi,j
(M
)(l,c,i0 ),(k,b,j 0 ) = uT
l,c,i0 Mi,j uk,b,j 0 =
1
1
−
−
2 n−2k
2 T
n−2l
l
t
k
c Ml,i
0 Mi,j Mj 0 ,k b.
j 0 −k
i0 −l
This is 0 if i0 6= i or j 0 6= j. So we can assume that i = i0
and j = j 0 . Then (30) and (45) imply (44).
This implies that each matrix in U T An U is a block-diagonal
matrix determined by the partition of V into the classes
(46)
Vk,b := {(k, b, i) | k ≤ i ≤ n − k},
for k = 0, . . . , b n2 c and b ∈ Bk . Indeed, if (l, c, i0 ), (k, b, j 0 ) ∈
ft )(l,c,i0 ),(k,b,j 0 ) = 0 if l 6= k or c 6= b.
V then (M
i,j
6
Moreover, for k ∈ {0, . . . , b n2 c}, b, c ∈ Bk , and i0 , j 0 ∈
{k, . . . , n − k} we have by (44)
(47)
t
t
fi,j
fi,j
(M
)(k,b,i0 ),(k,b,j 0 ) = (M
)(k,c,i0 ),(k,c,j 0 ) .
So for each fixed k, the blocks determined by the Vk,b (over
b ∈ Bk ) are equal.
For each k and each b ∈ Bk , the block determined by Vk,b
has size |Vk,b | = n − 2k + 1. Now
(52)
X
t,s
s,v
t,w
zi,j,i
0 ,j 0 Mi,j ◦ Mi0 ,j 0
i,j,t,i0 ,j 0 ,s
t,s
with zi,j,i
0 ,j 0 ∈ C.
The algebra Aw,v can be brought into block-diagonal form
by
(53)
(Uw ◦ Uv )T Aw,v (Uw ◦ Uv ),
since
bn
2c
(48)
X
(n − 2k + 1)2 =
n+3
3
k=0
.
(54)
(Proof: Induction
n. It
for n = 0 and n = 1.
on n+1
is true
1
Moreover, n+3
−
((n
+ 3)(n + 2)(n + 1) −
=
3
3
6
(n + 1)n(n − 1)) = 61 ((n3 + 6n2 + 11n + 6) − (n3 − n)) =
1
2
2
6 (6n + 12n
+ 6) = (n + 1) .)
n+3
As 3 is the dimension of An (by (3)), we can conclude
that An is (as an algebra) isomorphic to the direct sum
for all i, j, i0 , j 0 , t, s. Then the blocks of Aw,v are spanned by
the tensor products Bkw ◦Blv of a block Bkw of Aw and a block
Blv of Av . Note that Bkw ◦ Blv is a (Wk × Vl ) × (Wk × Vl )
matrix, where we denote
(55)
bn
2c
(49)
M
Wk := {k, k + 1, . . . , w − k} and
Vl := {l, l + 1, . . . , v − l}.
CVk,bk ×Vk,bk ,
k=0
where bk is an arbitrary element of Bk .
In other words, define, for each k = 0, . . . , b n2 c,
By Theorem 1 and by the definition of tensor product, matrix
(52) maps in Bkw ◦ Blv to the matrix
(56)
(50)
t,w
◦ Mis,v
(Uw ◦ Uv )T (Mi,j
0 ,j 0 )(Uw ◦ Uv ) =
t,w
T
(Uw Mi,j Uw ) ◦ (UvT Mis,v
0 ,j 0 Uv )
Nk := {k, k + 1, . . . , n − k}.
X
t,s
1
1
1
1
w−2k − 2 w−2k − 2 v−2l − 2 v−2l − 2
·
0
0
i−k
j−k
i −l
j −l
t,w s,v
t,s
·βi,j,k
βi0 ,j 0 ,l zi,j,i
0 ,j 0
Then the kth block Bk belongs to CNk ×Nk , and (using (44)):
n
Theorem 1: An is isomorphic to
maps in CNk ×Nk to matrix
(51)
X
t
b2c
M
CNk ×Nk , where (2)
1
1
n−2k − 2 n−2k − 2 t
βi,j,k xti,j
j−k
i−k
III. C ONSTANT- WEIGHT
(i,i0 ),(j,j 0 )∈Wk ×Vl
.
We next consider the subalgebra Bw,v of Aw,v consisting
of all matrices
k=0
(57)
!n−k
X
t,s
t,w
s,v
yi,j
Mi,j
◦ Mi,j
,
i,j,t,s
.
i,j=k
CODES
We now go over to derive a similar bound for constantweight codes, which is based on considering a tensor product
of the algebra An . In the previous sections we fixed n, but now
it will be convenient to have n as parameter in our notation.
t
t
Therefore, we will denote the objects P, Mi,j
, Bk , βi,j,k
, and
t,n
t,n
n
U by Pn , Mi,j , Bk , βi,j,k , and Un , respectively.
A. The algebras Aw,v and Bw,v
Choose n and w with w ≤ n, and define v := n − w. Let
Aw,v be the C∗-algebra generated by the tensor products1 of
matrices in Aw and Av . So Aw,v is equal to the set of matrices
1 The tensor product of an A × B matrix M and a C × D matrix N is the
(A×C)×(B ×D) matrix M ◦N given by (M ◦N )(a,c),(b,d) := Ma,b Nc,d
for (a, c) ∈ A × C and (b, d) ∈ B × D.
t,s
with yi,j
∈ C. So Bw,v consists of all matrices (52) with
t,s
zi,j,i0 ,j 0 = 0 if i 6= i0 or j 6= j 0 .
The image (56) of (57) in block Bkw ◦ Blv has zeros in
positions (i, i0 ), (j, j 0 ) with i 6= i0 or j 6= j 0 . Deleting these
rows and columns, we obtain a block of order |Wk ∩ Vl | (of
zero order if Wk ∩ Vl = ∅). Then (57) maps in this block to
(58)
X
1
1
1
1
w−2k − 2 w−2k − 2 v−2l − 2 v−2l − 2
·
i−k
j−k
i−l
j−l
t,s
t,w s,v t,s
·βi,j,k βi,j,l yi,j
i,j∈Wk ∩Vl
,
where we have identified any i ∈ Wk ∩Vl with the pair (i, i) ∈
Wk × V l .
This in fact gives the block-diagonalisation of Bw,v . For
consider any complex (Wk ∩Vl )×(Wk ∩Vl ) matrix L. Extend
L by zeros so as to obtain a (Wk × Vl ) × (Wk × Vl ) matrix
L0 . As (56) gives the block-diagonalisation of Aw,v , we know
t,s
t,s
that L0 is equal to (56) for some zi,j,i
0 ,j 0 . Resetting zi,j,i0 ,j 0
7
to 0 if i 6= i0 or j 6= j 0 does not change L0 . Hence L can be
t,s
t,s
given as (58), for yi,j
:= zi,j,i,j
.
Incidentally, this implies
and
X
t,w s,v
0,0
βi,j,k
βi,j,l (yi+j−t−s,0
t,s
v
bw
2 c b2c
(59)
dim(Bw,v ) =
XX
B. Application to constant-weight coding
!
i,j∈Wk ∩Vl
are positive semidefinite.
|Wk ∩ Vl |2 .
k=0 l=0
−
t,s
yi,j
)
t,s
The yi,j
’s moreover satisfy the following constraints, where
(iv) holds if C has minimum distance at least d:
0,0
(i) y0,0
= 1,
We proceed as in Section I. Let C ⊆ Pn be any constant- (65)
t,s
0,0
0,0
0,0
t,s
weight code of word length n and constant weight w. Fix a
(ii) 0 ≤ yi,j
≤ yi,0
and yi,0
+ yj,0
≤ 1 + yi,j
for all
set X ∈ Pn with |X| = w. We will identify Pn and Pw × Pv ,
i, j, t, s ∈ {0, . . . , min{w, v}},
0 0
t,s
,s
0
0
0 0 0
0
by identifying any Y ∈ Pn with the pair (X \ Y, Y \ X) ∈
= yit0 ,j
(iii) yi,j
0 if t − s = t − s and (i , j , i + j −
0
0
Pw × P v .
t − s ) is a permutation of (i, j, i + j − t − s),
t,s
Let Π be the set of (distance-preserving) automorphisms π
(iv) yi,j
= 0 if {2i, 2j, 2(i + j − t − s)} ∩ {1, . . . , d −
0
of Pn fixing ∅ and with X ∈ π(C), and let Π be the set of
1} 6= ∅.
automorphisms π of Pn fixing ∅ and with X 6∈ π(C). Define
the matrices R and R0 by:
(Condition (ii) follows from the fact that each row of R and R 0
is nonnegative and is dominated by its diagonal entry (by (60)).
X
Conditions (iii) and (iv) follow from the fact that µt,s
(60) R :=
|Π|−1 χπ(C) (χπ(C) )T and
i,j is equal
to the number of triples (X, Y, Z) in C 3 with |X4Y | = 2i,
π∈Π
X
|X4Z| = 2j, |Y 4Z| = 2(i + j − t − s), and |X4Y 4Z| =
|Π0 |−1 χπ(C) (χπ(C) )T .
R0 :=
0
w + 2t − 2s, as follows directly from (63).)
π∈Π
Now
Again, as R and R0 are sums of positive semidefinite matrices,
min{w,v}
they are positive semidefinite. Moreover, R and R0 belong to
X
w v 0,0
(66)
|C|
=
Bw,v , using the identification of Pn and Pw × Pv :
i yi,0 ,
i
(61)
R=
X
i=0
s,v
t,w
t,s
and
◦ Mi,j
Mi,j
yi,j
i,j,t,s
R0 =
2n
X 0,0
|C|
t,s
t,w
s,v
(y
− yi,j
)Mi,j
◦ Mi,j
,
− |C| i,j,t,s i+j−t−s,0
min{w,v}
with
(62)
(67)
t,s
yi,j
:=
|C|
1
w
i−t,j−t,t
where
(63)
v
i−s,j−s,s
µt,s
i,j ,
3
µt,s
i,j := the number of triples (X, Y, Z) ∈ C with
|X \ Y | = i, |X \ Z| = j, |(X \ Y ) ∩ (X \ Z)| = t,
and |(Y \ X) ∩ (Z \ X)| = s.
The equations in (61) can be proved similarly as Proposition
1.
The positive semidefiniteness of R and R0 is by (58)
equivalent to:
(64)
Pmin{w,v} 0,0
since |C|2 =
µi,0 . Hence we obtain an upper
i=0
t,s
bound on A(n, d, w) by considering the yi,j
as variables, and
by
for each k = 0, . . . , b w2 c and l = 0, . . . , b v2 c, the
matrices
!
X t,w s,v t,s
βi,j,k βi,j,l yi,j
t,s
i,j∈Wk ∩Vl
maximizing
(64) and (65).
X
i=0
w
i
v
i
0,0
yi,0
subject to conditions
This is a semidefinite programming problem with O(w 4 )
variables, and it can be solved in time polynomial in n.
In the range n ≤ 28, it gives the new bounds given in
Table II (cf. the tables given by Best, Brouwer, MacWilliams,
Odlyzko, and Sloane [3] and Agrell, Vardy, and Zeger
[1], and Erik Agrell’s website http://www.s2.chalmers.se/
∼agrell/bounds/cw.html). Note that it implies the exact value
A(23, 8, 11) = 1288.
Again, this new bound strengthens the Delsarte bound for
constant-weight codes, as can be seen by an argument similar
to that given in Section I.
Acknowledgements. I thank Rob Ellis, Dion Gijswijt, Monique
Laurent, and Dima Pasechnik for very helpful discussions and
comments. I am moreover grateful to the two referees and to
the editor, Khaled Abdel-Ghaffar, for useful suggestions as to
the presentation of the results.
8
R EFERENCES
n
17
17
18
19
21
21
22
22
26
26
21
21
22
22
22
23
23
23
24
24
24
25
25
25
25
26
26
26
26
26
27
27
27
28
28
28
28
22
22
24
25
25
26
26
26
26
27
27
27
27
28
28
25
26
26
27
28
d
6
6
6
6
6
6
6
6
6
6
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
12
12
12
12
12
w
7
8
6
8
9
10
9
10
11
12
9
10
9
10
11
9
10
11
9
10
11
9
10
11
12
9
10
11
12
13
10
11
13
10
12
13
14
10
11
9
11
12
10
11
12
13
10
11
12
13
11
12
10
11
13
10
10
best
lower
bound
known
166
184
132
408
1184
1454
1792
2182
12037
14836
280
336
280
616
672
400
616
1288
640
960
1288
829
1248
1662
2576
883
1519
1988
3070
3588
1597
2295
4094
1820
4916
4805
6090
46
46
56
125
132
130
168
195
210
162
222
351
405
286
365
28
39
58
39
49
new
upper
bound
228
280
199
718
2359
2685
3736
4415
42075
50169
314
383
473
634
680
707
1025
1288
1041
1551
2142
1486
2333
3422
4087
2108
3496
5225
6741
7080
4986
7833
11981
7016
17011
21152
22710
72
80
118
380
434
406
566
702
754
571
882
1201
1419
1356
1977
37
66
91
64
87
best upper
bound
previously
known
234
283
202
734
2364
2702
3775
4416
42081
50204
320
399
493
641
766
796
1109
1328
1143
1639
2188
1610
2448
3575
4169
2160
3719
5315
6834
7164
5260
7837
11991
7368
17299
21739
23268
73
81
119
388
464
410
581
728
869
577
900
1289
1460
1434
1981
38
69
92
65
99
TABLE II
N EW
UPPER BOUNDS ON
A(n, d, w)
Delsarte
bound
249
283
204
751
2364
2702
3775
4734
42081
52440
358
464
597
758
805
830
1111
1417
1160
1639
2305
1626
2448
3575
4316
2282
3719
5416
7634
8030
5260
8381
12883
7368
17299
21739
23268
82
88
119
388
465
412
621
842
897
579
1011
1306
1479
1453
1981
40
85
106
83
105
[1] E. Agrell, A. Vardy, K. Zeger, “Upper bounds for constantweight codes,” IEEE Trans. Inform. Theory, vol. IT-46, pp.
2373–2395, November 2000.
[2] E. Agrell, A. Vardy, K. Zeger, “A table of upper bounds for
binary codes,” IEEE Trans. Inform. Theory, vol. IT-47, pp.
3004–3006, November 2001.
[3] M.R. Best, A.E. Brouwer, F.J. MacWilliams, A.M. Odlyzko,
N.J.A. Sloane, “Bounds for binary codes of length less than
25,” IEEE Trans. Inform. Theory, vol. IT-24, pp. 81–93, January
1978.
[4] P. Delsarte, “An algebraic approach to the association schemes
of coding theory,” Philips Res. Repts. Suppl., no. 10, 1973.
[5] K. Elssel, K.-H. Zimmermann, “Two new nonlinear binary
codes,” IEEE Trans. Inform. Theory, vol IT-51, pp. 1189–1190,
March 2005.
[6] J.T. Go, “The Terwilliger algebra of the hypercube,” European
J. Combin., vol. 23, pp. 399–429, May 2002.
[7] L. Lovász, “On the Shannon capacity of a graph,” IEEE Trans.
Inform. Theory, vol. IT-25, pp. 1–7, January 1979.
[8] L. Lovász, A. Schrijver, “Cones of matrices and set-functions
and 0–1 optimization,” SIAM J. Optim., vol. 1, pp. 166–190,
May 1991.
[9] F.J. MacWilliams, N.J.A. Sloane, The Theory of ErrorCorrecting Codes, Amsterdam, The Netherlands: NorthHolland, 1977.
[10] R.J. McEliece, E.R. Rodemich, H.C. Rumsey, Jr, “The Lovász
bound and some generalizations,” J. Combin. Inform. System
Sci., vol. 3 (no. 3), pp. 134–152, 1978.
[11] B. Mounits, T. Etzion, S. Litsyn, “Improved upper bounds on
sizes of codes,” IEEE Trans. Inform. Theory, vol. IT-48, pp.
880–886, April 2002.
[12] P.R.J. Östergård, “Two new four-error-correcting binary codes,”
preprint, 2003. Available: http://www.hut.fi/∼pat/papers/four.ps
[13] A. Schrijver, “A comparison of the Delsarte and Lovász
bounds,” IEEE Trans. Inform. Theory, vol. IT-25, pp. 425–429,
July 1979.
[14] P. Terwilliger, “The subconstituent algebra of an association
scheme (Part I),” J. Algebraic Combin., vol. 1, pp. 363–388,
December 1992.
[15] M.J. Todd, “Semidefinite optimization,” Acta Numer., vol. 10,
pp. 515–560, May 2001.
[16] R.H. Tütüncü, K.C. Toh, M.J. Todd, “Solving semidefinitequadratic-linear programs using SDPT3,” Math. Program., Series B, vol. 95, pp. 189–217, February 2003.
[17] S.J. Wright, “Nonlinear and semidefinite programming,” in:
Trends in Optimization, Proc. Sympos. Appl. Math., 61, Providence, RI: Amer. Math. Soc., 2004, pp. 115–137.