Processing math: 100%

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,,g1 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 gt1 (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 231=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.