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$.

I.E.E.E.
IEEE Transactions on Information Theory
Probability, Networks and Algorithms

Schrijver, L. (2005). New code upper bounds from the Terwilliger algebra and semidefinite programming. IEEE Transactions on Information Theory, 51, 2859–2866.