Bounds for binary constant weight codes

A(n,d,w) is the maximum size of a binary code with word length n, minimum distance d, and constant weight w. The tables below give the best known lower (and upper) bounds for this function for certain smallish parameters. In many cases a lower bound is demonstrated by giving an explicit code. Please send corrections and updates to aeb@cwi.nl.

Jump to d=4, d=6, d=8, d=10, d=12, d=14, d=16, d=18.

Sources

Unmarked lower bounds (for n ≤ 28) are taken from
BSSS: A. E. Brouwer, J. B. Shearer, N. J. A. Sloane & W. D. Smith,
A new table of constant weight codes,
IEEE Trans. Inform. Theory 36 (1990) 1334-1380.
or, for d=4, from
A. E. Brouwer & T. Etzion,
Some new distance-4 constant weight codes,
Advances in Mathematics of Communications 5 (2011) 417-424. (PDF) (web)

Unmarked upper bounds (for n ≤ 28) are taken from

AVZ: Erik Agrell, Alexander Vardy & Kenneth Zeger,
Upper bounds for constant weight codes,
IEEE Trans. Inform. Theory 46 (2000) 2373-2395. (PDF) (web)
In some cases one can find sharper bounds in
S: Alexander Schrijver,
New code upper bounds from the Terwilliger algebra and semidefinite programming,
IEEE Trans. Inform. Theory 51 (2005) 2859-2866. (PDF)

For n > 28 unmarked upper bounds are from the Johnson bound. In most cases unmarked lower bounds for n > 28 are codes first constructed here. For n ≤ 28, the lower bounds first given here are shown with a yellow background.

All other sources are explicitly indicated.

Tables for 29 ≤ n ≤ 63 and (d,w) one of (6,5), (6,6), (8,5), (8,6), (8,7), (10,6), (10,7), (10,8), (12,7), (12,8), (14,8) were given in

SHP: D.H. Smith, L.A. Hughes and S. Perkins,
A New Table of Constant Weight Codes of Length Greater than 28,
Electronic J. Combin. 13 (2006) #A2. (PDF)
with improvements in
MS: R. Montemanni and D.H. Smith,
Heuristic Algorithms for Constructing Binary Constant Weight Codes,
IEEE Transactions on Information Theory 55 (2009) 4651–4656. (PDF) (web)
and
MS2: R. Montemanni and D.H. Smith,
Some constant weight codes from primitive permutation groups, Electr. J. Combin. 19 (2012) Issue 4, P4.

Various bounds derived by taking a slice from a general binary code:

CXY: Yeow Meng Chee, Chaoping Xing and Sze Ling Yeo,
New Constant-Weight Codes From Propagation Rules
IEEE Transactions on Information Theory 56 (2010) 1596-1599.

Improvements to the upper bounds were derived by

KKT: Byung Gyun Kang, Hyun Kwang Kim & Phan Thanh Toan,
Improved linear programming bounds on sizes of constant-weight codes,
arXiv:1108.5104v1, Aug 2011.
and
KT: Hyun Kwang Kim & Phan Thanh Toan,
Improved Semidefinite Programming Bound on Sizes of Codes
arXiv:1212.3467v1, Dec 2012.
and
Po: Sven Polak,
Semidefinite programming bounds for constant weight codes,
arXiv:1703.05171, Mar 2017.

Lost codes

Of the records mentioned in the tables below, 1 can no longer be provided with an explicit construction. In [BSSS] most codes were given with construction, and those that had no easy-to-describe structure were given explicitly when they have size at most 1500. Larger codes with label y/ya/yd were not given, and today it seems that these codes are lost. Below we construct new codes with [BSSS] parameters or better, with 1 exception. This 1 parameter set (for n=24, d=6, w=12) is given in red. Here we give the lower bound from [BSSS] and the currently best explicitly available code.

bound A(24,6,12)
[BSSS] 5616
code 5558BJLÖ

There used to be 13 lost codes, but [BJLÖ] removed three items from the list by proving A(24,6,9) ≥ 3080, A(24,6,11) ≥ 5376, A(25,6,10) ≥ 6600. They also showed A(24,6,12) ≥ 5558. And [R] removed one item by proving A(26,8,11) ≥ 2030. And [L] removed two by proving A(23,6,10) ≥ 2979 and A(24,6,10) ≥ 4214. He also showed A(23,6,11) ≥ 3539, A(24,6,8) ≥ 1855. Polishing the former removed one more by proving A(23,6,11) ≥ 3588. And [E] removed five items for codes A(n,6,8), starting with the Steiner system S(5,7,28).

Earlier, in

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. Inf. Th. 24 (1978) 81-93.
it was claimed that A(18,6,6) ≥ 144, but later we were unable to reconstruct such a code, and today we only have A(18,6,6) ≥ 133 [R].

Errata

In [BSSS], Table III, A(23,10,7) = 20, not 21.

There is some freedom in "Construction B" as described in [BSSS], and the partitions given in [BSSS], Table VI are not the best ones can obtain using this construction.

In [BSSS], Section XI, description for A(16,4,8) ≥ 1170, there are two typos: replace 07F and E40 by 407F and FE40.

In [BSSS], Table XV, description for A(18,6,9) ≥ 304, delete the "(17,18)" from the third generator. (Below we show A(18,6,9) ≥ 320.)

In [BSSS], Table I-E, description for A(26,12,12) ≥ 54 and A(26,12,13) ≥ 58, the label z9 refers to Table XVI, but these codes are not given there.

Constructions

c: circulant, or code with cyclic group.

d: doubling (special case of j: A(2n,2d,2w) ≥ A(n,d,w)).

g: code with specified group of automorphisms.

j: juxtaposition.

p: using partitions.

s: shortened code (from code of length n+1 and weight w or w+1).
sb: shortened code (from code of length n+1 and weight w), using explicit inspection.
sd: shortened code (from code of length n+1 and weight w+1), using explicit inspection.

l: lengthened code (from code of length n–1 and weight w or w–1).

x: lexmin code.

H: Hadamard matrix ([BSSS], Thm 10): A(4m,2m,2m) = 8m–2 if a Hadamard matrix of order 4m exists.

OA (orthogonal array): If k ≤ q+1, where q is a prime power, then an e-OA(k,q) exists for any e with 0 ≤ e ≤ k. It has qe blocks (transversals) of size k on qk points partitioned into k groups of size q, and shows that A(qk,2(k–e+1),k) ≥ qe. Usually many blocks can be added.

Upper bounds

L: Delsarte linear programming bound.

Note on the Johnson bound

The first Johnson bound is often quoted as A(n,d,w) ≤ nA(n–1,d,w–1)/w. However, that is only the first part of the first Johnson bound. The second part says A(n,d,w) ≤ nA(n–1,d,w)/(n–w), and is sometimes stronger.

References for labels

ACL: Hui Kheng Aw, Yeow Meng Chee & Alan C. H. Ling, Six New Constant Weight Binary Codes, Ars Comb. 67 (2003) 313-318, show A(18,6,5) ≥ 69. Also A(27,8,5) ≥ 31, A(29,8,5) ≥ 34, A(30,8,5) ≥ 36, A(33,8,5) ≥ 44, A(34,8,5) ≥ 47.

BJi: Jingjun Bao & Lijun Ji, The completion of optimal (3,4)-packings, preprint, 2014, show A(23,4,4) = 419, etc.

BJLÖ: Michael Braun, Joshua Humpich, Antti Laaksonen & Patric R. J. Östergård, New lower bounds on binary constant weight error-correcting codes, J. of Combinatorial Math. and Combinatorial Computing 111 (2019) 213-224 , shows A(16,4,6) ≥ 624, A(22,6,6) ≥ 343, etc.

Bl: Iliya Bluskov, New constant weight codes and packing numbers, preprint, 2017 (see also Electronic Notes in Discrete Math. 65 (2018) 31-36), shows A(29,8,5) ≥ 36, A(30,8,5) ≥ 41, A(32,8,5) = 44.

