Linear Programming Bounds
Peter Boyvalenkov, Danyo Danev

TL;DR
This chapter provides foundational definitions, examples, and basic facts about linear programming bounds in coding theory, aimed at upper-level students and researchers.
Contribution
It offers a concise, reference-style overview of linear programming bounds, emphasizing clarity and foundational knowledge for educational purposes.
Findings
Summarizes key concepts and definitions
Provides illustrative examples
Includes exhaustive references
Abstract
This chapter is written for the forthcoming book "A Concise Encyclopedia of Coding Theory" (CRC press), edited by W. Cary Huffman, Jon-Lark Kim, and Patrick Sol\'e. This book will collect short but foundational articles, emphasizing definitions, examples, exhaustive references, and basic facts. The target audience of the Encyclopedia is upper level undergraduates and graduate students.
| Distances | Comment | |||||
| repetition code, for | ||||||
| coexistence with resolvable block-designs [66] | ||||||
| coexistence with affine resolvable block-designs [67] | ||||||
| , [67] | ||||||
| , [40] | ||||||
| ovoid in PG, [20, 63] | ||||||
| Projective cap, Hill [50] | ||||||
| Projective cap, Hill [50] | ||||||
| Hadamard codes | ||||||
| , for ; hyperoval in PG, [20] | ||||||
| projection of Golay code | ||||||
| Golay code [47] | ||||||
| projection of Golay code | ||||||
| projection of Golay code | ||||||
| Golay code [47] | ||||||
| all even | even weight code |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
Topicsgraph theory and CDMA systems · Coding theory and cryptography · Cellular Automata and Applications
Abstract
This chapter is written for the forthcoming book ”A Concise Encyclopedia of Coding Theory” (CRC press), edited by W. Cary Huffman, Jon-Lark Kim, and Patrick Solé. This book will collect short but foundational articles, emphasizing definitions, examples, exhaustive references, and basic facts. The target audience of the Encyclopedia is upper level undergraduates and graduate students.
Linear Programming Bounds
Peter Boyvalenkov [email protected]
Institute for Mathematics and Informatics, Bulgarian Academy of Sciences, Sofia, Bulgaria;
Technical Faculty, Southwestern University, Blagoevgrad, Bulgaria
Danyo Danev [email protected]
Department of Electrical Engineering and Department of Mathematics,
Linköping University, SE-581 83 Linköping, Sweden
1 Preliminaries – Krawtchouk polynomials, codes, and designs
Definition 1.1** (Krawtchouk polynomials).**
Let and be integers. The Krawtchouk polynomials are defined as
[TABLE]
where , .
Theorem 1.2** ([57]).**
The polynomials satisfy the three-term recurrence relation
[TABLE]
with initial conditions and .
Theorem 1.3** ([57]).**
The discrete measure
[TABLE]
where is the Dirac-delta measure at , and the form
[TABLE]
define an inner product over the class of real polynomials of degree less than or equal to .
Theorem 1.4** (Orthogonality relations, [57]).**
Under the inner product (2) the Krawtchouk polynomials satisfy
[TABLE]
for any . Moreover,
[TABLE]
Theorem 1.5** (Expansion, [57]).**
If , then
[TABLE]
Definition 1.6**.**
Define . Note that is orthogonal to any polynomial , , with respect to the measure (1).
Theorem 1.7** (Krein condition, [57]).**
For any
[TABLE]
with if , if , and otherwise.
Definition 1.8**.**
Denote
[TABLE]
Theorem 1.9** (Christoffel-Darboux formula, [57]).**
*For any
and any real and *
[TABLE]
Let be a code, where is the alphabet of symbols (so is not necessarily a power of a prime). For , recall that is the number of coordinates where and disagree.
Definition 1.10**.**
The vector , where
[TABLE]
is called the distance distribution of . Clearly, and for , where is the minimum distance of .
Definition 1.11**.**
The vector , where
[TABLE]
is called the dual distance distribution of or the MacWilliams transform of . Obviously .
Theorem 1.12** ([36, 37]).**
The dual distance distribution of satisfies
[TABLE]
Theorem 1.13** ([60]).**
If is a power of a prime and is a linear code in , then is the distance distribution of the dual code .
Definition 1.14**.**
The smallest positive integer such that is called the dual distance of and is denoted by . Denote by (resp., ) the number of nonzero ’s (resp., ’s), , i.e.
[TABLE]
The number is called the external distance of . Define if and otherwise (respectively, if and otherwise).
Definition 1.15**.**
Let be a code and be a codeword matrix consisting of all vectors of as rows. Then is called a -design if any set of -columns of contains any -tuple of the same number of times (namely, ). The largest positive integer such that is a -design is called the strength of and is denoted by . The number is called the index of .
Remark 1.16**.**
A -design in is also called an orthogonal array of strength [37] or a -wise independent set [4] (see also [49]).
Theorem 1.17** ([36, 37]).**
If has dual distance , then is a -design, where .
Definition 1.18**.**
For a real polynomial , the polynomial
[TABLE]
is called the dual to . Note that the dual to is and also that for any .
2 General linear programming theorems
Theorem 2.1** ([36, 37]).**
For any code with distance distribution and dual distance distribution , and any real polynomial , it is valid that
[TABLE]
In Definition 1.9.1 in Chapter 1, is defined for codes over . We now extend that definition to codes over as only the alphabet size is important and not its structure.
Definition 2.2**.**
For fixed , , and denote
[TABLE]
Definition 2.3**.**
For fixed , , and denote
[TABLE]
Theorem 2.4** (Linear Programming Bound for codes [36, 37]).**
Let the real polynomial satisfy the conditions
- (A1)
, for ;
- (A2)
, for .
Then . Equality holds for codes with , distance distribution , dual distance distribution and polynomials such that and for every .
Remark 2.5**.**
The polynomial from Theorem 2.4 is implicit in Theorem 1.9.23 a) from Chapter 1 as and it is normalized for (or ) to be equal to 1; note also the normalization of the Krawtchouk polynomials. Thus the bound appears as in Chapter 1.
Theorem 2.6** (Linear Programming Bound for designs [36, 37]).**
Let the real polynomial satisfy the conditions
- (B1)
, for ;
- (B2)
, for .
Then . Equality holds for designs with , distance distribution , dual distance distribution and polynomial such that and for every .
Remark 2.7**.**
The Rao Bound in Theorem 3.3 and Levenshtein Bound in 3.10 below are obtained by suitable polynomials in Theorems 2.4 and 2.6, respectively. Examples of codes attaining these bounds are listed in Table 1 below.
Theorem 2.8** (Duality, [59]).**
A real polynomial satisfies the conditions (A1) and (A2) if and only if its dual polynomial satisfies the conditions (B1) and (B2). Moreover,
[TABLE]
Remark 2.9**.**
Rephrased, the duality means that for any polynomial which is good for linear programming for codes, its dual is good for linear programming for designs (and conversely). Thus we obtain, in a sense, bounds for free. In particular, the duality justifies the pairs of bounds in Theorems 3.1, 3.3 and 3.10 below.
See also [29, 39, 45, 46, 59].
Definition 2.10**.**
For a code and a function the potential energy of with respect to is defined to be
[TABLE]
Definition 2.11**.**
For fixed , , , and denote
[TABLE]
Theorem 2.12** (Linear Programming Bound for energy of codes [34]).**
Let and be fixed, be a function, and . Let the real polynomial satisfy the conditions
- (D1)
, for ;
- (D2)
, for .
Then . Equality holds for codes with distance distribution , dual distance distribution and polynomials , such that and for every .
Remark 2.13**.**
Theorems 2.4, 2.6 and 2.12 can be applied with the usual simplex method for quite large parameters. For instance, the website [65] (Delsarte, a.k.a. Linear Programming (LP), upper bounds) offers a tool for computation of bounds via integer LP with Theorem 2.4. Several websites maintain tables of best known bounds (lower and upper) for codes of relatively small lengths (see, e.g. [28]).
3 Universal bounds
The Singleton Bound presented in Theorem 1.9.10 in Chapter 1 is an upper bound on the code cardinality, given , , and . It is the upper bound in (3) below. Its proof by linear programming and the duality imply the lower bound in (3).
Theorem 3.1** (Singleton Bound [69]).**
For any code with minimum distance and dual distance
[TABLE]
The bounds (3) can be attained only simultaneously and this happens if and only if and all possible distances are realized (so the attaining code is an MDS code).
Definition 3.2**.**
For fixed , , and denote by
[TABLE]
(volume of a sphere of radius in ) and
[TABLE]
where , .
The Sphere Packing or Hamming Bound presented in Theorem 1.9.6 in Chapter 1 is another upper bound on the code size, given , , and . Rao gave a lower bound on the code size, given , , and . These bounds are combined in the following theorem, as they are connected by the duality.
Theorem 3.3** **(Rao Bound [64] and Hamming (sphere packing) Bound
[48]).
For any code with minimum distance and dual distance
[TABLE]
Definition 3.4**.**
Codes attaining the upper bound in (4) are called perfect. Designs attaining the lower bound in (4) are called tight.
Recall the definitions of , , , and in Definition 1.14.
Theorem 3.5**.**
- a)
A code (* is a tight design if and only if .*
- b)
A code (* is a perfect code if and only if .*
Definition 3.6**.**
For fixed , , and denote by the smallest root of the Krawtchouk polynomial . In the case of set .
Lemma 3.7** ([57]).**
The following are valid:
- a)
For , .
- b)
For , there exists a unique and a unique such that
[TABLE]
Example 3.8**.**
One has , and .
Definition 3.9**.**
For , let
[TABLE]
[TABLE]
where and are as in Lemma 3.7b).
Theorem 3.10** (Levenshtein Bound [55, 57, 58]).**
For any code with minimum distance and dual distance
[TABLE]
The lower (upper) bound is attained if and only if (respectively, ).
Example 3.11**.**
In the first three relevant intervals, the Levenshtein (upper) Bound is given by
[TABLE]
(which is the Plotkin Bound; discussed in Section 1.9.3) if ,
[TABLE]
if , and
[TABLE]
if .
Remark 3.12**.**
It is also worth noting two important values of the Levenshtein Bound:
[TABLE]
i.e. the Levenshtein Bound at the ends of the intervals coincides with corresponding Rao Bound.
Recall the kernels from Definition 1.8 and the parameters and from Lemma 3.7 b). The next theorem gives a Gauss-Jacobi quadrature formula (6), introduced by Levenshtein in [56, 57], which is instrumental in proofs of Theorem 3.16 and Theorem 3.21 a). Theorem 3.13 also introduces parameters needed for the universal bound (8) below.
Theorem 3.13** ([57]).**
For any the polynomial
[TABLE]
where and , has simple zeros
[TABLE]
with if and only if or and .
Moreover, for any real polynomial of degree at most the following equality holds:
[TABLE]
where all coefficients (weights) , , are positive, and, in the case , with equality if and only if . We have
[TABLE]
, and
[TABLE]
Remark 3.14**.**
Levenshtein used the polynomial
[TABLE]
to obtain the bounds (5). It was shown in [25] that its zeros strongly suggest the optimal choice of nodes for the simplex method of Theorem 2.4 (equivalently, Theorem 1.9.23 a) from Chapter 1). Computational experiments show that simple replacement of any double zero of Levenshtein’s polynomial (7) by two simple zeros and gives in most cases (conjecture: for every sufficiently large rate ) the best result that can ever be obtained from Theorem 2.4.
Remark 3.15**.**
The assertions of Theorem 3.13 remain true when is a continuous variable. In particular, the quadrature formula (6) holds true for any real polynomial of degree at most with well defined roots of and corresponding positive , .
Theorem 3.16** ([68, 56]).**
The upper bound in (5) cannot be improved by a real polynomial of degree at most satisfying (A1) and the condition for .
Definition 3.17** (Test functions [23]).**
For and denote by
[TABLE]
where , , and are as in Theorem 3.13. Note that for . Note also that .
Theorem 3.18** ([23, 58]).**
The upper bound in (5) can be improved by a real polynomial of degree at least satisfying (A1) and the condition for if and only if for some .
Definition 3.19**.**
A function is called (strictly) completely monotone if () for every nonnegative integer and every . The derivatives can be discrete (then ) or continuous.
Theorem 3.20** (Universal lower bound on energy [27]).**
Let , and be fixed and be a completely monotone function. If and is the smallest real root of the equation , then
[TABLE]
where the parameters and are determined as in Theorem 3.13. Equality is attained if and only if there exists a code with codewords which attains the upper bound in (5).
Theorem 3.21** ([27]).**
Let be a strictly absolutely monotone function. The bound (8):
- a)
cannot be improved by a real polynomial of degree at most satisfying (A1) and for ;
- b)
can be improved by a real polynomial of degree at least satisfying (A1) and the condition for if and only if for some .
Definition 3.22**.**
A code is called universally optimal if it (weakly) minimizes potential energy among all configurations of codewords in for each completely monotone function .
The conditions for attaining the bounds (5) and (8) coincide. Thus, any code which attains the upper bound in (5) for its cardinality (and therefore the lower bound for (8) for its energy) is universally optimal. We summarize this in the next theorem.
Theorem 3.23** ([34, 27]).**
All codes which attain the upper bound in (5) are universally optimal.
Theorem 3.24** ([34]).**
Let be a code and be any function such that the bound in Theorem 2.12 is attained. Let . Then
[TABLE]
In particular, if is proved to be universally optimal by Theorem 2.12, then is universally optimal for all as well.
Example 3.25**.**
The Kerdock codes [52] are nonlinear codes existing for lengths . Their cardinality is and their distance (weight) distribution is as follows:
[TABLE]
[TABLE]
It is easy to check that the Kerdock codes are asymptotically optimal with respect to the upper bound in (5) and the bound (8) as they are very close to the bounds already for small .
Definition 3.26**.**
For any code , is called the covering radius of . Here .
Theorem 3.27** ([37], Delsarte Bound).**
For any code with external distance
[TABLE]
Theorem 3.28** ([73, 74], Tietäväinen Bound).**
For any code with dual distance , where is positive integer and ,
[TABLE]
Asymptotic versions of some of the bounds in this section can be found in Section 1.9.8 of Chapter 1 (see [1, 2, 13, 58, 61]).
4 Linear programming on
Definition 4.1**.**
Let be the unit sphere in . The Euclidean distance between and is
[TABLE]
The inner product is defined as
[TABLE]
Note that on the distance and the inner product are connected by
[TABLE]
Definition 4.2**.**
An -spherical code is a non-empty finite set with cardinality and maximal inner product
[TABLE]
The minimum distance and the maximal inner product are connected by
[TABLE]
Definition 4.3**.**
For fixed and denote by
[TABLE]
Definition 4.4**.**
For denote by the Jacobi polynomials ([3, Chapter 22], [72]) with
[TABLE]
normalized by . When we get the Gegenbauer polynomials and use the indexing instead of . Denote by the greatest zero of the polynomial and define . Let
[TABLE]
Theorem 4.5** ([3, 72]).**
The Gegenbauer polynomials satisfy the recurrence relations
[TABLE]
where and .
Theorem 4.6** ([3, 72]).**
The Gegenbauer polynomials are orthogonal on with respect to the measure
[TABLE]
where is a normalizing constant.
Theorem 4.7** (Linear Programming Bound for spherical codes, [38, 51]).**
Let and be a real polynomial such that
- (A1)
* for ;*
- (A2)
The coefficients in the Gegenbauer expansion satisfy , for .
Then .
Theorem 4.8** (Levenstein Bound [54, 56]).**
For the quantity we have
[TABLE]
where is the interval
[TABLE]
Example 4.9**.**
The first three bounds in (9) are for ,
[TABLE]
for and
[TABLE]
for .
Definition 4.10**.**
A spherical code is a spherical -design if and only if
[TABLE]
( is the normalized -dimensional Hausdorff measure) holds for all polynomials of degree at most .
Theorem 4.11** (Linear Programming Bound for spherical designs, [38]).**
Let , and be a real polynomial such that
- (B1)
* for ;*
- (B2)
the coefficients in the Gegenbauer expansion satisfy , for .
Then any spherical -design has cardinality .
Theorem 4.12** (Delsarte-Goethals-Seidel Bound [38]).**
Any -design has cardinality
[TABLE]
where , .
Definition 4.13**.**
A spherical -design on is called tight if it attains the bound (10).
Theorem 4.14** ([9, 10]).**
Let . Tight spherical -designs on exist for , and for every , and possibly for , , , and . Tight spherical -designs on exist for , , and possibly for , where is an odd integer. Tight spherical -designs on exist for , , , and possibly for , where is an odd integer. Tight spherical -designs on exist for , , and possibly for , where is an integer. Tight spherical -designs on exist only for .
Remark 4.15** ([38]).**
Tight spherical 4- and 5-designs coexist and are known for and only. Tight spherical 7-designs are known for and only.
See also [11, 12, 18] for general theory and [21, 44, 71] for other bounds for designs.
Theorem 4.16** ([54, 55, 56, 58]).**
The bounds and (9) and (10) are related by the equalities
[TABLE]
at the ends of the intervals (, ). In particular, if is a tight spherical -design, then it attains (9) in the left end of the interval .
Definition 4.17**.**
Given an (extended real-valued) function , the -energy (or potential energy) of is given by
[TABLE]
Definition 4.18**.**
For fixed , , and denote by
[TABLE]
Theorem 4.19** (Linear Programming Bound for energy [75]).**
Let , , , and be a real polynomial such that
- (C1)
* for , and*
- (C2)
the coefficients in the Gegenbauer expansion satisfy , for .
Then
[TABLE]
Definition 4.20**.**
A real valued extended function is called absolutely monotone if , for every and every integer , and .
The following absolutely monotone potential functions are commonly used: Newton potential
[TABLE]
Riesz -potential
[TABLE]
and Gaussian potential
[TABLE]
Definition 4.21**.**
For and set
[TABLE]
where , , and (see Theorem 4.6 for relevant notation). Note that .
Let be the roots of the polynomial used for obtaining the Levenshtein Bound with , , , and let
[TABLE]
[TABLE]
Theorem 4.22** ([26]).**
Let , , , and be absolutely monotone in . For let be the largest root of the equation and , be as in Definition 4.21. Then
[TABLE]
If an code attains (12), then it is a spherical -design and its inner products form the set .
See also [19, Chapter 5]. Note that are in fact the roots of the equation .
Remark 4.23**.**
The conditions for attaining the bounds (9) and (12) coincide. Thus a spherical code attains (9) if and only it attains (12). In particular, every tight spherical design attains (12).
Theorem 4.24** **([68] for (9), [26]
for (12)).
The bounds (9) and (12) cannot be improved by using in Theorem 4.7 and 4.19, respectively, polynomials of the same or lower degree.
Theorem 4.25** **([24] for (9),
Let
[TABLE]
The bounds (9) and (12) (where for (12)) can be (simultaneously) improved if and only if for some .
Definition 4.26**.**
A spherical code is universally optimal if it (weakly) minimizes -energy among all configurations of points on for each absolutely monotone function .
Theorem 4.27** ([32]).**
Every spherical code which is a spherical -design and which admits exactly inner products between distinct points is universally optimal. The 600-cell (the unique -spherical code) is universally optimal.
Remark 4.28**.**
Any code which attains (9) (and (12)) is universally optimal. Is it unknown if there exists a spherical code, apart from the 600-cell, which is universally optimal but does not attain (9) (and (12)). Tables with all known codes which attain (9) (and (12)) can be found in [56, 58, 32].
Example 4.29**.**
Consider the case . The well known code ( root system; equivalently, the set of vertices of the regular -cell) is optimal in the sense that it realizes the fourth kissing number [62]. However, this code is not universally optimal [30], despite having energy which is very close to the bound (12). For example, with the Newtonian it has energy , while (12) gives (which can be improved to ).
Conjecture 4.30**.**
Every universally optimal spherical code attains the Linear Programming Bound of Theorem 4.19. **
Example 4.31**.**
(Example 3.25 continued.) A standard construction (see [35, Chapter 5]) maps binary codes from to the sphere – the coordinates [math] and are replaced by , respectively. Denote this map by . The inner product on and the Hamming distance in are connected by . Thus the weights of the Kerdock code correspond to the inner products , respectively.
The image of is asymptotically optimal with respect to both bounds (9) and (12). For example, it has energy
[TABLE]
When tends to infinity, we obtain
[TABLE]
which coincides with the asymptotic of (12) (obtained by a polynomial of degree 5).
5 Linear programming in other coding theory problems
Remark 5.1** (Linear programming in Johnson spaces).**
All concepts and results from Sections 1-3 hold true for the Johnson spaces with changes corresponding to the role of the Hahn polynomials instead of the Krawtchouk polynomials. See [36, 39, 56, 58, 59, 61].
Theorem 5.2** (Linear Programming Bound for binomial moments [5]).**
Let be a code with distance distribution , , and
[TABLE]
Let the real polynomial satisfy the conditions
- (i)
* for ;*
- (ii)
* for .*
Then .
The final bound in this chapter is an upper bound on the size of a quantum code.
Theorem 5.3** (Linear Programming Bound for quantum codes [6]).**
*(see also [53])
Let be a polynomial satisfying the conditions*
- (i)
* for every ;*
- (ii)
* for every ;*
- (iii)
* for every .*
Then every quantum code of minimum distance satisfies
[TABLE]
Acknowledgements. A significant part of the work of the first author on this chapter was done during his stay (August-December 2018) as a visiting professor at Department of Mathematical Sciences at Purdue University Fort Wayne. His research was supported, in part, by a Bulgarian NSF contract DN02/2-2016.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] M. Aaltonen. Linear programming bounds for tree codes (corresp.). IEEE Trans. Inform. Theory , 25:85–90, January 1979.
- 2[2] M. Aaltonen. A new upper bound on nonbinary block codes. Discrete Mathematics , 83(2):139 – 160, 1990.
- 3[3] M. Abramowitz and I. A. Stegun. Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables . Dover, New York, NY, USA, ninth dover printing, tenth gpo printing edition, 1964.
- 4[4] N. Alon, O. Goldreich, J. Håstad, and R. Peralta. Simple constructions of almost k 𝑘 k ‐wise independent random variables. Random Structures Algorithms , 3:289–304, 1992.
- 5[5] A. Ashikhmin and A. Barg. Binomial moments of the distance distribution: bounds and applications. IEEE Trans. Inform. Theory , 45:438–452, March 1999.
- 6[6] A. Ashikhmin and S. Litsyn. Upper bounds on the size of quantum codes. IEEE Trans. Inform. Theory , 45:1206–1215, May 1999.
- 7[7] C. Bachoc. Linear programming bounds for codes in Grassmannian spaces. IEEE Trans. Inform. Theory , 52:2111–2125, May 2006.
- 8[8] B. Ballinger, G. Blekherman, H. Cohn, N. Giansiracusa, E. Kelly, and A. Schürmann. Experimental study of energy-minimizing point configurations on spheres. Exp. Math. , 18:257–283, 2009.
