user119698: I'm trying to implement a seeded murmur3 hash using the bip37 standard for use in bloom filters.
In hash.cpp in bitcoin core, the seed is an unsigned int value. However my understanding of bip37 to determine a seed value is defined with the formula
i * BIP37 Constant + Tweak
where i iterates the number of functions.
Example, If i = 4, and Tweak = 100, this would lead to an overflow since it cannot be represented in a uint32?
I would be grateful for help, and to know if I need to use a 64-bit int for my seed.
Thanks.

user208: Murmur3 is a 32-bit hash function. All internal variables, as well as the seed and the output, are unsigned 32-bit integers. uint32_t arithmetic is modulo 232.
Also note that BIP37 is all but dead.

119698: <p>I'm trying to implement a seeded murmur3 hash using the bip37 standard for use in bloom filters.</p>
<p>In hash.cpp in bitcoin core, the seed is an unsigned int value. However my understanding of bip37 to determine a seed value is defined with the formula
<code>i * BIP37 Constant + Tweak</code>
where i iterates the number of functions.</p>
<p>Example, If i = 4, and Tweak = 100, this would lead to an overflow since it cannot be represented in a uint32?</p>
<p>I would be grateful for help, and to know if I need to use a 64-bit int for my seed.
Thanks.</p>
 208: <p>Murmur3 is a 32-bit hash function. All internal variables, as well as the seed and the output, are unsigned 32-bit integers. <code>uint32_t</code> arithmetic is modulo 2<sup>32</sup>.</p>
<p>Also note that BIP37 is all but dead.</p>
