README.md
# Talán
[![test](https://github.com/preciz/talan/actions/workflows/test.yml/badge.svg)](https://github.com/preciz/talan/actions/workflows/test.yml)
Probabilistic data structures in Elixir:
* Bloom filter for membership estimation
* Counting bloom filter for membership & cardinality estimation with delete support
* Linear probabilistic counter for cardinality estimation
Documentation can be found at [https://hexdocs.pm/talan](https://hexdocs.pm/talan).
Talán is a Hungarian adverb meaning: maybe, perhaps, probably.
## Installation
Add `talan` to your list of dependencies in `mix.exs`:
**Note**: it requires OTP-21.2.1 or later.
```elixir
def deps do
[
{:talan, "~> 0.2.0"}
]
end
```
## Usage
```elixir
alias Talan.BloomFilter
bloom_filter = BloomFilter.new(1000)
bloom_filter |> BloomFilter.put("Barna")
bloom_filter |> BloomFilter.member?("Barna")
true
bloom_filter |> BloomFilter.member?("Kovacs")
false
```
## License
Talán is [MIT licensed](LICENSE).