I want a sequence of [itex]n[/itex] bits without all [itex]1[/itex]'s in the output. What is the minimum number of bits [itex]k[/itex] given [itex]n[/itex] that can be used in any linear or non-linear invertible mapping that will produce such a sequence at output. For example, consider [itex]n=3[/itex]. I want to create a mapping that has all [itex]2^3=8[/itex] minus [itex]111[/itex] sequence. What is the minimum number of bits [itex]k[/itex] required that will produce such a mapping? In this example, for a linear mapping, I can see that [itex]k=2[/itex]. But with [itex]k=2[/itex], I am loosing [itex]3[/itex] sequences at the output and the overhead of this mapping [itex]k/n[/itex] is huge. Is there any other method or non-linear mapping that does this job with an overhead of [itex]k/n>2/3[/itex]. I need a specific answer to [itex]n=4[/itex] or general answer with any [itex]n[/itex] (reasonable range for me is [itex]n=2[/itex] to [itex]n=16[/itex]. Please guide me to any keywords that may help in my search for the answer.