Ch: Yeow Meng Chee, A new lower bound for A(17,6,6), Ars Comb. 83 (2007) 361-363, shows A(17,6,6) ≥ 113.

E: William Echols, email 2026-07-29 (with 126 new codes) and email 2026-08-08 (with 6 new codes, removing five items from the list of lost codes).

EB: Tuvi Etzion & Sara Bitan, On the chromatic number, colorings, and codes of the Johnson graph, Discrete Appl. Math. 70 (1996) 163-175, show A(24,4,7) ≥ 15656.

Ex: Geoffrey Exoo, email 2014-08-27, shows A(15,4,5) ≥ 242.

Ho: Iiro Honkala, Heikki Hämäläinen & Markku Kaikkonen, Some lower bounds for constant weight codes, Dicr. Appl. Math. 18 (1987) 95-98, show A(25,12,11) ≥ 36, A(26,12,12) ≥ 54, A(26,12,13) ≥ 58, A(27,12,9) = 39. (A more direct construction: take the planes in AG(3,3).)

Ji: L. Ji, Asymptotic Determination of the Last Packing Number of Quadruples, Designs, Codes and Cryptography 38 (2006) 83-95, shows A(17,4,4) = 157, A(29,4,4) = 877, etc.

JX: Lingfei Jin & Chaoping Xing, New binary codes from rational function fields, preprint, 2014, show A(27,6,13) ≥ 27600, A(28,6,12) ≥ 40237, A(28,6,13) ≥ 49510, A(28,6,14) ≥ 53046.

Ko: Klaus-Uwe Koschnick, Some new constant weight codes, IEEE Trans. Info. Theory 37 (1991) 370-372, shows A(23,10,7) ≥ 20.

L: Christian Lysenstøen, New lower bounds for binary constant-weight codes: A(23,6,10) ≥ 2979 and A(24,6,10) ≥ 4214, arXiv:2607.19550, constructs four improved codes. After polishing, these became A(23,6,10) ≥ 2992, A(23,6,11) ≥ 3588, A(24,6,8) ≥ 1859, A(24,6,10) ≥ 4237.

MEL: Beniamin Mounits, Tuvi Etzion & Simon Litsyn, New upper bounds on A(n,d), arXiv:cs/0508107, Aug 2005, show A(23,10,9) ≤ 78, A(24,10,9) ≤ 116, A(25,10,9) ≤ 157, A(27,10,9) ≤ 293, A(28,10,10) ≤ 785.

Mi: Moshe Milshtein, A new binary (17,4,5) constant weight code, Cryptography and Communications 15 (2023) 443–453, shows A(17,4,5) ≥ 444.

Mo: B. Mounits, T. Etzion & S. Litsyn, New upper bounds on codes via association schemes and linear programming, Advances of Math. in Communications 1 (2007) 173-195, show A(19,6,7) ≤ 519, A(22,6,11) ≤ 5033, A(26,6,11) ≤ 42017.

Nu: Kari J. Nurmela, Markku K. Kaikkonen & Patric R. J. Östergård, New constant weight codes from linear permutation groups, IEEE Trans. Info. Theory 43 (1997) 1623-1630, show A(16,4,5) ≥ 315 and A(20,4,6) ≥ 2304, with shortened codes showing A(19,4,5) ≥ 692 and A(19,4,6) ≥ 1620. Also A(18,6,8) ≥ 260, A(18,6,9) ≥ 304 (both also in [BSSS]), A(21,6,5) ≥ 108, A(28,6,5) ≥ 280, A(28,6,11) ≥ 29484. Also A(26,8,13) ≥ 3588, A(27,8,13) ≥ 4094, A(28,8,10) ≥ 1820, A(28,8,12) ≥ 4916, A(28,8,14) ≥ 6090. Also A(22,10,10) ≥ 46, A(23,10,11) ≥ 65, A(24,10,11) ≥ 95, A(24,10,12) ≥ 122, A(25,10,12) ≥ 132, A(26,10,9) ≥ 91, A(27,10,9) ≥ 118, A(27,10,10) ≥ 162, A(27,10,11) ≥ 222, A(28,10,10) ≥ 210, A(28,10,11) ≥ 286, A(28,10,12) ≥ 365, A(28,10,13) ≥ 756, A(28,10,14) ≥ 790. Also A(26,12,10) ≥ 33, A(28,12,10) ≥ 49, A(28,12,11) ≥ 65, A(28,12,12) ≥ 103, A(28,12,13) ≥ 99, A(28,12,14) ≥ 172.

Ö: Patric R. J. Östergård, Classification of binary constant weight codes, IEEE Trans. Infor. Theory 56 (2010) 3779-3785, shows A(12,4,5) = 80. Also A(15,6,7) = 69 and A(17,6,6) ≤ 124. Also A(18,8,7) = 33, A(19,8,7) = 52, A(19,8,8) = 78, A(20,8,8) = 130 and A(18,8,8) ≤ 49, A(18,8,9) ≤ 58.

R: Christopher D. Rosin, Automated discovery of improved constant weight binary codes, arXiv:2603.00174, shows A(18,6,6) ≥ 133, A(22,8,9) ≥ 292, etc.

Sa: Ankan Sadhu, email 2026-07-25, shows A(38,8,5) ≥ 66, A(39,8,5) ≥ 68, A(47,8,5) ≥ 101, A(48,8,5) ≥ 103.

SWY: D.R. Stinson, R.Wei & J. Yin,
Packings, pp. 550-556 in: Handbook of Combinatorial Designs – 2nd ed. (C.J. Colbourn and J.H. Dinitz eds.), CRC Press, 2007.

To: V.D. Tonchev, Maximum disjoint bases and constant weight codes, IEEE Trans. Infor. Theory 44 (1998) 333-334, shows A(17,4,5) ≥ 441.

Jump to d=4, d=6, d=8, d=10, d=12, d=14, d=16, d=18.


Bounds on A(n,4,w)

For now, lower bounds only. Optimum values are indicated by a dot.

n\w 3 4 5 6 7 8 9 10 11 12 13 14 15
6 4.
7 7.
8 8. 14.
9 12. 18.s
10 13. 30.s 36.s
11 17. 35. 66.s
12 20. 51. 80.Ö 132.g
13 26. 65. 123 166
14 28. 91. 169g 278 325
15 35. 105. 242Ex 399g 585s
16 37. 140. 322g 624BJLÖ 836sb 1170
17 44. 157.Ji 444Mi 854p 1416s 1770s
18 48. 198. 544g 1260g 2042p 3186s 3540s
19 57. 228. 692s 1620sb 3172p 4698s 6726s
20 60. 285. 874 2304Nu 4213p 7830BJLÖ 10048p 13452g
21 70. 315. 1113g 2880BJLÖ 6161p 10767p 17177p 20654p
22 73. 385.s 1386.s 3927s 8338p 16527p 25902p 37127p 40624p
23 83. 419.BJi 1771.s 5313.s 11696p 23467p 41413p 58659p 76233p
24 88. 498. 1920BJLÖ 7084.g 15656EB 34914g 59904p 98852p 118422p 151484p
25 100. 550. 2380BJLÖ 7787p 21220p 47265p 89742p 142373p 198387p 231530p
26 104. 650. 2816s 10010p 27050p 66352p 129708p 222775p 320584p 401937p 431724p
27 117. 702. 3456BJLÖ 12012s 35874p 88604p 188561p 334859p 518014p 686164p 791461p
28 121. 819. 3718p 15288g 44915p 122685p 263008p 508952p 819041p 1167909p 1420920p 1535756p
29 134. 877.Ji 4423p 17710p 57943p 157734p 365699p 728330p 1266026p 1895939p 2499311p 2870880p
30 140. 1005. 5148s 21931p 73853p 214545p 514015p 1085000p 1977548p 3143989p 4325235p 5313399p 5697080p
n/w 3 4 5 6 7 8 9 10 11 12 13 14 15

