Note on the size of binary Armstrong codes
A.E. Brouwer1 1 Eindhoven
A. Blokhuis1
A. Sali2
University of Technology
2 Alfréd
Rényi Institute of Mathematics Hungarian Academy of Sciences
Tuesday, June 11th 2013.
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
1 / 20
q; k; n)
Arm(
Denition
An Armstrong code Arm(q ; k ; n ) is a code of length n over an alphabet of size q with minimum Hamming distance d = n k + 1 and the additional property that for every subset of size k 1 = n d of the coordinate positions there are two codewords that agree there (so the minimum distance occurs `in all directions').
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
2 / 20
Origins, examples
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
3 / 20
Origins, examples
The code consisting of the rows of an n by n identity matrix is an Arm(q ; n 1; n ) for all q .
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
3 / 20
Origins, examples
The code consisting of the rows of an n by n identity matrix is an Arm(q ; n 1; n ) for all q .
The code of the n + 1 vectors ci = (1; : : : ; 1; 0; : : : ; 0) with i ones followed by n i zeroes is an Arm(q ; n ; n ) for all q .
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
3 / 20
Origins, examples
The code consisting of the rows of an n by n identity matrix is an Arm(q ; n 1; n ) for all q .
The code of the n + 1 vectors ci = (1; : : : ; 1; 0; : : : ; 0) with i ones followed by n i zeroes is an Arm(q ; n ; n ) for all q . An Arm(2; 7; 10) can be constructed by taking a Steiner system S (3; 4; 10) and adding the all-0 vector.
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
3 / 20
Origins, examples
The code consisting of the rows of an n by n identity matrix is an Arm(q ; n 1; n ) for all q .
The code of the n + 1 vectors ci = (1; : : : ; 1; 0; : : : ; 0) with i ones followed by n i zeroes is an Arm(q ; n ; n ) for all q . An Arm(2; 7; 10) can be constructed by taking a Steiner system S (3; 4; 10) and adding the all-0 vector.
Armstrong codes have their origin in Database Theory.
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
3 / 20
Earlier results
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
4 / 20
Earlier results
Let f (q ; k ) = maxfn : Arm(q ; k ; n ) existsg.
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
4 / 20
Earlier results
Let f (q ; k ) = maxfn : Arm(q ; k ; n ) existsg.
Proposition (G.O.H. Katona, K.-D. Schewe, S.) f (q ; 2) =
q +1 and 2
3q
Blokhuis, Brouwer, Sali (TUE,Renyi)
2 f (q ; 3) 3q
Binary Armstrong codes
1.
June 11. 2013
4 / 20
Earlier results
Let f (q ; k ) = maxfn : Arm(q ; k ; n ) existsg.
Proposition (G.O.H. Katona, K.-D. Schewe, S.) f (q ; 2) =
q +1 and 2
3q
2 f (q ; 3) 3q
Proposition (L. Székely, S.) pq e k
< f (q ; k ) < (q
log q )k for k
Blokhuis, Brouwer, Sali (TUE,Renyi)
1.
> k0 (q ) and q > 3
Binary Armstrong codes
June 11. 2013
4 / 20
Earlier results
Let f (q ; k ) = maxfn : Arm(q ; k ; n ) existsg.
Proposition (G.O.H. Katona, K.-D. Schewe, S.) f (q ; 2) =
q +1 and 2
3q
2 f (q ; 3) 3q
Proposition (L. Székely, S.) pq e k
< f (q ; k ) < (q
log q )k for k
1.
> k0 (q ) and q > 3
The construction is probabilistic using Lovász Local Lemma, the upper bound is obtained by embedding into an Euclidean sphere and using Rankin's bound for spherical codes.
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
4 / 20
Armstrong codes Arm(2;
Blokhuis, Brouwer, Sali (TUE,Renyi)
k; n)
for
Binary Armstrong codes
k
n
3
June 11. 2013
5 / 20
Armstrong codes Arm(2;
Arm(2; n ; n ) and Arm(2; n
Blokhuis, Brouwer, Sali (TUE,Renyi)
k; n)
for
k
n
1; n ) exists for all n
Binary Armstrong codes
3
> 0.
June 11. 2013
5 / 20
Armstrong codes Arm(2;
Arm(2; n ; n ) and Arm(2; n
Proposition (A. Keszler) Arm(2; n
k; n)
k
n
1; n ) exists for all n
2; n ) does not exist for n
Blokhuis, Brouwer, Sali (TUE,Renyi)
for
3
> 0.
8.
Binary Armstrong codes
June 11. 2013
5 / 20
Armstrong codes Arm(2;
Arm(2; n ; n ) and Arm(2; n
Proposition (A. Keszler) Arm(2; n
Theorem
k; n)
n
3
> 0.
8.
2; n ) exists if and only if n
Blokhuis, Brouwer, Sali (TUE,Renyi)
k
1; n ) exists for all n
2; n ) does not exist for n
An Arm(2; n
for
Binary Armstrong codes
9.
June 11. 2013
5 / 20
Armstrong codes Arm(2;
Arm(2; n ; n ) and Arm(2; n
Proposition (A. Keszler) Arm(2; n
Theorem
k; n)
n
3
> 0.
8.
2; n ) exists if and only if n 3; n ) exists if and only if n
Blokhuis, Brouwer, Sali (TUE,Renyi)
k
1; n ) exists for all n
2; n ) does not exist for n
An Arm(2; n An Arm(2; n
for
Binary Armstrong codes
9. 10.
June 11. 2013
5 / 20
Armstrong codes Arm(2;
Arm(2; n ; n ) and Arm(2; n
Proposition (A. Keszler) Arm(2; n
Theorem
k; n)
k
n
1; n ) exists for all n
2; n ) does not exist for n
An Arm(2; n An Arm(2; n
for
3
> 0.
8.
2; n ) exists if and only if n 3; n ) exists if and only if n
9. 10.
By deleting one coordinate position in an Arm(q ; k ; n ), one obtains an Arm(q ; k ; n 1). The existence of an Arm(2; n 2; n ) for n 9 follows from that of an Arm(2; n 3; n ) for n 10.
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
5 / 20
Skeleton code method
Let n 23. Construct an (n ; n ; 12)-code from a Hadamard matrix of order 4t , where n 4t 2n 22.
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
6 / 20
Skeleton code method
Let n 23. Construct an (n ; n ; 12)-code from a Hadamard matrix of order 4t , where n 4t 2n 22. Partition the quadruples from an n -set into n collections such that two quadruples in the same collection intersect in at most 2 elements by putting quadruple fp ; q ; r ; s g in collection Ti if p + q + r + s i (mod n ).
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
6 / 20
Skeleton code method
Let n 23. Construct an (n ; n ; 12)-code from a Hadamard matrix of order 4t , where n 4t 2n 22. Partition the quadruples from an n -set into n collections such that two quadruples in the same collection intersect in at most 2 elements by putting quadruple fp ; q ; r ; s g in collection Ti if p + q + r + s i (mod n ).
Let C = f~c0 ; : : : ;~cn 1 g be an (n ; n ; 12)-code. Construct an Arm(2; n 3; n ) by taking the code words in C together with the words ~ci + ~t for every T 2 Ti , where ~t is the characteristic vector of T .
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
6 / 20
Smaller
n
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
7 / 20
Smaller
n
For 14 n 16, look at the 2165 extended perfect (16; 2048; 4)-codes (classied in Östergård, P. R. J., and Pottonen, O., The perfect binary one-error-correcting codes of length 15: Part IClassication. arXiv:0806.2513, Dec 2009.). Five of these (numbers 2099, 2108, 2121, 2122 and 2124) are Armstrong. Appropriate shortenings give Armstrong codes for n = 15 and n = 14 (but not for n = 13).
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
7 / 20
Smaller
n
For 14 n 16, look at the 2165 extended perfect (16; 2048; 4)-codes (classied in Östergård, P. R. J., and Pottonen, O., The perfect binary one-error-correcting codes of length 15: Part IClassication. arXiv:0806.2513, Dec 2009.). Five of these (numbers 2099, 2108, 2121, 2122 and 2124) are Armstrong. Appropriate shortenings give Armstrong codes for n = 15 and n = 14 (but not for n = 13). For 14 n 22 Armstrong codes can be obtained by computer, using a greedy procedure.
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
7 / 20
Smaller
n
For 14 n 16, look at the 2165 extended perfect (16; 2048; 4)-codes (classied in Östergård, P. R. J., and Pottonen, O., The perfect binary one-error-correcting codes of length 15: Part IClassication. arXiv:0806.2513, Dec 2009.). Five of these (numbers 2099, 2108, 2121, 2122 and 2124) are Armstrong. Appropriate shortenings give Armstrong codes for n = 15 and n = 14 (but not for n = 13). For 14 n 22 Armstrong codes can be obtained by computer, using a greedy procedure. For n = 11; 12; 13, a randomized version of greedy procedure works.
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
7 / 20
A lower bound
For general k we have the following. Recall that d
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
=n
k + 1.
June 11. 2013
8 / 20
A lower bound
For general k we have the following. Recall that d
=n
k + 1.
Theorem (G.O.H. Katona, K.-D. Schewe, S.) An Arm(2; k ; n ) exists when n
Blokhuis, Brouwer, Sali (TUE,Renyi)
9:09d ( () n 1:12k ).
Binary Armstrong codes
June 11. 2013
8 / 20
A lower bound
For general k we have the following. Recall that d
=n
k + 1.
Theorem (G.O.H. Katona, K.-D. Schewe, S.) An Arm(2; k ; n ) exists when n
9:09d ( () n 1:12k ).
Proof idea 2 Arm(2; k ; n ) exists when d nd 2n 2 by greedy construction. And this holds when d 1 and n ad with a 9:08861.
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
8 / 20
Previous upper bound
Theorem (G.O.H. Katona, K.-D. Schewe, S.)
If an Arm(2; k ; n ) exists, and k n 2d ).
Blokhuis, Brouwer, Sali (TUE,Renyi)
7, then n 2(k
Binary Armstrong codes
1) (that is,
June 11. 2013
9 / 20
A connection with constant weight codes
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
10 / 20
A connection with constant weight codes
Proposition
Let A(n ; d ) and A(n ; d ; w ) denote the maximum size of a binary code of word length n , minimum distance d (and constant weight w ). Suppose an Arm(2; k ; n ) exists. Then
2
Blokhuis, Brouwer, Sali (TUE,Renyi)
n d
!
A(n ; d )A(n ; d ; d ):
Binary Armstrong codes
June 11. 2013
10 / 20
A connection with constant weight codes
Proposition
Let A(n ; d ) and A(n ; d ; w ) denote the maximum size of a binary code of word length n , minimum distance d (and constant weight w ). Suppose an Arm(2; k ; n ) exists. Then
2
n d
!
A(n ; d )A(n ; d ; d ):
Proof. If C is an Arm(2; k ; n ) and we look at all spheres of radius d around code words, then we see each dierence at least twice.
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
10 / 20
Tools
Let L(x ) = x log2 (x ). From Stirling's theorem, for m suciently large, ; and bounded away from zero, small compared to m , but not necessarily constant 1 m
!
log2
m L( )
m
L( )
With the binary entropy function H2 (x ) = 1 n
Blokhuis, Brouwer, Sali (TUE,Renyi)
log2
n
n
!
L( L(x )
): L(1
x ), we have
H2():
Binary Armstrong codes
June 11. 2013
11 / 20
Tools II.
Let d = n . Let 0 = 0 ( ) be such that a code of length n with constant weight d and minimum distance d has size at most 20 n . Let 1 = 1 ( ) be such that an arbitrary code with length n and minimum distance d has size at most 21 n .
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
12 / 20
Tools II.
Let d = n . Let 0 = 0 ( ) be such that a code of length n with constant weight d and minimum distance d has size at most 20 n . Let 1 = 1 ( ) be such that an arbitrary code with length n and minimum distance d has size at most 21 n . Proposition says that if an Arm(2; k ; n ) exists, then 2 nd 2(0 +1 )n . Hence H2 ( ) 0 ( ) + 1 ( ).
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
12 / 20
The sphere packing bound
Gives an upper bound
Blokhuis, Brouwer, Sali (TUE,Renyi)
1 = 1
H2 (=2).
Binary Armstrong codes
June 11. 2013
13 / 20
The sphere packing bound
Gives an upper bound 1 = 1 H2 (=2). Let C be a code of word length n , constant weight d , and minimum distance d . Let m = bd =2c. Then
jC j
n
!
m +1
=
d
!
m +1
;
because every (m + 1)-set of coordinates is covered by a code word from C at most once. So 0 = L( 12 ) L( ) L(1 12 ).
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
13 / 20
The sphere packing bound
Gives an upper bound 1 = 1 H2 (=2). Let C be a code of word length n , constant weight d , and minimum distance d . Let m = bd =2c. Then
jC j
n
!
m +1
=
d
!
m +1
;
because every (m + 1)-set of coordinates is covered by a code word from C at most once. So 0 = L( 12 ) L( ) L(1 12 ). Solving H2 ( ) 0 ( ) + 1 ( ) yields 0:2271, so that n 1:294k .
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
13 / 20
The Elias-Bassalygo bound
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
14 / 20
The Elias-Bassalygo bound
Gives 1 bound.
=
1
H2 ((1
Blokhuis, Brouwer, Sali (TUE,Renyi)
p
1
2 )=2), better than the sphere packing
Binary Armstrong codes
June 11. 2013
14 / 20
The Elias-Bassalygo bound
p
Gives 1 = 1 H2 ((1 1 2 )=2), better than the sphere packing bound. This time we nd 0:212, so that n 1:27k .
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
14 / 20
McEliece-Rodemich-Rumsey-Welch bound
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
15 / 20
McEliece-Rodemich-Rumsey-Welch bound
p
A weak form yields 1 = H2 ( 12 (1 )). This is better again (for > 0:15), and yields 0:205, so that n 1:258k .
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
15 / 20
Levenshtein
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
16 / 20
Levenshtein
An improved value for 0 (see Levenshtein, V. I., Universal bounds for codes and designs, pp. 499648 in: Handbook of Coding Theory, V. S. Pless and W. C. Human, eds., Elsevier, Amsterdam, 1998. p. 643) is 0 B1
0 = H2 B @
2
v u u u1 t
Blokhuis, Brouwer, Sali (TUE,Renyi)
4
0s @
(1 )
Binary Armstrong codes
2
(1
2
12
)
A
2
1 C C: A
June 11. 2013
16 / 20
Levenshtein
An improved value for 0 (see Levenshtein, V. I., Universal bounds for codes and designs, pp. 499648 in: Handbook of Coding Theory, V. S. Pless and W. C. Human, eds., Elsevier, Amsterdam, 1998. p. 643) is 0 B1
0 = H2 B @ Using it yields
2
v u u u1 t
4
0s @
(1 )
2
(1
2
12
)
A
2
1 C C: A
0:18506 and hence n 1:2271k .
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
16 / 20
McEliece-Rodemich-Rumsey-Welch bound, strong form
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
17 / 20
McEliece-Rodemich-Rumsey-Welch bound, strong form
1 = minf1 + g (u 2 ) where g (x ) = H2 ((1
p
Blokhuis, Brouwer, Sali (TUE,Renyi)
1
j u 1
g (u 2 + 2 u + 2 ) 0
2 g;
x )=2).
Binary Armstrong codes
June 11. 2013
17 / 20
McEliece-Rodemich-Rumsey-Welch bound, strong form
1 = minf1 + g (u 2 )
p
j u 1
g (u 2 + 2 u + 2 ) 0
where g (x ) = H2 ((1 1 x )=2). 1 With u = 0:25 this says 1 = 1 + g ( 16 ) 0:183 and hence n 1:224k .
Blokhuis, Brouwer, Sali (TUE,Renyi)
2 g;
1 5 g ( 16 + 2 ). This yields
Binary Armstrong codes
June 11. 2013
17 / 20
Summary
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
18 / 20
Summary
Theorem
If an Armstrong code Arm(2; k ; n ) exists, then we have asymptotically n 1:224k .
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
18 / 20
Summary
Theorem
If an Armstrong code Arm(2; k ; n ) exists, then we have asymptotically n 1:224k .
Corollary 1:12k for k
< f (2; k ) 1:224k
> k0 .
Blokhuis, Brouwer, Sali (TUE,Renyi)
Binary Armstrong codes
June 11. 2013
18 / 20