Ainsi, les filtres de Bloom sont plutôt sympas - ce sont des ensembles qui prennent en charge la vérification d’appartenance sans faux négatifs, mais avec une petite chance d’un faux positif. Récemment cependant, je voulais un "filtre de Bloom" qui garantisse le contraire: pas de faux positifs, mais potentiellement de faux négatifs.
Ma motivation est simple: étant donné le grand nombre d'éléments à traiter (avec les doublons), nous aimerions éviter de traiter des éléments que nous avons vus auparavant. Cela ne fait pas de mal de traiter une copie, c'est juste une perte de temps. Pourtant, si nous négligions de traiter un élément, ce serait catastrophique. Avec un "filtre Bloom inverse", vous pouvez stocker les éléments vus avec un encombrement réduit, et éviter de traiter les doublons avec une probabilité élevée en testant leur appartenance à l'ensemble.
Pourtant, je n'arrive pas à trouver quoi que ce soit de ce genre. Les filtres les plus proches que j'ai trouvés sont les " filtres de Bloom retouchés ", qui permettent d'échanger des faux positifs sélectionnés contre un taux de faux négatif plus élevé. Je ne sais pas comment leur structure de données fonctionne quand on veut supprimer tous les faux positifs, cependant.
Quelqu'un a vu quelque chose comme ça? :)