p: using partitions, see [BSSS] and here. Most of these bounds are from the Brouwer-Etzion paper.

Values of A(n,4,3) and A(n,4,4)

For w=3 and w=4 all values are known ([BSSS], Theorems 4, 5; [Ji]; [BJi]). A table for n ≤ 64:

n 2930 3132333435 3637383940
w=3 134.140. 155.160.176.181.197. 204.222.228.247.253.
w=4 877.1005. 1085.1240.1320.1496. 1583.BJi 1773.1887.2109.2223.2470.
n 4142434445 4647484950 5152
w=3 272.280.301.308.330. 337.359.368.392.400. 425.433.
w=4 2593.2856.3010.3311.3465. 3795.3959.BJi 4308.4508.4900.5100.5525.
n5354555657 585960616263 64
w=3 458.468.495.504.532. 541.569.580.610.620. 651.661.
w=4 5737.6183.6435.6930.7182. 7714.7979.BJi8535.8845. 9455.9765.10416.

Bounds on A(n,4,5)

Mostly taken from here. Lower bounds only.

293031323334 353637383940
4423p 5148s 6138g 6758g 7656s 8976.S 10472.S 10948p 12473p 13471p 15010p 17119p
414243444546 474849505152
19258p 21320g 23478g 25564p 28413s 31878.S 35673.S 36809p 40560p 43372 46612p 51420p
535455565758 596061626364
56251p 59293p 64449 69931p 75550p 79866s 87261MS2 93206p 100527p 105472p 113553 121902p

S: The Steiner systems S(5,6,36) and S(5,6,48) yield A(36,4,6) = 62832 and A(48,4,6) = 285384 with derived designs showing A(35,4,5) = 10472, A(35,4,6) = 52360, A(47,4,5) = 35673, A(47,4,6) = 249711.

g: A(31,4,5) ≥ 6138 and A(32,4,5) ≥ 6758 use ASL(1,31) of order 465.

The group codes A(32,4,5) ≥ 6758g, A(42,4,5) ≥ 21320g, A(43,4,5) ≥ 23478g, A(50,4,5) ≥ 42924g, A(55,4,5) ≥ 62964g, A(63,4,5) ≥ 113337g were found by [MS2].

Hamming codes

If C is any binary code of length n and minimum distance d, a lower bound for A(n,d,w) is the number of words of weight w in C. Of course one can also look at cosets C+u. For example, look at the extended Hamming codes, with parameters [2m,2m–m–1,4]. GAP tells us
gap> LoadPackage("guava");;
gap> WeightDistribution(ExtendedCode(HammingCode(4,GF(2))));
[ 1, 0, 0, 0, 140, 0, 448, 0, 870, 0, 448, 0, 140, 0, 0, 0, 1 ]
gap> WeightDistribution(ExtendedCode(HammingCode(5,GF(2))));
[ 1, 0, 0, 0, 1240, 0, 27776, 0, 330460, 0, 2011776, 0, 7063784, 0, 14721280, 
  0, 18796230, 0, 14721280, 0, 7063784, 0, 2011776, 0, 330460, 0, 27776, 0, 
  1240, 0, 0, 0, 1 ]
gap> WeightDistribution(ExtendedCode(HammingCode(6,GF(2))));
[ 1, 0, 0, 0, 10416, 0, 1166592, 0, 69194232, 0, 2366570752, 0, 51316746768, 
  0, 747741998592, 0, 7633243745820, 0, 56276359749120, 0, 306558278858160, 
  0, 1255428754917120, 0, 3916392495228360, 0, 9399341113166592, 0, 
  17480786291963792, 0, 25316999607653376, 0, 28634752793916486, 0, 
  25316999607653376, 0, 17480786291963792, 0, 9399341113166592, 0, 
  3916392495228360, 0, 1255428754917120, 0, 306558278858160, 0, 
  56276359749120, 0, 7633243745820, 0, 747741998592, 0, 51316746768, 0, 
  2366570752, 0, 69194232, 0, 1166592, 0, 10416, 0, 0, 0, 1 ]
and we find lower bounds for A(n,4,w) for n=16, 32, 64.

These are not best possible: slightly better results follow by the Kløve bound found in

Torleiv Kløve,
A lower bound for A (n,4,w),
IEEE Trans. Inf. Th. IT-27 (1981) 257-258.
One finds for example A(64,4,4) ≥ 10416, A(64,4,6) ≥ 1171552, A(64,4,8) ≥ 69194232, A(64,4,10) ≥ 2366772128.

Jump to d=4, d=6, d=8, d=10, d=12, d=14, d=16, d=18.


Bounds on A(n,6,w)

n\w 4 5 6 7 8 9 10 11 12 13 14
82
93s
105s6s
11611s
129 12c22H
131318s 26c
1414 28s 42s 42
1515 42s 70s 69G Ö
16 20s 48s 112g 109G-122 120g-138
1720 68g 113Ch-124Ö 166G-206Po 184g-259
1822 69ACL-72 133R-186 243G-312Po 260-427KKT 320g-424KKT
1925 76c-83 172g-228 338sb-463Po 408g-693Po 504g-789
2030 90c-100 232t-276 462t-651 590E-1084Po 832t-1363 944t-1420KKT
2131 109E-126 273g-350 570sb-828 775-1665Po 1186-2328Po 1474-2685S
2237 132g-136 343BJLÖ-462 759G-1100 1145E-2277 1818-3736S 2183-4415S 2636t-5033Mo
2340 147t-170 399s-521 969s-1518 1439-3162 2278-5819 2992-7521 3588-7953
2442s 168s-192 532s-680 1368s-1786 1915E-4554 3080BJLÖ-8432 4237-12186 5376BJLÖ-14682 5616-15906
2550s 210s 700s-800 1900s-2428 2646E-5581 4260sb-12620 6600BJLÖ-19037 8697-24630 9880-30587
2652 260s 910s 2600s-2971 3602E-7891 5760-16122 8810g-28893 12206-42017Mo 14854gs-50169S 16117-61174
2754260-280 1170s 3510s 4828E-10027 8112g-23673 12987g-43529 18260-66078KKT 23901gs-84573KKT 27600JX-91079KKT
2863 280Nu-302 1170-1306 4680g 6356E-12285 10920g-31195 18345-63756 29484Nu-104230KKT 40237JX-142117 49510JX-164219KKT 53046JX-169739KKT
29 65 315g-364 1204-1459 4680-5410 8148E-... 13026g-... 24254-... 41216gs-... 61820gs-... 80837gs-... 92366gs-...
n/w 4 5 6 7 8 9 10 11 12 13 14

One has A(n–2,d–2,w–1) ≥ A(n,d,w) (Honkala et al., cf. [BSSS], Thm 21), and this yields A(22,6,7) ≥ 759.

G: from the Golay code.

t: using the Nordstrom-Robinson code (really, the Golay code), possibly with tails.

gs: using the Graham-Sloane construction and an S2 set (B2 sequence, modified modular Golomb ruler), that is, a subset of an abelian group where all sums of two (distinct) elements are different. One divides all words of weight w into M classes, each of min dist at least 6. This means that A(n,d,w) ≥ (n choose w)/M where, for d = 6, M = 624, 651, 728, 757, 840, 871 for n = 25, 26, 27, 28, 29, 30, respectively. The largest class found may be slightly larger than this average. These codes are not always maximal, and one finds A(26,6,12) ≥ 14852+2, A(29,6,10) ≥ 23870+7 by adding 2 (resp. 7) words to a gs-code.

A code showing A(23,6,5) ≥ 147 is found by taking the 759 octads on a 24-set where the last 8 positions support an octad, and selecting the 140 octads with weight 3+1 in the last 7+1 positions. Delete the last position, and replace the triple by the i-th shift of 1000000 when the triple equals or is disjoint from the i-th shift of 1101000. Now add 7 words, say in lexmin order.

