On Sun, Apr 2, 2017 at 1:43 PM, praxeology_guy via bitcoin-dev < bitcoin-dev@lists.linuxfoundation.org> wrote: > TL;DR: using spentness bits scales linearly... vs swapping digest leafs > with empties can scale with logorithmically increasing storage > requirements. So if you are using a 32 byte hash and spentness bits, you > are pretty much limited to only being able to prune 8 to 12 layers. This > corresponds to an MMR proof length of 512 to 768 bytes. > Yes the point of the txo bitfield is that the constant factors are so good that it's entirely under control. Making the memory commitments smaller requires that the proofs be kept up to date and increases CPU requirements and proof size. It would be entirely reasonable to make an MMRs of the bitfield or the insertion index data structure but they aren't needed immediately if ever. For the insertion ordering structure it's reasonable to require full nodes to cache the top bunch of layers to make the proofs smaller, but a very expedient approximation of that is to make them simply remember a root per block for all the insertions contained therein, and have full nodes remember all of those.