A REVIEW OF THE AVAILABLE CONSTRUCTION METHODS FOR GOLOMB RULERS

. We collect the main construction methods for Golomb rulers available in the literature along with their proofs. In particular, we demonstrate that the Bose-Chowla method yields Golomb rulers that appear as the main diagonal of a special subfamily of Golomb Costas arrays. We also show that Golomb rulers can be composed to yield longer Golomb rulers


Introduction
A Golomb ruler can be described as a collection of markings spaced apart at integer multiples of a unit length, so that all distances between pairs of markings are distinct.This is equivalent to saying that, when a Golomb ruler is superimposed to a shifted version of itself (by an integer multiple of the unit length), at most one pair of markings will coincide: in engineering terminology, Golomb rulers have an 1D ideal thumbtack autocorrelation (or auto-ambiguity).
Golomb rulers are the same objects as Sidon sets (which historically predate Golomb rulers), namely sets of integers such that all pairwise sums of elements of the set are distinct [21].This observation was not made immediately by the respective research communities, however, which, in the meantime, had been working separately, producing different bodies of literature, and even duplicate results [7].
Golomb rulers have important applications in engineering, for example in radiofrequency allocation for avoiding third-order interference [1], in generating convolutional self-orthogonal codes [18], in the formation of optimal linear telescope arrays in radio-astronomy [2] etc., as well as an inherent mathematical interest.They owe their name to the studies of Prof. S. Golomb, who demonstrated an important application in graph labeling [13].Many different construction methods have been proposed, aiming, in particular, to the construction of Golomb rulers as densely populated with markings as possible.
A 2D object related to Golomb rulers is the Costas array, namely a square arrangement of dots and blanks such that there is exactly one dot per row and column (i.e. a permutation array), and such that no four dots form a parallelogram and no three dots lying on the same straight line are equidistant.Equivalently, all vectors between pairs of dots must be distinct.A Costas array has a 2D ideal thumbtack autocorrelation.In particular, any diagonal of a Costas array is a Golomb ruler.
In this paper, we revisit the problem of the efficient construction of Golomb rulers.After presenting the relevant definitions (Section 2), we collect all major known construction methods for Golomb rulers along with their proofs and some examples (Section 3), which are otherwise scattered in the literature and relatively hard to locate; we note, in particular, that one of this methods is equivalent to the Bose-Chowla method, and this equivalence reveals that Bose-Chowla constructed Golomb rulers are obtainable from the main diagonal of a symmetric subfamily of Golomb Costas arrays (Section 5).After discussing briefly optimal Golomb rulers (Section 4), we finally show that Golomb rulers can be (multiplicatively) composed to yield longer Golomb rulers (Section 6).
The aim of this paper is twofold: on the one hand, we review the existing construction methods for Golomb rulers, collecting them together along with their proofs, as some of the original papers are not easy to find; on the other hand, we show that Golomb rulers obtained from the Bose-Chowla construction can alternatively be obtained as the main diagonals of a special subfamily of symmetric Golomb Costas arrays.

