Improved LP Lower Bounds for Difference Triangle Sets

James B. Shearer IBM Watson Research P.O. Box 218 Yorktown Heights, NY 10598 U.S.A. email: jbs@watson.ibm.com

Submitted: August 11, 1999; Accepted: August 24, 1999

Abstract. In 1991 Lorentzen and Nilsen showed how to use linear programming to prove lower bounds on the size of difference triangle sets. In this note we show how to improve these bounds by including additional valid linear inequalities in the LP formulation. We also give some new optimal difference triangle sets found by computer search.

AMS Subject Classification: 05B10

Following Kløve [2] we define an (I, J) difference triangle set, Δ, as a set of integers {a_{ij} | 1 ≤ i ≤ I, 0 ≤ j ≤ J} such that all the differences a_{ij} − a_{ik}, 1 ≤ i ≤ I, 0 ≤ k < j ≤ J are positive and distinct. Let m = m(Δ) be the maximum difference. The difference triangle set problem is to minimize m given I and J. Kløve defined M(I, J) as this minimum. Lorentzen and Nilsen [3] showed how to use linear programming (LP) methods to prove lower bounds on M(I, J). This was a generalization and improvement of earlier lower bounds. Here we show how to improve the LP bound (for I > 1) by adding inequalities to the LP formulation. We also announce some new values of M(I, J) found by computer search.

Given a difference triangle set {a_{ij} | 1 ≤ i ≤ I, 0 ≤ j ≤ J} we have associated difference triangles {X_{ijk} | 1 ≤ i ≤ I, 1 ≤ j ≤ J, 1 ≤ k ≤ J + 1 − j} where X_{ijk} = a_{i,j+k−1} − a_{i,k−1}. The ith difference triangle is {X_{ijk} | 1 ≤ j ≤ J, 1 ≤ k ≤ J + 1 − j}. Its top row is {X_{i1k} | 1 ≤ k ≤ J}. Clearly each difference triangle is determined by its top row. The maximum difference in each difference triangle is its bottom element X_{iJ1} which is the sum of the top row.

We can now formulate a linear program which gives a lower bound for m = M(I, J). The LP variables will be m and the top elements {X_{i1k} | 1 ≤ i ≤ I, 1 ≤ k ≤ J} of the difference triangles. Minimizing m will be the objective. Clearly since m is the maximum difference we have:

m ≥ X_{iJ1} = ∑_{k=1}^{J} X_{i1k}  1 ≤ i ≤ I  (1)

Also since the differences are all distinct positive integers we know that the sum of any n of them will be at least as large as the sum of the first n positive integers or n(n + 1)/2. So if S is a subset of the differences, we have:

∑_{X_{ijk}∈S} X_{ijk} ≥ n(n + 1)/2  where |S| = n  (2)

(since X_{ijk} = ∑_{h=k}^{j+k−1} X_{i1h} the inequalities (2) can be expressed in terms of our LP variables).

This is essentially the LP formulation used by Lorentzen and Nilsen [3] to bound M(I, J). In practice when solving the LP, we use symmetry to reduce the IJ variables {X_{i1k} | 1 ≤ i ≤ I, 1 ≤ k ≤ J} to ⌊(J + 1)/2⌋ variables (since the difference triangles can be permuted and reflected). Also we do not use all the inequalities (2). Instead we start with a small subset and solve the LP. Then we check if any of the unused inequalities are violated by the solution. If we find a violated inequality, we add it to the subset and resolve the LP repeating as necessary. If the number of inequalities becomes too large, we delete some of the non-binding ones. In practice this procedure rapidly produces a solution without having to solve large LP’s.

Given a solution to a subset problem we can quickly check the inequalities (2) as follows. We use the solution to compute the remaining elements of the difference triangles. We next sort all IJ(J + 1)/2 elements from smallest to largest. We then compute the partial sums and compare to the corresponding partial sums of the smallest IJ(J +1)/2 positive integers. If, for example, we find the sum of the n smallest differences is less than n(n + 1)/2, then we have found a violated inequality (2) which can be added to our subset LP. Otherwise we have shown the solution to the subset LP is also a solution to the entire LP. In practice the above procedure is modified to reflect the reduced number of LP variables due to symmetry.

The above produces the bounds on M(I, J) in Lorentzen and Nilsen [3]. Using the following lemma we can improve these bounds when I > 1.

Lemma 1: Suppose we have a set, S, containing n distinct integers with average r. Let m be the maximum element of S. Then we have m ≥ r + (n − 1)/2.

Proof: Let s be the sum of the elements of S. Clearly s = nr. Also since the elements of S are distinct with maximum m we must have s ≤ m+(m−1)+⋯+(m−n+1) = mn− \frac{(n−1)n}{2}. So nr ≤ mn − \frac{(n−1)n}{2} or dividing by n and rearranging m ≥ r + (n − 1)/2 as claimed.

Now we can use Lemma 1 to strengthen the inequalities (1) when I > 1 as follows. By symmetry the LP solution will have m = X_{iJ1} 1 ≤ i ≤ I. However the X_{iJ1} are actually distinct positive integers and m is their maximum. This means using Lemma 1 we may replace (1) with

m ≥ \frac{1}{J} ∑_{i=1}^{J} X_{iJ1} + (I − 1)/2  (3)

Clearly this will improve the lower bound on m by (I − 1)/2. However we can do still better. (3) is just one of a family of inequalities for m each corresponding to a subset T of the IJ(J + 1)/2 differences and derived by use of Lemma 1. When T is the set of the I bottom elements of the difference triangles, we obtain (3). In general, we have

m ≥ \frac{1}{n} ∑_{X_{ijk}∈T} X_{ijk} + (n − 1)/2  where |T | = n  (4)

