Definitions:
A sparse ruler, or simply a ruler, is a strict increasing finite sequence of nonnegative integers starting from 0, called marks.
A ruler is complete if the set of all distances it can measure is {1,2,3,...,k} for some integer k > 0.
A ruler is perfect if it is complete, and no complete ruler with the same length possesses fewer marks.
(The definitions are taken from OEIS A103294.)
Example:
The perfect rulers of length 5 are
[0, 3, 4, 5], [0, 2, 4, 5], [0, 1, 3, 5], [0, 1, 2, 5].
To simplify the notation, we will write them as binary strings:
100111, 101011, 110101, 111001.
The mapping should be clear: set the bit in position k of the 0-based string, read from left to right, if k is a mark on the ruler.
As you might have guessed, we want to create a list of all perfect rulers with a given length of n. The list should be an orderly one. The required order is given by interpreting the binary strings as integers and then taking the natural order.
In our example, for n = 5, the decimal integer representation of the rulers is [39, 43, 53, 57]. A second example of the three representations described above is, for n = 6:
[[0, 2, 5, 6], [0, 1, 4, 6]]
[1010011, 1100101]
[83, 101]
Output:
The program's output should be only the binary strings, as a comma-separated list, or by line-by-line output, whichever seems suitable, for any given positive integer n. So for n = 6 this might be:
1010011
1100101
Perfect rulers are the gold nuggets among the binary strings. Find them!
This is code-golf, so each language's shortest code in bytes wins.