Basics on Golomb rulers and Costas arrays
We begin with a formal definition of Golomb rulers; a very comprehensive source of information about them is A. Dimitromanolakis' diploma thesis [7].We use below the shorthand [n] for the set of integers {0, 1, . . ., n}, along with various obvious variations (such as [n] * = {1, . . ., n} etc.) If, in addition, there exists some f will be called a Golomb ruler modulo N , or simply a modular Golomb ruler, whenever N is clear from the context.Remark 1. Geometrically, the Golomb ruler can be interpreted as a sequence of dots (called the markings of the ruler) and blanks, so that all distances between pairs of dots are distinct; the positions of the dots in the sequence (which we will also be calling a Golomb ruler, as there is no danger of confusion) correspond to the range of f .Clearly the Golomb ruler property remains invariant under affine transformations and linear shifts: if f is a Golomb ruler, af (• − c) + b is also a Golomb ruler, for a ∈ Z * , b, c ∈ Z.This means, in particular, that we can alternatively normalize f so that f : The definition of the Golomb ruler's length above coincides with the usual definition of the length of a (physical) ruler.
Note that any modular Golomb ruler is also a Golomb ruler, and that any Golomb ruler is also a Golomb ruler modulo N for a sufficiently large N ; the definition is really interesting for small N , in particular N < 2n + 1.
Two important questions arise: 1. What is the maximal m possible for given n? 2. What is the minimal n possible for given m?
We will call a Golomb ruler optimally dense if and only if it exhibits the maximal m for a given n and optimally short if and only if it exhibits the minimal n for a given m.Optimally short Golomb rulers are referred to simply as optimal Golomb rulers in the literature, though one might argue that optimally dense Golomb rulers have an equal right to optimality.At any rate, for neither case do we have closed form answers, although several estimates exist: the simplest one is that a Golomb ruler of length n defines at most n possible distances, and, in order to have m points, the m 2 distances they define will need to be unique.It follows that This turns out to be a very generous upper bound: improved arguments show that m < √ n + O(n 1/4 ) [11] and even better that m < √ n + n 1/4 + 1 [16].Furthermore, the maximal m for a given n satisfies asymptotically m > √ n − O(n ∀i, j, k such that 1 ≤ i, j, i + k, j + k ≤ n : A permutation f corresponds to a permutation array A f = [a f i,j ] by setting the elements of the permutation to denote the positions of the (unique) 1 in the corresponding column of the array, counting from top to bottom: a f f (i),i = 1.It is customary to represent the 1s of a permutation array as "dots" and the 0s as "blanks".From now on the terms "array" and "permutation" will be used interchangeably, in view of this correspondence.
The Costas property is invariant under horizontal and vertical flips, as well as transpositions around the diagonals (and therefore also under rotations of the array by multiples of 90 o , which can be expressed as combinations of the previous two operations), hence a Costas array gives birth to an equivalence class that contains either eight Costas arrays, or four if the array happens to be symmetric.
There are two algebraic construction techniques for Costas arrays: the Welch construction [8,14,15], which we have no further use for in this work, and the Golomb construction, which we now state without proof, as it is relevant to the discussion below: Theorem 1 (Golomb construction G 2 (q, a, b)).Let q = p m , where p is a prime and m ∈ N * , and let a, b be primitive roots of the finite field F(q); the function f : [q − 2] * → [q − 2] * defined through the equation is a Costas permutation, which corresponds to a symmetric Costas array if and only if either a = b or q = r 2 , b = a r ; in the latter case, the resulting symmetric Costas array has r dots on its main diagonal.

Construction methods for Golomb rulers
Various algebraic methods exist for the construction of Golomb rulers, which appear scattered in the literature.For the benefit of the reader, we collect here the main construction methods used, along with their proofs, giving this section the character of a mini-tutorial (most methods, along with some proofs, appear in [7]).Note that Golomb rulers are not (in a sense about to be specified) well defined, and this has an impact on their construction methods: indeed, for a fixed length n, there exists a maximal number of markings m max (n) a Golomb ruler can have (which lies close to, and perhaps a little bit above, √ n), and, consequently, whenever m ≤ m max (n), a construction method for this m can be found.In particular, for small values of m (relative to m max (n)), many different methods can be found relatively effortlessly (the reader can possibly think of some for oneself).Compare this to the case of Costas arrays, where the number of dots present is regulated by the definition.
The classical construction methods of interest tend, as is expected, to produce asymptotically optimal families of Golomb rulers: such families are the most difficult to construct, the most appealing ones mathematically, and often the most useful ones in applications.Most (but not all) constructions follow the same principle: assuming f is to be shown to be a Golomb ruler, we form either of the equations f (x) ± f (y) = a, aiming to show that {x, y} is unique, e.g. by showing that x and y satisfy a polynomial equation of degree 2, or a 2 × 2 nonsingular system.
Let us now review these methods in detail.
Theorem 2. For every odd prime p, the sequence forms a Golomb ruler.
Proof.We need to demonstrate that the integers x, y that, for a given a ∈ N, satisfy (3) 2p(x + y) + (x 2 mod p) + (y 2 mod p) = a can be chosen in at most one way (within the specified range).Dividing throughout by 2p we get (4) x + y = a 2p := A, while taking (3) modulo p we obtain (5) But ( 4) and ( 5) imply that x + y and xy are known modulo p, whence they are uniquely determined as roots of the polynomial equation ( 6) which either has no root or two roots.Therefore, for those a for which roots exist, they are uniquely determined modulo p, and consequently in N due to the assumption that they lie in [p − 1].This completes the proof.
The approximate asymptotic length of such a Golomb ruler with p markings is 2p 2 , hence the method is √ 2-nearly optimal.
Theorem 3. Let p be prime, g a primitive root of F(p), and s relatively prime to p − 1.The following sequence forms a Golomb ruler.
Proof.This is a very clever construction based on the interplay between two different modulo operators.Consider the equation Applying modulo p throughout we get (9) g x + g y ≡ −a mod p, while applying modulo p − 1 throughout we get (10) Taken together, ( 9) and (10) imply that {g x , g y } is the set of roots of a polynomial equation of degree 2, hence it is determined in at most one way.This completes the proof.
These rulers are of length (at most) p(p − 1) − 1 = p 2 − p − 1 and have p − 1 markings, hence they are asymptotically optimal.This method was first suggested by I. Rusza [19], who studied the special case where s = 1; B. Lindström subsequently generalized it to arbitrary s such that (s, p − 1) = 1 [16].Theorem 4. Let q = p n be a power of a prime and g a primitive root in F(q 2 ).
Then the q integers in have distinct pairwise differences modulo q 2 − 1.
In addition, the set of q(q − 1) pairwise differences in S, reduced modulo q 2 − 1, equals the set of all nonzero integers less than q 2 − 1 which are not divisible by q + 1.
Assuming u 1 +u 2 −u 3 −u 4 = 0, it follows that g ∈ F(q), which is impossible as g is a primitive root of F(q 2 ).Therefore, u 1 + u 2 = u 3 + u 4 , whence u 3 u 4 = u 1 u 2 : in other words, the sets {u 1 , u 2 } and {u 3 , u 4 } satisfy each the same polynomial equation of degree 2, hence they must be identical.This, in turn, implies that the sets x 1 , x 2 and x 3 , x 4 must be identical.Furthermore, using the same notation, would follow that g ∈ F(q), a contradiction.But it is easy to see that g i ∈ F(q) ⇔ q + 1|i: indeed, letting i = (q + 1)j, j ∈ [q − 2], we observe that all these powers are different (as g is a primitive root of F(q 2 ) in the first place), and, g i q−1 = g j(q−1)(q+1) = g q 2 −1 j = 1 j = 1, whence g i ∈ F(q).Since F(q) has q − 1 nonzero elements in total, this proves our claim.It follows that q + 1 cannot divide x 1 − x 2 and this completes the proof.
These rulers are asymptotically optimal: they have q markings and their length is (at most) q 2 − 3.
Example 3. Let q = 4; the elements of the field of 16 elements can be represented as polynomials in x, whose addition and multiplication take place modulo 2 and a primitive polynomial in x of degree 4, say x 4 + x + 1.We may choose g = x to be our primitive root, in which case consecutive powers of x are given by the following table: x 3 4 x + 1 5 x 2 + x 6 x 3 + x 2 7 x 3 + x + 1 8 x 2 + 1 9 x 3 + x 10 x 2 + x + 1 11 x 3 + x 2 + 1 14 x 3 + 1 F( 4) is a subfield of F( 16), and has g q+1 = x 5 as its primitive root.We then need to find the set of exponents i such that whence i ∈ {1, 2, 4, 8}.Therefore the sequence 1, 2, 4, 8, or, equivalently, 0, 1, 3, 7, is a Golomb ruler of four markings and length 7.
Remark 2. This method is often referred to as the affine plane construction of Golomb rulers in the literature.
3.4.Singer construction [22].Singer's result is actually one of the cornerstones of projective geometry.We present it trying to avoid, whenever possible, the use of geometric terminology.
Theorem 5. Let q = p n be a power of a prime.Then there exist q + 1 integers {d i : i = 0, . . ., q} such that the q 2 + q differences d i − d j , i, j = 0, . . ., q, i = j, are all distinct; in particular, they coincide with the nonzero integers modulo q 2 + q + 1 when reduced modulo q 2 + q + 1.
Proof.Let g be primitive root of F(q 3 ): as such, it satisfies a polynomial equation of degree 3, say (13) We may then set (14) , where a direct calculation shows that, for i ≥ 0, 3 ) = (0, 0, 1).In other words, we can set We define 2 families of sets on the exponents i ∈ [q 3 − 2] of the elements of F(q 3 ) * : ]; in other words, the mutually disjoint S k form the partition resulting from considering two elements of F(q 3 ) * equivalent if their ratio belongs in F(q) * (note that h = g q 2 +q+1 is a primitive root of F(q), since h q−1 = 1 and q − 1 is the smallest integer with this property).We will refer to these sets as equivalence classes.
Second, consider F(q 3 ) as a 3D vector space over F(q); we can represent its elements as F(q 3 ) = {x = (x 1 , x 2 , x 3 ) : x 1 , x 2 , x 3 ∈ F(q)}, where x are the expansion coefficients of an element over the basis {1, g, g 2 }, as given by ( 14); choosing u ∈ F(q 3 ) * , we consider the set 0}.These sets are not mutually disjoint and, what's more, they are not even distinct.In order to count the number of distinct T ′ u , we determine the number of non-equivalent u by distinguishing cases: if u 1 = 0, ( 17) and there are q 2 possible choices; if u 1 = 0, u 2 = 0, (18) and there are q possible choices; and if and there is one possible choice; hence there are q 2 + q + 1 distinct sets T ′ u , corresponding to u(k) = g k , k ∈ [q 2 + q], which we relabel T k .How many elements does each T k have?Assuming x 1 = 0, (20) and there are q(q − 1) possible solutions; assuming and there are (q − 1) possible solutions; and assuming x 1 = x 2 = 0, it follows that x 3 = 0, which we do not allow; hence there are (q − 1)(q + 1) solutions, which correspond to q + 1 equivalence classes S d , and therefore to q + 1 indices D = {d i : i ∈ [q]}.Note further that any two T k and T l always have a common equivalence class; but if they have two equivalence classes in common, it follows that T k = T l .
Fix now u ∈ F(q 3 ) * , and consider the sets C i := (D + i) mod (q 2 + q + 1), i ∈ [q 2 + q]; the equality u T x = 0 = u T A −1 Ax = [(A −1 ) T u] T • Ax shows that C i = T k for some k iff C i+1 = T l , for some l, while the fact that g is a primitive root, along with the definition of S k , implies that all C i , i ∈ [q 2 + q] are different.
Retaining the notation above, focus on the sets C −di , i ∈ [q]: they all contain 0, so they have no other index in common, whence the union (22) q i=0 C −di \{0} = {d i − d j mod (q 2 + q + 1) : i, j ∈ [q], i = j} contains q(q + 1) elements, all distinct.Hence these numbers must also be distinct without the application of the modulo operator, and this finishes the proof.These rulers are asymptotically optimal: they have q + 1 markings and their length is at most q 2 + q + 1.
Example 4. It is unfortunately impractical to show here all the steps involved in the Singer construction of a Golomb ruler: it is necessary to construct F(q 3 ), which is too big even for moderate values of q.A Singer constructed Golomb ruler for q = 16, hence with q + 1 = 17 markings, is the sequence 0 5 15 34 35 42 73 75 86 89 98 134 151 155 177 183 201.The ruler's length is 201, and the reader can verify directly that the 17 • 16 = 272 differences between all pairs in the sequence, taken modulo q 2 + q + 1 = 273, span the entire set [272] * , as guaranteed by Theorem 5.
Remark 3.This method is often referred to as the projective plane construction of Golomb rulers in the literature.[10,9].While studying the symmetry of Costas arrays, one of the present authors noticed that a particular subfamily of symmetric Golomb Costas arrays yielded a densely populated main diagonal [10,9].Theorem 6.Let q = p n be a power of a prime and g a primitive root in F(q 2 ).Then the set