E: six codes giving lower bounds for A(n,6,8) were constructed from S(5,7,28) by extending with a 1 bit, shortening to length n, and using a maximum independent set solver to append compatible blocks.

A code showing A(20,6,6) ≥ 232 is found by taking the 112 octads with weight 1+1 in the last 7+1 positions, and 120 of the 140 octads with weight 3+1 there, namely those with 6 of the 7 shifts. Replace the 8-bit tail by a 4-bit one of weight 2, different for different shifts.

Several of the above ugly codes were obtained by polishing a nice group code. For example, A(25,6,11) ≥ 8125g, A(25,6,12) ≥ 9375g, A(26,6,9) ≥ 5700g, A(26,6,11) ≥ 11660g, A(26,6,13) ≥ 15625g, A(28,6,10) ≥ 17738g, A(29,6,10) ≥ 23520g. The above A(22,6,10) ≥ 2183 was obtained by polishing the A(22,6,10) ≥ 2180t from [BSSS].

Values of A(n,6,4)

All values of A(n,6,4) are known ([BSSS], Theorem 6). A table for n ≤ 64:

293031323334 353637383940
656776808292 9699111114117130
414243444546 474849505152
133136149154157171 176180196200204221
535455565758 596061626364
225229246252256274 280285305310315336

Values of A(n,6,5)

2930313233 34353637
315g-364 343g-390 372c-415 416c-486 462g-528 500-557 544c-644 612g-691 666g-732
3839404142 43444546
714s-842 819g-889 872g-936 943g-1066 1020-1117 1081E-1169 1132E-1311 1187-1386 1265g-1444
4748495051 52535455
1363g-1607 1452s-1689 1617g-1764 1686-1960 1782-2040 1938g-2121 2067g-2341 2157E-2430 2365E-2519
5657585960 61626364
2477E-2755 2565g-2872 2677E-2969 2870E-3233 3036s-3360 3306s-3477 3596s-3782 3906.s  

A(63,6,5) = 3906 follows from A(64,6,6) = 41664, from Preparata.

Several of the above ugly codes were obtained by polishing a nice group code. For example, A(34,6,5) ≥ 495g, A(42,6,5) ≥ 1010g, A(43,6,5) ≥ 1050g, A(51,6,5) ≥ 1734g, A(55,6,5) ≥ 2211g, A(56,6,5) ≥ 2352g, A(59,6,5) ≥ 2842g.

The group codes A(41,6,5) ≥ 943g, A(47,6,5) ≥ 1363g, A(49,6,5) ≥ 1617g, A(53,6,5) ≥ 2067g were found by [MS2].

Values of A(n,6,6)

2930313233 34353637
1170l-1459 1316E-1820 1457g-2015 1643g-2213 1829g-2673 2017E-2992 2204E-3249 2604s-3864 3108g-4261
3839404142 43444546
3338-4636 3822g-5473 4212g-5926 4680g-6396 5002g-7462 5719g-8005 6020g-8572 6840MS2-9832 7580-10626
4748495051 52535455
8648g-11311 9729g-12856 10094-13793 10825-14700 11155-16660 12220s-17680 13780g-18735 14469g-21069 16112s-22275
5657585960 61626364
18045s-23510 20167s-26172 22493s-27762 25039s-29195 27821s-32330 30856s-34160 34162s-35929 37758s-39711 41664.Pr

Pr: from extended Preparata code.

Several of the above ugly codes were obtained by polishing a nice group code. For example, A(34,6,6) ≥ 1922g, A(35,6,6) ≥ 2100g, A(36,6,6) ≥ 2387g, A(45,6,6) ≥ 6810g, A(49,6,6) ≥ 9947g, A(50,6,6) ≥ 10810g, A(51,6,6) ≥ 11010g.

The group codes A(32,6,6) ≥ 1643g, A(33,6,6) ≥ 1829g, A(37,6,6) ≥ 3108g, A(42,6,6) ≥ 5002g, A(43,6,6) ≥ 5719g, A(45,6,6) ≥ 6810g, A(53,6,6) ≥ 13780g were found by [MS2].

Preparata codes

Lower bounds for A(n,6,w) are obtained from (translates of) extended Preparata codes. For example, the extended Preparata code of length 64 has weight enumerator
x^64+41664*x^58*y^6+2118168*x^56*y^8+74203584*x^54*y^10+1602647424*x^52*y^12+23369897088*x^50*y^14+
238532662620*x^48*y^16+1758643689600*x^46*y^18+9579950593920*x^44*y^20+39232098538560*x^42*y^22+
122387418032040*x^40*y^24+293729091759936*x^38*y^26+546275088069376*x^36*y^28+791155554970368*x^34*y^30+
894836772921798*x^32*y^32+791155554970368*x^30*y^34+546275088069376*x^28*y^36+293729091759936*x^26*y^38+
122387418032040*x^24*y^40+39232098538560*x^22*y^42+9579950593920*x^20*y^44+1758643689600*x^18*y^46+
238532662620*x^16*y^48+23369897088*x^14*y^50+1602647424*x^12*y^52+74203584*x^10*y^54+2118168*x^8*y^56+
41664*x^6*y^58+y^64
so that A(64,6,8) ≥ 2118168, etc.

CXY find by averaging various subsets of the Preparata code with (n,d,M) = (63,5,252) that A(63,6,7) ≥ 270468, A(63,6,8) ≥ 1893276, A(63,6,11) ≥ 300700062, A(63,6,12) ≥ 1302990507, and A(64,6,7) ≥ 303354, A(64,6,8) ≥ 2163744, A(64,6,9) ≥ 13447707, A(64,6,11) ≥ 363105666, A(64,6,12) ≥ 1603680624, A(64,6,13) ≥ 6414487191.

Jump to d=4, d=6, d=8, d=10, d=12, d=14, d=16, d=18.


Bounds on A(n,8,w)

n\w 5 6 7 8 9 10 11 12 13 14
102
112
1234d
1334
144 7s 8s
156 10s 15s
166 16c 16c 30H
177 17c 24c 34c
189 21c 33s Ö 46s-49Ö 48sb-58Ö
1912s 28s 52s Ö 78s Ö 88s-103
2016s 40s 80s 130s Ö 160g-173 176g-206
2121s 56s 120s 210s 280s-294Po 336s-363
2221 77s 176s 330s 292R-440Po 616s Po 672s Po
232377-80 253s 506s 412R-662Po 648R-1012 1288s S
2424 78-92253-274 759G 656R-968Po 960G-1551S 1378R-2142S 2576G
2530 100g 255R-328759-850Po 837R-1366Po 1248-2333S 1722E-3422S 2610R-4087S
2630 130g 264E-371 763R-1066 890E-1901Po 1519G-3496S 2042E-5208KT 3070G-6741S 3588sb-7080S
27 31ACL-32 130-135 303sd-500 775E-1252 1029E-2616Po 1727E-4986 2404-7754KT 3337E-10460KT 4094Nu-11897KKT
28 33 132E-149 321E-540 1057-1750 1375E-3855 2103E-7016S 3773-11896KT 4927-17008KT 6848g-21148KT 6218-22710S
n/w 5 6 7 8 9 10 11 12 13 14

Comments

G: From Golay code.

Some of the above ugly codes were obtained by polishing a nice group code. For example, A(28,8,8) ≥ 1029g yielded the entries for (n,w)=(28,8), and 27 ≤ n ≤ 32, w = 7. and A(28,8,9) ≥ 1303g yielded the entries for (n,w)=(28,9), (27,9), and A(28,8,11) ≥ 2688g yielded the entries for (n,w)=(28,11), (27,11).