Again as with (2) these inequalities can be rewritten in terms of our LP variables. Similarly it is easy to check given a solution of a LP containing a subset of the inequalities (4) whether any of the remaining inequalities (4) are violated. Simply compute and sort the differences X_{ijk} and verify (4) for sets T consisting of the n largest differences 1 ≤ n ≤ IJ(J + 1)/2. Again in practice this procedure is modified to reflect the reduced number of variables due to symmetry.

Remark 1: Let S and T be the entire set of differences in (2) and (4) respectively. Then we have m ≥ \frac{n+1}{2} + \frac{n−1}{2} = n where n = IJ(J + 1)/2. So the bound given by our LP formulation is always at least as good as the trivial bound M(I, J) ≥ IJ(J + 1)/2 from the fact that all IJ(J + 1)/2 differences must be distinct. This is not true for Lorentzen and Nilsen’s formulation.

We have solved the LP with inequalities (2) and (4) using the above described iterative procedure for 1 ≤ I ≤ 15, 5 ≤ J ≤ 20 (for J ≤ 4 the solution gives the trivial bound M(I, J) ≥ IJ(J + 1)/2 mentioned in Remark 1 above). The resulting lower bounds on M(I, J) are listed in Table 1. These bounds are generally improvements (compare [1], [3]). In most cases however there is still a considerable gap between these bounds and the best upper bounds known. For example the lower bound for M(15, 10) in [1] is 958, the lower bound using Lorentzen and Nilsen’s formulation is 962 and the lower bound in this paper is 974. This remains far from the best upper bound known for M(15, 10), 1415 (from [1]). The fault may be more with the upper bound than with the lower bound however as the known ways of constructing (I, J) difference triangle sets do not seem to be very good for large I. In a few cases the lower bound in this paper is known to be quite good. For example exhaustive search (see below) has shown M(5, 5) = 79 (the claim that M(5, 5) = 83 in [2] and propagated elsewhere is incorrect). The Lorentzen and Nilsen [3] lower bound for this case is 75, the lower bound in this paper is 77.

Remark 2: For small values of J we can solve the LP for all values of I obtaining:

M(I, 5) ≥ (91I + 6)/6  (5)
M(I, 6) ≥ (179I + 9)/8  (6)

We have also found some new exact values of M(I, J) by computer search using a program similar to that described in [4]. We have M(2, 9) = 121, M(3, 7) = 100, M(5, 5) = 79 and M(9, 4) = 91. Examples obtaining these values are given in Table 2. The first two are unique, the third is probably not unique and the last is far from unique. The web page

<http://www.research.ibm.com/people/s/shearer/dtsub.html> lists these values as well

as numerous additional improvements on the results in [4]. the electronic journal of combinatorics 6 (1999), # R31 5

Table 1 - Lower Bounds for M(I,J)

J/I 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
5  17 32 47 62 77 92 108 123 138 153 168 183 199 214 229
6  24 46 69 91 113 136 158 181 203 225 248 270 292 315 337
7  32 63 94 124 155 186 217 247 278 309 339 370 401 431 462
8  43 83 124 164 205 245 286 327 367 408 448 489 529 570 610
9  54 106 158 209 261 313 365 417 469 521 572 624 676 728 780
10 67 132 197 261 326 391 456 520 585 650 715 780 844 909 974
11 82 161 240 320 399 478 558 637 716 796 875 954 1034 1113 1193
12 98 194 289 385 480 576 671 767 862 958 1054 1149 1245 1340 1436
13 116 229 343 456 569 683 796 909 1023 1136 1249 1363 1476 1589 1703
14 136 268 401 534 667 800 933 1066 1198 1331 1464 1597 1730 1863 1996
15 157 311 464 618 772 926 1080 1234 1388 1542 1696 1850 2003 2157 2311
16 180 356 533 709 886 1062 1239 1415 1592 1768 1945 2121 2298 2475 2651
17 204 405 606 807 1007 1208 1409 1610 1811 2012 2213 2413 2614 2815 3016
18 230 457 684 910 1137 1364 1591 1818 2044 2271 2498 2725 2952 3178 3405
19 258 512 767 1021 1276 1530 1784 2039 2293 2548 2802 3057 3311 3565 3820
20 287 571 855 1139 1422 1706 1990 2274 2557 2841 3125 3409 3692 3976 4260

Table 2 - New Values for M(I,J)

M(2,9) = 121

0 4 13 45 46 69 94 109 116 121
0 3 19 21 29 57 87 101 107 118

M(3,7) = 100

0 12 15 31 55 87 88 93
0 7 30 41 51 77 90 99
0 2 29 37 54 82 96 100

M(5,5) = 79

0 12 20 41 72 75
0 6 25 49 62 79
0 4 15 51 65 74
0 2 18 44 66 71
0 1 33 40 68 78

M(9,4) = 91

0 26 42 79 90
0 20 25 69 76
0 17 21 82 84
0 13 35 75 87
0 10 33 80 83
0 9 38 66 81
0 8 27 68 86
0 6 45 77 91
0 1 31 55 89

References

[1] C.J. Colbourn, “Difference Triangle Sets”, Chapter in The CRC Handbook of Combinatorial Designs by C.J. Colbourn and J. Dintz (ISBN 0-8493-8948-8), 1996, p. 312-317.

[2] T. Kløve, “Bounds and Construction for Difference Triangle Sets”, IEEE Transactions on Information Theory, 35 (1989), p. 879-886.

[3] R. Lorentzen and R. Nilsen, “Application of Linear Programming to the Optimal Difference Triangle Set Problem”, IEEE Transactions on Information Theory, 37 (1991), p. 1486-1488.

[4] J.B. Shearer, “Some New Difference Triangle Sets”, The Journal of Combinatorial Mathematics and Combinatorial Computing, 27 (1998), p. 65-76.