For a natural number $x$ (excluding zero), what method can be used to determine the smallest list of natural number components such that:
- The sum of all components is $x$
- For any natural number $a$ such that $1\leq a <x$, there exists a sub-list of those components that sum to $a$, where no component can be used more than once (unless that component appears more than once in the list)
For example, if $x$ is 63, we'd determine the components {1, 2, 4, 8, 16, 32}.
If $x$ is 51, we'd determine the components {1, 2, 3, 6, 13, 26}.
If $x$ is 2, we'd determine the components {1, 1}.
(This is useful for "range proofs" in cryptography, where you need to prove that a secret number is within a certain range by proving the secret must be the sum of a sub-list of specified components. If there is a deterministic method to find such a list of components for some value of $x$, then both prover and verifier can determine the list independently, rather than the prover having to transmit the list to the verifier).