The values A(26,8,11) ≥ 2037 and A(27,8,10) ≥ 1721 and A(28,8,10) ≥ 2067 were obtained by polishing the 2030 and 1704 and 2028 found by [R].

The values A(28,8,12) ≥ 4927 and A(28,8,14) ≥ 6218 were obtained by polishing the group part of from the A(28,8,12) ≥ 4914+2 and A(28,8,14) ≥ 5920+170 found by [Nu].

Values of A(n,8,5)

Most bounds here are standard packing results.

2930313233 34353637
36Bl-39 41Bl-42 43SWY 44Bl 48c-51 52-54 56SWY 57s 65
3839404142 43444546
66Sa-68 68Sa-70 72s 82S84SWY86SWY 88s99S99-101
4748495051 52535455
101Sa-103 103Sa-105 108s-116 120SWY120-122123s-124 133-136 135c-140 143SWY
5657585960 61626364
145SWY158SWY158-162 158-165168s183S 186SWY189SWY192s

S: S(2,5,41), S(2,5,45), S(2,5,61), S(2,5,65).

A(37,8,5) = 65 from a PBD(37,{5,9*}) (completion of RB(4,1; 28)). A(36,8,5) = 57 by deleting one point.

A(48,8,5) ≥ 102 by replacing the six groups of GD(5,1,8; 48) by 5-lines.

A(53,8,5) ≥ 133 from a PBD(53,{5,13*}) (completion of RB(4,1; 40)). A(52,8,5) ≥ 123 by deleting one point.

[MS] claims A(29,8,5) ≥ 39 and refers to [SWY], but there is no such statement there. Replaced this lower bound by the 36 given in [Bl].

This problem is that of packing pairs by quintuples. See [SWY].

Values of A(n,8,6)

2930313233 34353637
132l-159 155-195 156s-217 192SHP-229 196s-242 238g-289 238-315 276g-336 276-351
3839404142 43444546
303E-411 321-442 336-466 384-492 448E-574 457E-602 470E-630 491E-660 512-759
4748495051 52535455
588E-791 670E-824 685E-857 704-966 726-1020 799-1057 894-1095 1001-1224 1117-1283
5657585960 61626364
1163E-1334 1199-1377 1231-1527 1264-1593 1320s-1650 1464g-1708 1550g-1891 1598-1953  

A(30,8,6) ≥ 155: take a 3-OA(6,5) (six groups of size 5, every triple across covered once, 125 blocks) and add 30 blocks that meet two groups, both in 3 points, where no triple is used twice. (Some detail left out, see the explicit code given.)

A(42,8,6) > 343: take a 3-OA(6,7) (six groups of size 7, every triple across covered once, 343 blocks) and add some blocks that meet at most two groups. Optimum not determined, the code given was found by adding words greedily.

A(48,8,6) > 512: similar.

A(54,8,6) > 729: similar.

A(66,8,6) > 1331.

The codes for n=38, 39, 40 were obtained by polishing A(38,8,6) ≥ 285g.

The group codes A(55,8,6) ≥ 1045g and A(61,8,6) ≥ 1464g were found by [MS2]. The codes for 52≤n≤59 were obtained by polishing the former.

Values of A(n,8,7)

2930313233 34353637
351E-617 404E-681 475E-863 514E-992 557E-1079 600E-1175 670g-1445 754E-1620 873E-1776
3839404142 43444546
974E-1905 1118E-2289 1230E-2525 1293E-2729 1394g-2952 1591g-3526 1806g-3784 1885E-4050 2181-4337
4748495051 52535455
2516-5095 2872-5424 3288-5768 3445-6121 3608-7038 3796E-7577 3979E-8003 4172E-8447 4386E-9617
5657585960 61626364
4673-10264 5027-10862 5400-11409 5779-12870 5895s-13654 6659s-14378 7506s-15128 8444s-17019 9480CXY-17856

A(49,8,7) > 2401: use a 4-OA(7,7) and add words. Adding words in lexmin order gives 3240, further polishing yields 3270.

4-OA(7,8) and 4-OA(7,9) give A(56,8,7) > 4096 and A(63,8,7) > 6561.

Let AGL(m) be the group of maps x → ax+b (mod m) for gcd(a,m)=1. Using AGL(55) one finds A(55,8,7) > 3850. Adding words in lexmin order gives A(55,8,7) ≥ 4206, polishing A(55,8,7) ≥ 4337. Shortening yields A(54,8,7) ≥ 3795, adding words and polishing gives A(54,8,7) ≥ 3828.

Using AGL(61) one finds A(61,8,7) > 5490. Adding words in lexmin order gives A(61,8,7) ≥ 6425.

The code for n=42 was obtained by polishing A(38,8,7) ≥ 912g.

The group code A(42,8,7) ≥ 1394g was found by [MS2].

Lower bounds for A(n,8,8) and kissing numbers

Earlier bounds (including A(36,8,8) ≥ 2385, A(38,8,8) ≥ 2997, A(41,8,8) ≥ 4305, A(42,8,8) ≥ 4715, A(44,8,8) ≥ 6622, and various reverse lexicographic codes) taken from njas' web page, but now mostly superseded by larger and uglier codes.

2930313233 3435363738
1057l 1162E 1352E 1667E 1788E 1936E 2157 2742 2832E 3025E
3940414243 4445464748
3324E 3683 4510g 5136 5418s 6622gL 7391 8747sb 10535s 12642Tap

gA: Group code using AGL(37) (by Yves Edel).
gL: Group code using PSL(2,43).
Tap: from János Tapolcai: A(48,8,8) ≥ 12642=16*759+498, from A(24,8,8)=759, A(8,4)=16, and A(24,4,4)=498.

The codes for 29 ≤ n ≤ 34 were obtained by lengthening and polishing A(28,8,8) ≥ 1029g. The code for n = 36 was obtained by adding 3 words to A(36,8,8) ≥ 2739g.

A(56,8,8) > 75 = 16807.

The bounds given above yield improved lower bounds for the kissing numbers τn.

n 32333435 36373839 40
τn 346432362048381124409548 484568496232566652755988 1064368

Cf.

Yves Edel, E. M. Rains & N. J. A. Sloane,
On kissing numbers in dimensions 32 to 128,
Electr. J. Comb. 5 (1998) R22. (PDF)

Comparison between lexmin and reverse lexmin

For A(n,8,8) lexmin and reverse lexmin give the following bounds:

n 2223242526 2728293031 32333435
lexmin 330506759759759 759765781825913 1068106811691336
reverse 109132759759749 761790823899981 1117126114151614
n 363738 3940414243 4445464748
lexmin 157018382157 2510290933463825 4374498656616420 72538155
reverse 185821242439 2790311635914117 4668529859866739 75898549

Thus, for n > 26 reverse lexmin is better than lexmin (for d=w=8). After polishing the opposite is true for n ≤ 37, but for n ≥ 42 plain reverse lexmin is even better than polished lexmin. Note that the lexmin bounds increase monotically with n, but the reverse lexmin bounds do not.

Goethals codes

CXY find by averaging various subsets of the Goethals code with (n,d,M) = (63,7,247) that A(63,8,7) ≥ 8443, A(63,8,8) ≥ 59096, A(63,8,9) ≥ 361141, A(63,8,10) ≥ 1950158, A(63,8,11) ≥ 9396214, A(63,8,12) ≥ 40716926, A(63,8,13) ≥ 159735632, A(63,8,14) ≥ 570484400, and A(64,8,7) ≥ 9480, A(64,8,8) ≥ 67538, A(64,8,9) ≥ 420236, A(64,8,10) ≥ 2311298, A(64,8,11) ≥ 11346372, A(64,8,12) ≥ 50113140, A(64,8,13) ≥ 200452558, A(64,8,14) ≥ 730220032.

Jump to d=4, d=6, d=8, d=10, d=12, d=14, d=16, d=18.


Bounds on A(n,10,w)

