Ribbon filter: Practically smaller than Bloom and Xor
I have always been fascinated by our ability to make these sorts of tradeoffs, but I also worry that making this tradeoff in the first place is an intermediate compromise taken in favor of a more fundamental rework of a problem space.<p>If you find yourself rolling dice to figure out if something is in a set or not, you may want to step back and look at how you track membership and identity things.<p>Determinism (testability) is such a wonderful thing. Sure, you can make these filters <i>appear</i> deterministic in controlled setting (i.e. a recorded log of system inputs), but there's no way you could tell me how the execution would flow in a real world situation with live data wherein you cannot anticipate future events.