The Bloom filter data structure requires a set of hashing functions. The Murmur3 family is a great fit, as it contains the
seed parameter to easily create a variety of different functions (plus it has good distribution of values and adequate speed).
Is there any particular method of choosing the
seed values for the Bloom filter application? By selecting them randomly, I give up the deterministic nature of the algorithm and hand-picking these values seems a little bit too brave. Is it known, whether two
s1 != s2, yield the same function (borrowing a linear algebra term: they would be linearly dependent) ?
Limiting the hash domain
The Murmur3 hash is a 32-bit value. Since the Bloom filter might not need all 32 bits, is it still OK with respect to the uniformity to just apply the modulo function to this value?