n\w 6 7 8 9 10 11 12 13 14 15 16
122
132
1422
1533
16344
17356
18469s10s
1948 12 19s
205 10c 17 20c 38H
217 13 21c 27-35 38-42
227 16c 25R-33 35c-51 46Nu-71Po 46c-79Po
238 20Ko 33c-46 45c-78MEL 54-116Po 65Nu-135
249 24c 39E-60 56c-116MEL 72c-170KKT 95Nu-222KKT 123-246KKT
2510 28c-32 51-75 72c-157MEL 100c-262 125c-379KT 141E-433KT
2613 30c-36 68E-104 91Nu-213KKT 130c-397Po 168c-565KT 208g-691KT 234E-754S
2714 36c-48 76E-121 118Nu-291Po 162Nu-555Po 243g-871KT 351s-1190KT 425E-1406KT
2816 38R-56 85E-168 140g-376 219g-785MEL 308g-1351KT 390g-1977S 756Nu-2438 814E-2628KKT
2920 42c-66 96E-203 168g-523Po 266g-1090 406g-2036Po 543-3091Po 756-4282Po 1458g-4927Po
3025 48s-85 108c-247 203-657Po 322g-1569 512E-2924Po 768-5008Po 935-6724Po 1458-8146Po 1458-8948Po
3131 62c-109 124c-322Po 232c-822Po 465g-2036 651s-4141Po 930g-7259Po 1395g-10530Po 1539E-13519Po 1922-15031Po
3231 64c-139 145-402Po 305E-1143 500-2630 992g-5696Po 1395g-10446Po 1984g-16755Po 2325g-22213Po 2635g-26361Po 3038-27429Po
n/w 6 7 8 9 10 11 12 13 14 15 16

[BSSS] showed A(21,10,8) ≥ 21, but the period indicating equality may have been a mistake. However, equality follows from [AVZ] (26).

Some of the above ugly codes were obtained by polishing a nice group code. For example, A(29,10,12) ≥ 539g, A(30,10,9) ≥ 196g, A(30,10,12) ≥ 750g, A(31,10,15) ≥ 1860g, A(32,10,8) ≥ 144g, A(32,10,16) ≥ 2976g.

A(25,10,8) ≥ 51 was obtained by polishing the 50 found by [R].

Values of A(n,10,6)

For n ≤ 37, see here.

2930313233 34353637
20s25s31 3131-3233-34 35c 37c 37-43
3839404142 43444546
39c-44 39-45 45g-46 49c-53 55-56 55-57 56Sa-58 58Sa-60 60Sa-67
4748495051 52535455
63s-70 72g 72-73 72-75 76c-85 78g-86 80c-88 87-9091Sa
5657585960 61626364
93Sa-101 95c-104 97Sa-106 98Sa-108 105g-110 111g-122 114s-124 126SHP 126-128

A(31,10,6) ≥ 31 from PG(2,5).

A(42,10,6) ≥ 55 from TD(6,7) and adding six 6-lines contained in the groups. This can be shortened twice in such a way that only 13 blocks are lost, so that A(40,10,6) ≥ 42.

A(46,10,6) ≤ 67 since no S(2,6,46) exists: S.K. Houghten, L.H. Thiel, J. Janssen and C.W.H. Lam, There is no (46,6,1) Block Design, J. Comb. Designs 9 (2001) 60-71.

The code showing that A(48,10,6) = 72 is a GD(6,1,3; 48). Maybe such a design was unknown.

A(54,10,6) ≥ 87 from TD(6,9) and adding six 6-lines contained in the groups.

A(60,10,6) ≥ 104 from TD(6,10)–TD(6,2) (with 96 blocks) and adding six 6-lines in the groups and two 6-lines in the hole. There is a point in the hole contained in 8 blocks only, and shortening there yields A(59,10,6) ≥ 96.

A(61,10,6) ≥ 110 from TD(6,10)–TD(6,2) with a point ∞ added to all groups, and adding twelve 6-lines in the extended groups and two 6-lines in the hole.

A(66,10,6) = 143 from S(2,6,66). A(65,10,6) = 130.

A(76,10,6) = 190 from S(2,6,76).

Values of A(n,10,7)

The lower bounds for n = 30, 31, 48 are from [SHP].

2930313233 34353637
42c-66 48s-85 62c-109 64c-139 72g-150 85E-160 102E-170 116E-180 134E-222
3839404142 43444546
152E-233 170E-245 189E-257 212E-269 233E-318 250E-344 273E-358 293E-372 314E-394
4748495051 52535455
332-462 350-480 385-504 402E-521 411E-546 420E-630 428E-651 457-678 519E-707
5657585960 61626364
586E-728 600E-822 612E-861 622E-893 638E-925 675E-958 749E-1079 835E-1116  

One has A(n–2,d–2,w–1) ≥ A(n,d,w) (Honkala et al., cf. [BSSS], Thm 21), and this yields A(48,10,7) ≥ 350. Shortening yields codes for 34 ≤ n ≤ 48.

A 3-OA(7,7) yields A(49,10,7) > 343. Polishing gives A(49,10,7) ≥ 385. Lengthening and polishing yields the above bounds for 49 ≤ n ≤ 53.

A 3-OA(7,8) yields A(56,10,7) > 512. Polishing gives A(56,10,7) ≥ 583. Shortening and polishing yields codes for n = 54, 55. Lengthening and polishing gives 57 ≤ n ≤ 60.

A 3-OA(7,9) yields A(63,10,7) > 729. Polishing gives A(63,10,7) ≥ 831. Shortening and polishing yields codes for n = 61, 62.

Values of A(n,10,8)

The lower bound for n = 31 is from [SHP].

2930313233 34353637
91c-203 108c-247 124c-322Po 145-402Po 165c-573 181g-637 210c-700 245E-765 259c-832
3839404142 43444546
285g-1053 312c-1135 360c-1225 380c-1317 441g-1412 470E-1709 550g-1892 627s-2013 759g-2139
4748495051 52535455
795E-2314 904E-2772 1035E-2940 1191E-3150 1370E-3321 1572E-3549 1808-4173 2094-4394 2421-4661
5657585960 61626364
2793-4949 2858-5187 2926-5959 2998-6349 3078-6697 3164-7053 3272-7424 3584s-8497 4096OA-8928

A(56,10,8) > 2401 from a 4-OA(8,7) and A(64,10,8) > 4096 from a 4-OA(8,8). All codes nearby are polished versions of shortenings or lengthenings of these.

Jump to d=4, d=6, d=8, d=10, d=12, d=14, d=16, d=18.


Bounds on A(n,12,w)

n\w 7 8 9 10 11 12 13 14 15 16
142
152
1622
1722
183 3d 4j
19334
203 5d 5j 6d
2135 7j 7j
2246d 8c 11d12s
2346 10s 16 23s
244 9d 16s 24c 24s 46H
255 10c 25g 28c-36KT 36c-42 50c
26513d 26c 33Nu-37 41g-66S 54Ho-83 58Ho-91S
276 15c 39c 39c-58 54c-90 82-139KKT 86s-155KKT
288 19 39-45 56g-87 65Nu-147 119g-198KKT 112g-244KKT 172Nu-264KKT
298 22s-26 42g-59Po 70E-126Po 87c-197L 119-298L 153E-441 174E-492Po
30 9 30c 44-74Po 101E-159L 120s-268L 190s-492Po 239E-642Po 289-801Po 302sb-894Po
31 9 31.c 50c-94Po 108E-229 186s-415 310s-679Po 400CXY-958Po 510CXY-1238Po 572s-1435Po
32 10 36.c 60c-110 122CXY-300 186-573Po 496BCH-952Po 434-1497Po 900CXY-2140Po 629-2641 1144-2870
n/w 7 8 9 10 11 12 13 14 15 16

A(30,12,9) ≥ 44 was obtained by polishing the 43 found by [R].

BCH code

