In coding theory, a covering code is a set of elements (called codewords) in a space, with the property that every element of the space is within a fixed distance of some codeword.
Let q ≥ 2 , n ≥ 1 , R ≥ 0 be integers. A code C ⊆ Q n over an alphabet Q of size |Q| = q is called q-ary R-covering code of length n if for every word y ∈ Q n there is a codeword x ∈ C such that the Hamming distance d H ( x , y ) ≤ R . In other words, the spheres (or balls or rook-domains) of radius R with respect to the Hamming metric around the codewords of C have to exhaust the finite metric space Q n . The covering radius of a code C is the smallest R such that C is R-covering. Every perfect code is a covering code of minimal size.
C = {0134,0223,1402,1431,1444,2123,2234,3002,3310,4010,4341} is a 5-ary 2-covering code of length 4.
The determination of the minimal size K q ( n , R ) of a q-ary R-covering code of length n is a very hard problem. In many cases, only upper and lower bounds are known with a large gap between them. Every construction of a covering code gives an upper bound on Kq(n, R). Lower bounds include the sphere covering bound and Rodemich’s bounds K q ( n , 1 ) ≥ q n − 1 / ( n − 1 ) and K q ( n , n − 2 ) ≥ q 2 / ( n − 1 ) . The covering problem is closely related to the packing problem in Q n , i.e. the determination of the maximal size of a q-ary e-error correcting code of length n.
A particular case is the football pools problem, based on football pool betting, where the aim is to predict the results of n football matches as a home win, draw or away win, or to at least predict n - 1 of them with multiple bets. Thus a ternary covering, K3(n,1), is sought.
If n = 1 2 ( 3 k − 1 ) then 3n-k are needed, so for n = 4, k = 2, 9 are needed; for n = 13, k = 3, 59049 are needed. The best bounds known as of 2011 are
The standard work on covering codes lists the following applications.
Compression with distortionData compressionDecoding errors and erasuresBroadcasting in interconnection networksFootball poolsWrite-once memoriesBerlekamp-Gale gameSpeech codingCellular telecommunicationsSubset sums and Cayley graphs