Symmetric Golomb Costas arrays construction
contains exactly q integers which have distinct pairwise differences modulo q 2 − 1.
Proof.The roots of ( 23) lie on the main diagonal of a Golomb Costas array (constructed using the primitive roots g and g q of F(q 2 ), the latter being a primitive root because (q, q 2 − 1) = 1), hence they form a Golomb ruler.Setting x = g i , ( 23) becomes (24) and we just need to demonstrate that this equation has exactly q roots.To show this, we first observe that T = x q + x is a linear map on the vector space F(q 2 ) over the field F(q): indeed, letting x, y ∈ F(q 2 ), a, b ∈ F(q), (25) T (ax + by) = (ax + by) q + (ax + by) = a q x q + b q y q + ax + by = = a(x q + x) + b(y q + y) = aT (x) + bT (y), and the claim is proved.It follows that both the kernel and the image of T are subspaces of F(q 2 ).Assuming z ∈ Ker[T ], we get z q = −z.

Hence, in both cases, dim(Ker
In particular, (24) either has q roots or no root; it is enough, then, to show that it has a root.
These rulers are asymptotically optimal: they have q markings and their length is (at most) q 2 − 3.
3.6.Dimitromanolakis construction [7].The previous constructions work only when the number of markings is close to a (power of a) prime.The following construction [7] works always, but, unfortunately, is far from optimal; even in the original publication [7] it was only proposed as a toy example.
Theorem 7.For any n ∈ N * , and for a fixed c ∈ {1, 2}, the sequence forms a Golomb ruler.
Proof.The proof for c = 2 is simple: start with the equation dividing throughout by 2n, and given that 0 ≤ x + y 2n < 1, we get (28) Substituting (28) back in (27), we get and from (29), (28): (30), (29) show that {x, y} are the two roots of a polynomial of degree 2, hence determined in at most one way.
The proof for c = 1 is slightly more involved.We will now work with differences, and consider the equation and by ( 31) and (32) we obtain Dividing (32) by ( 33), and finally (33) and (34) form a system of two equations and two unknowns that uniquely define x and y.This completes the proof.
This ruler has n markings and its length is asymptotically cn 3 , hence it is far from optimal.

Optimal Golomb rulers
In the absence of a theoretical result ascertaining the maximal number of markings for a Golomb ruler of a given length, or the minimal possible length for a Golomb ruler with a fixed number of markings, optimal Golomb rulers can only be discovered computationally, through exhaustive search.Actually, a better way to phrase this is that the only way to confirm the fact that a certain Golomb ruler is optimal is through exhaustive search: this is because, on many occasions, optimal Golomb rulers are actually constructed by the two construction methods based on finite fields (either Bose-Chowla or Singer).
There are excellent resources on the web regarding optimal Golomb rulers, such as Wikipedia [23] or J. B. Shearer's page [20].The former is more recently updated and contains optimal Golomb rulers for 24 markings or less (and possibly 25), while the latter also records the origins of the optimal Golomb rulers found: focusing on optimal Golomb rulers of more than 10 markings, we learn, in particular, that those for 11,12,14,18,19,20,21,23, and 24 markings are obtained by the Singer construction (possibly by truncating the final marking), those for 17 and 22 markings by the Bose-Chowla construction, while only those for 13, 15, and 16 markings were new rulers found by computer search.If the candidate optimal Golomb ruler with 25 markings given in [23] is confirmed, it will also be Singerconstructed.

5.
A novel approach to the Bose-Chowla construction Turning our attention back to Theorem 4, we can reformulate (11) as where the last inference is not obvious and requires distinguishing the two cases of even or odd characteristic, and verifying it holds true for both.Comparing this to (23), we see the expressions are similar, but not identical.Are they equivalent somehow?Can they be derived as special cases of a more general construction method?The answers are provided by the two theorems below: Theorem 8. Let q = p n be a power of a prime, g a primitive root in F(q 2 ), h ∈ F(q 2 )\F(q), and a ∈ F(q 2 ) * .Then the set has q elements, is a Golomb ruler modulo q 2 − 1, and, in fact, a cyclic shift of the Bose-Chowla construction (Theorem 4).
Proof.To begin with, S a,h clearly has q distinct elements, since g is a primitive root and a = 0. Furthermore, it represents a Golomb ruler: to see this, let Assuming u 1 + u 2 − u 3 − u 4 = 0, we obtain that h ∈ F(q), a contradiction; hence, u 1 + u 2 = u 3 + u 4 , which also implies through (37) that u 1 u 2 = u 3 u 4 .It follows that {u 1 , u 2 }, {u 3 , u 4 } have both the same sum s and the same product r, hence they are obtainable as pairs of roots of the same polynomial of degree 2 over F(q), namely x 2 − sx + r = 0, which either has two roots or no roots, hence {u 1 , u 2 } = {u 3 , u 4 }.This, in turn, implies that {i 1 , i 2 } = {i 3 , i 4 }.How many different sets S a,h are there?The key to count them is the observation that S a,h = S ta,th+h ′ for h ′ ∈ F(q) and t ∈ F(q) * .There are q 2 − q possible values for h, namely the set F(q 2 )\F(q), while the (multi)set A h = {th+h ′ : t ∈ F(q) * , h ′ ∈ F(q)} also contains q(q − 1) = q 2 − q entries, possibly not distinct.We show now that A h is a set, namely that its elements are distinct: indeed, letting t 1 , t 2 ∈ F(q) * and h ′ 1 , h ′ 2 ∈ F(q), so that which is a contradiction; hence t 1 = t 2 , and consequently h ′ 1 = h ′ 2 as well.This proves our claim.Further, since A h ∩ F(q) = ∅ ⇒ h ∈ F(q), a contradiction, it follows that A h = F(q 2 )\F(q), which coincides with the possible range of h: in other words, for any two possible values h 1 and h 2 of h, we can find t and h ′ such that h Consequently, choosing h 2 = −g, we see that the family of sets {S a,h : h ∈ F(q 2 )\F(q), a ∈ F(q 2 ) * } coincides with the family of sets {S a,−g : a ∈ F(q 2 ) * }.But S a,−g is just a cyclic shift of S 1,−g modulo q 2 − 1, and the latter is the Bose-Chowla construction (see Theorem 4).This completes the proof. of A are sparsely distributed in N, as a result of which the difference a − m grows without bound.6.2.A composition rule for Golomb rulers.The result below shows how we can combine two Golomb rulers with m 1 and m 2 markings, respectively, to obtain a new Golomb ruler with m 1 m 2 markings.Therefore, we can factorize m = a 1 a 2 . . .a l , a i ∈ A, i ∈ [l] * , which is always possible as A contains powers of primes, preferably choosing the factorization with the fewest factors, construct the corresponding l Golomb rulers using the asymptotically optimal methods of Section 3, and compose them to obtain the desired ruler.
Proof.Let us consider the equation: Taking it modulo N i , i ∈ [l] * , we obtain the equations (42) The modular Golomb ruler property of each f i ensures that each of the equations above has at most one solution, hence the original equation ( 41) has at most one solution {x 1 , . . ., x l , y 1 , . . ., y l } for a given a.In particular, for a = 0 we obtain x i = y i , i ∈ [l] * , hence S has indeed m distinct elements, ranging from 0 to n.This completes the proof.
Example 7. Assume we wish to construct a reasonably dense Golomb ruler with 187 markings.We factorize 187 = 11 • 17, and we can apply e.g. the Bose-Chowla construction to obtain two modular Golomb rulers of lengths at most 11 2 − 3 = 118 and 17 2 − 3 = 286, respectively.Then we can compose them to obtain a Golomb ruler of 187 markings and of length at most 120 • 286 + 118 • 288 = 68304.

Summary and conclusion
In this work we have collected together the main construction methods for Golomb rulers published in the literature, along with their proofs and several examples.We saw that three methods (Bose-Chowla, Rusza-Lindsröm, Singer) are asymptotically optimal, one (Erdös-Turan) is √ 2-nearly optimal, and one (Dimitromanolakis) is severely suboptimal and intended as a toy example only.We also discussed briefly optimal Golomb rulers, and we observed that the two methods that make use of the structure of finite fields (Bose-Chowla, Singer) very frequently produce optimal Golomb rulers.
A third construction method based on finite fields was proposed in the mathematical literature, whereby asymptotically dense Golomb rulers were obtained by the main diagonals of a special subfamily of symmetric Golomb rulers.We showed here that this method actually produces cyclic shifts of the Bose-Chowla construction, hence Bose-Chowla constructed Golomb rulers are obtainable as the main diagonals of Golomb Costas arrays.This observation links asymptotically optimal Golomb rulers to Costas arrays.
The disadvantage of these construction methods is that they work only for a number of markings that is either a power of a prime, 1 plus the power of a prime, or a prime minus 1.To obtain Golomb rulers for a different number of markings, one possibility is to construct a ruler with more markings using one of the methods and truncate it.Alternatively, we saw that two Golomb rulers can be composed to yield a longer Golomb ruler whose number of markings is the product of the numbers of markings of the two constituent rulers.