A(32,12,12) ≥ 496 is seen from the dual of the extended 2-error-correcting BCH code of length 32. This code has weight enumerator
x^32 + 496x^12 + 1054x^16 + 496x^20 + x^32.

A coset has weight enumerator

20x^8+12x^432+1144x^16+432x^20+20x^24,
and shows A(32,12,16) ≥ 1144.

Two cosets of the non-extended code have weight enumerators

x^5+x^6+35x^9+87x^10+400x^13+500x^14+500x^17+400x^18+87x^21+35x^22+x^25+x^26
2x^6+40x^9+82x^10+390x^13+510x^14+510x^17+390x^18+82x^21+40x^22+xx^25
showing that A(31,12,10) ≥ 87 and A(31,12,13) ≥ 400 and A(31,12,14) ≥ 510 and A(32,12,10) ≥ 122 and A(32,12,14) ≥ 900 ([CXY]).

Values of A(n,12,7)

293031323334 353637383940
8.9.9.10.11. 12.15.16. 17.MS 19. 21-22 25.
414243444546 474849505152
25-2927s-3432s-38 38s-4445.45-4645-47 48s.56.56-5756-58 56-59
53545556 57585960 61626364
57Sa-60 58Sa-61 63s-69 71-72 71-73 71-74 71-75 74Sa-77 76Sa-8679s-88 88-9088-91

