Bez popisu

dstromberg e0c264419a Made the license explicit před 12 roky
Makefile 94cf92eb03 Initial checkin před 12 roky
README e0c264419a Made the license explicit před 12 roky
bloom_filter_mod.py 6787bdb6ea /usr/bin/pep8 got more exuberant před 12 roky
count-bits 5fb9908837 Larger blocks. Give a percentage of set/clear před 13 roky
gen-performance-graph 94cf92eb03 Initial checkin před 12 roky
setup.py ca80ff76e3 Version bump před 12 roky
test-bloom-filter 0ab3176133 Tiny exponent for performance test max před 12 roky
this-pylint.old ad5e7b213a New this-pylint, now from external před 13 roky

README


This bloom filter implementation:
1) Has a constructor that accepts a maximum comfortable number of members and maximum appropriate error (false positive) rate, and
derives the fiddly bits from that; most bloom filter modules ask the enduser to specify the fiddly bits themselves.
2) Has a nice test suite, including checks for error rate.
3) Is in pure Python that'll run on CPython 2.x, CPython 3.x, PyPy or Jython.
4) Has a pair of simple, fast hash functions that give a good error rate - they're better than many of the alternatives,
They're not Murmur or Jenkins, but the tests strongly suggest that they're working well.
5) Passes pylint and pep8.
6) Supports adding elements, testing for membership, and'ing sets and or'ing sets.

The code is derived from http://code.activestate.com/recipes/577686-bloom-filter/ and inherits that code's license (MIT).

For more about Bloom Filters:
http://en.wikipedia.org/wiki/Bloom_filter
http://spyced.blogspot.com/2009/01/all-you-ever-wanted-to-know-about.html