Template Class RibbonFilter

Nested Relationships

Nested Types

Class Documentation

template<class T, class F = std::uint8_t, class H = DefaultHash<T>>
class RibbonFilter

a static filter of the keys of type T with results of type F, one equation of 64 coefficients per key

Public Functions

explicit RibbonFilter(const std::vector<T> &keys, std::uint64_t seed = 1, H h = H())

the filter of the keys, which may repeat

Pre:

fewer than 2^32 keys

Post:

every key is maybe there (an audit)

bool maybe(const T &x) const

true for every key of the set, and for any other with probability about 2^-r, r the bits of F

std::size_t size(void) const

the keys of the build, with their repetitions

bool empty(void) const
std::size_t bits(void) const

the bits of the solution, padding included

std::size_t rows(void) const

the rows m of the solution

std::size_t trials(void) const

the seeds drawn by the build