(The code words can be viewed as the points of a partial linear space, the n positions as the lines. The condition is that each point is in precisely 7 lines, and two lines have at most one common point.
A(28,12,7) = 8 follows by taking the complete graph K8;
A(30,12,7) = 9 follows by taking the linear space with lines {0,3,6}, {0,1}, {0,2}, {0,4} (mod 9);
A(32,12,7) = 10 follows by taking the partial linear space on 10 points with 3-lines {0,1,2}, {3,4,5}, {6,7,8}, {0',3,6}, {1,4,7}, {2,5,8} and otherwise 2-lines, except that the pair 00' is not covered;
A(33,12,7) = 11 follows by taking the linear space with lines {0,1,3}, {0,4}, {0,5} (mod 11);
A(34,12,7) = 12 follows by taking the linear space with lines {0,1,3}, {0,4,8}, {0,5}, {0,6} (mod 12);
A(35,12,7) = 15 follows by taking STS(15);
A(36,12,7) = 16 follows by taking the linear space with lines {0,4,8,12}, {0,1,7}, {0,2,5} (mod 16);
A(37,12,7) = 17 follows by taking the linear space on 17 points A,B,C0,C1,C2,0-5,0'-5' with the 5-line {A,B,C0,C1,C2}, and the six 4-lines {0,1,2',4'} (mod 6), and the thirty 3-lines {A,0,0'} (mod 6), {B,0,5'} (mod 6), {C0,0,3}, {C0,1,2}, {C0,4,5}, {C0,0',3'}, {C0,2',4'}, {C0,1',5'} (mod 6) with C3=C0;
A(38,12,7) = 19 follows by taking the linear space with lines {0,1,7,11}, {0,2,5} (mod 19);
A(39,12,7) ≥ 21 follows by taking the partial linear space on 21 points obtained from a PBD(22,{4,7*}) by replacing the 7-line by a Fano plane and removing one point and the three incident Fano lines from it;
A(45,12,7) = 45 follows by taking a GD(7,1,3;45), Baker's elliptic semiplane.
A(49,12,7) = 56 follows by taking AG(2,7), with the points as coordinate positions;
A(56,12,7) ≥ 71 and A(63,12,7) ≥ 88 follow by taking a TD(7,8) or TD(7,9) and adding seven 7-lines contained in the groups.)

Note on the upper bounds: A(41,12,7) < 30 and A(42,12,7) < 36 and A(43,12,7) < 43 since equality would give two MOLS(6), resp. AG(2,6), resp. PG(2,6) and these do not exist. In fact A(41,12,7) ≤ 29 implies A(42,12,7) ≤ 34 and A(43,12,7) ≤ 40. János Tapolcai observed that A(36,10,6) ≤ 37 implies A(43,12,7) ≤ 38.

Somewhat related is the result in

J.I. Hall, A.J.E.M. Jansen, A.W.J. Kolen & J.H. van Lint,
Equidistant codes with distance 12,
Discr. Math. 17 (1977) 71-83.
who show that a nontrivial equidistant code of distance 12 has size at most 32. See also
D. McCarthy & S.A. Vanstone,
Embedding (r,1)-designs in finite projective planes,
Discr. Math. 19 (1977) 67-76.
According to
K. Metsch,
Linear spaces with few lines,
Springer LNM 1490, 1991.
a nontrivial linear space with at most 43 blocks has at most 31 points, and a (7,1)-design with at most 43 lines has at most 29 points.

Values of A(n,12,8)

293031323334 353637383940
22s-29 30.c 31.c 36.c 36-41 39E-46 44E-52 50E-66 53E-74 60E-80 68s-92 85g-110
414243444546 474849505152
85-128 105g-157 111sb-192 124sb-234 144sb-247 171s-258 205s-270 246s-282 294.s 350.c 350-363350-377
53545556 57585960 61626364
350-390350-405350-419 371E-483 374E-513 401E-529 425E-545 450sb-562 474sb-587 497E-666 520-693 520-720

A(31,12,8) ≤ 31 follows by [AVZ], (26).

A(50,12,8) = 350 from S(3,8,50), a Möbius plane. Now A(50+m,12,8) ≥ 350 + A(m,8,6) for m ≤ 25. Removing 8 points in a block shows A(42,12,8) ≥ 105.

A(65,14,9) = 520 from S(3,9,65), a Möbius plane. It follows that A(63,12,8) ≥ 520, and shortening yields the above bounds for 57 ≤ n ≤ 63.

Stronger results follow by using a 3-OA(8,7) or 3-OA(8,8). One finds A(56,12,8) > 343 and A(64,12,8) > 512.

Lower bounds for A(n,12,12)

3233343536
496BCH 496 552 664 836

Jump to d=4, d=6, d=8, d=10, d=12, d=14, d=16, d=18.


Bounds on A(n,14,w)

n\w 8 9 10 11 12 13 14 15 16
162
172
1822
1922
20222
21333
22334 4
23334 4
24345 66
25356 78
26468 10 13s 14s
27469 13c 19c-20 27s
2847 11x 21c 28c 28c 54H
2947 15c 28c-29 29c-47Po 38E-50 58c
305 10x 21s 30c 36c-62Po 46E-78Po 58-95Po 62c-104Po
31510 31bibd 35c-46 45c-77 60c-129Po 66c-167L 72c-183L
325 12 32c 40-68Po 55c-118Po 70c-183L 96g-233L 96g-277L 122g-295L
n/w 8 9 10 11 12 13 14 15 16

bibd: 2-(31,10,3) design.
Similarly, a 2-(37,9,2) design shows A(37,14,9) = 37, A(36,14,9) = 28.

A Steiner system S(3,9,65) shows A(65,14,9) = 520.

Values of A(n,14,8)

The values for n < 64, n ≠ 51 are from [SHP] and [MS]. (Some explicit files with names n-w-d-size.cod from [MS]. Not necessarily isomorphic to the codes constructed in the text below.)

293031323334 353637383940 41424344
4.5.5.5.6.6. 7.9.9.9. 10. 10. 11. 12. 12. 13.
454647484950 515253545556 57585960
15. 17. 18. 19.MS 21.25. 26. 27SHP-2831SHP-32 36.s42.s49.s 57.57-5857-5957-60
616263646566 676869707172 73747576
57-6158Sa-6263.72. -73-74-75-76 -77-7880s-8789-90 -91-92-93-95

(The code words can be viewed as the points of a partial linear space, the n positions as the lines. The condition is that each point is in precisely 8 lines, and two lines have at most one common point.
A(36,14,8) = 9 follows by taking K9;
A(39,14,8) = 10 follows by taking the partial linear space with two disjoint 3-lines and otherwise 2-lines, with two noncollinear pairs AB, CD;
A(41,14,8) = 11 follows by taking the partial linear space on 11 points 0-8,0',8' with 3-lines 012,345,678,0'36,147,258' and otherwise 2-lines, where the pairs 00' and 88' are not covered;
A(42,14,8) = 12 follows by taking the linear space on 12 points with lines {0,1,3}, {0,4}, {0,5}, {0,6} (mod 12);
A(44,14,8) = 13 follows by taking the partial linear space on 13 points A,0-11 with 3-lines 013 (mod 12), A06,A17,A28,A39 and otherwise 2-lines, where the pairs {4,10} and {5,11} are not covered;
A(45,14,8) = 15 follows by taking the linear space on 15 points with lines {0,1,3}, {0,4,9}, {0,7} mod 15;
A(46,14,8) = 17 follows by taking the partial linear space obtained from a PBD(17,{3,5*}) by replacing the 5-line by two 3-lines and two 2-lines;
A(47,14,8) = 18 follows by taking the partial linear space on 18 points a-f,0-11 with lines {0,3,6,9} (mod 12), {0,4,8} (mod 12), a01,b12,a23,b34,a45,..., c05,d16,c27,d38,..., e02,e13,f24,f35,e46,e57,f68,..., ace,adf,bcf,bde, where the pairs ab, cd, ef are not covered;
A(48,14,8) = 19 is given in [MS];
A(49,14,8) = 21 follows by taking the linear space on 21 points with lines {0,2,8,11}, {0,4,5}, {0,7,14} mod 21;
A(50,14,8) = 25 follows by taking S(2,4,25);
Lower bounds A(52,14,8) ≥ 27, A(53,14,8) ≥ 31 are given in [SHP];
A(57,14,8) = 57 follows by taking PG(2,7);
A(62,14,8) ≥ 58 was earlier claimed without proof by [SHP].
A(64,14,8) follows by taking AG(2,8), this time with points as coordinate positions.
We have 89 ≤ A(72,14,8) ≤ 90, where the lower bound follows by deleting the points of one line from AG(2,9), and removing a point from the eight lines parallel to it.)

Lower bounds for A(n,14,14)

3233343536 3738394041 42
96g 112g 132E 163 218 271 343E 457 492 615g 820g

Jump to d=4, d=6, d=8, d=10, d=12, d=14, d=16, d=18.


Bounds on A(n,16,w)

n\w 9 10 11 12 13 14 15 16
182
192
2022
2122
22222
23222
24333 4
25333 4
26334 44
27335 56
28345 778
29346x 79x10x
3046x6 10 12 15s16s
31468x 11 17R. 24R. 31s
32469x 16 25R-27 32c. 32. 62H
n/w 9 10 11 12 13 14 15 16

A(32,16,14), A(32,16,15) ≤ 32 follows by [AVZ], (26).

A(33,16,11) = 12.

Values of A(n,16,9)

293031323334 353637383940 414243444546
3.4.4.4.4.4. 5.5.5.5.6.6. 6.7.7.8.10.10.
474849505152 535455565758 596061626364
10.11.11.12.12.13. 13.14.15.16.19.19. 20. 21. 22. 24.28. 
656667686970 717273747576 777879808182
      49.56.64. 73.     78. 80. 90. 

The values for n = 59, 60, 61 are due to I. Gashkov & D. Taub, New optimal constant weight codes, Electr. J. Comb. 14 (2007) #N13. (That reference also claims that A(45,14,8) = 14, but in fact A(45,14,8) = 15.)

(The code words can be viewed as the points of a partial linear space, the n positions as the lines. The condition is that each point is in precisely 9 lines, and two lines have at most one common point. For example, A(48,16,9) = 11 follows from a partial linear space with 11 points, the union of three 3-lines and two points A, B, with AB not joined, but 2-lines otherwise; A(50,16,9) = 12 follows from a linear space with 12 points and 8 triples, two on each point (and otherwise 2-lines); A(52,16,9) = 13 follows from the linear space with 13 points and lines {0,1,3}, {0,4}, {0,5}, {0,6} (mod 13); A(54,16,9) = 14 follows from a partial linear space with points 0,1,...,11,0',1' and lines {0,1,3}, {0,4}, {0,5}, {0,6,0'}, {0,1'} (mod 12), where 2' = 0'; A(55,16,9) = 15 follows from the linear space with 15 points and 25 3-lines formed by a TD(3,5); A(57,16,9) = 19 follows from the existence of STS(19); A(63,16,9) = 63 from S(2,4,28); A(73,16,9) = 73 from PG(2,8); A(78,16,9) = 78 from PG(2,9) minus a Baer subplane; A(81,16,9) = 90 from AG(2,9), the last two with points as coordinate positions.)

Two further exact values are A(99,16,9) = 132 and A(135,22,12) = 135, obtained from Mathon's elliptic semiplane.

A(40,16,10) = 16. A(42,16,10) = 21. A(45,16,10) < 36.

Jump to d=4, d=6, d=8, d=10, d=12, d=14, d=16, d=18.


Bounds on A(n,18,w)

n\w 10 11 12 13 14 15 16 17
202
212
2222
2322
24222
25222
26222 2
27333 3
28333 44
29333 44
3033 5 5 5 6
313355 6 6
323 45 6 7 8 8
3334 6j 7 9j 11 11
34 4x468j 10x 14 17c 18c
35 4 5 7 10 15s 21s 22R-28 35c
n/w 10 11 12 13 14 15 16 17

A(36,18,15) = 36 (bibd), A(36,18,18) = 70 (Had), A(40,18,13) = 40 (PG(3,3)).

Values of A(n,18,10)

293031323334 353637383940 41424344
3.3.3.3.3.4. 4.4.4.4.4.5. 5.5.5.5.
454647484950 515253545556 57585960
6.6.6.6.7.7. 7.8.8.9.11.11. 11.12.12.12.
616263646566 676869707172 73747576
13.13.14.14. 15.15.16.17. 18.21.21. 22. 23. 24.25. 

A(82,18,10) = 41, A(90,18,10) = 81, A(91,18,10) = 91.

(The code words can be viewed as the points of a partial linear space, the n positions as the lines. The condition is that each point is in precisely 10 lines, and two lines have at most one common point. For example, A(61,18,10) = 13 follows from the linear space that is the union of a 4-line, and a 3x3 grid (6 3-lines on 9 points), where all remaining lines are 2-lines; A(63,18,10) = 14 follows from the linear space with lines {0,1,3}, {0,4}, {0,5}, {0,6}, {0,7} (mod 14); A(65,18,10) = 15 follows from the linear space with lines {0,1,3}, {0,5,10}, {0,4}, {0,6}, {0,7} (mod 15); A(67,18,10) = 16 follows from the linear space with points 0,...,11,0',...,3' and lines {0,1,3} mod 12, {0',0,5} mod 12 (with 4'=0'), {0',1',2',3'} and otherwise 2-lines; A(68,18,10) = 17 follows from the linear space with lines {0,1,3}, {0,4,9}, {0,6}, {0,7}; A(70,18,10) = 21 follows by taking an STS(21); A(72,18,10) = 22 follows from a GDD with blocksize 3 and groups 4*4+6 (with the 6-group split into 3*2); A(73,18,10) = 23 follows from a (10,1)-design PBD(23,{3,4,5*}); A(74,18,10) = 24 follows by deleting the 7-block in an PBD(31,{4,7*}). A(75,18,10) = 25 follows from the linear space with lines {0,1,4,12},{0,2,7},{0,6,15} (mod 25).)

Jump to d=4, d=6, d=8, d=10, d=12, d=14, d=16, d=18.


Acknowledgements

Useful email was received from Bo Chen.
Valid HTML 4.01 Transitional Valid CSS!