Proposed by Evgeny Selensky
The covering array problem is formulated as follows.
A covering array CA(t,k,g) of size b and strength t, is a kxb array A=(aij) over Zg=0,1,2,…,g−1 with the property that for any t distinct rows 1<=r1<=r2<=…<=rt<=k, and any member (x1,x2,…,xt) of Ztg there exists at least one column c such that xi equals the (ri,c)−th element of A for all 1<=i<=t.
A covering array number CAN(t,k,g) is the smallest b such that there exists a CA(t,k,g) of size b.
Informally, any t distinct rows of the covering array must encode column-wise all numbers from 0 to gt−1 (repititions are allowed).
An example of covering array CA(3,5,2) over the Boolean alphabet 0,1 is:
0 0 0 0 0 1 1 1 1 1
0 0 0 1 1 0 0 1 1 1
0 0 1 0 1 0 1 0 1 1
0 1 0 0 1 0 1 1 0 1
0 1 1 1 0 1 0 0 0 1
In this array, any t=3 rows encode all numbers from 0 (when the respective elements are 0,0,0) to 23−1=7 (when the elements are 1,1,1). E.g., the three top rows encode the following numbers (from left to right): 0,0,1,2,3,4,5,6,7,7; the three bottom rows encode numbers: 0,3,5,1,6,1,6,2,4,7.
It has been proved in [3] that CAN(3,5,2)=10 and therefore the presented array is an optimal solution to CA(3,5,2).
The problem comes from hardware and software testing.