equivalence

Maintaining an equivalence relation implemented as union-find using STT.

https://github.com/pa-ba/equivalence

Version on this page:0.3.3
LTS Haskell 22.43:0.4.1
Stackage Nightly 2024-11-30:0.4.1
Latest on Hackage:0.4.1

See all snapshots equivalence appears in

BSD-3-Clause licensed by Patrick Bahr
Maintained by [email protected]
This version can be pinned in stack with:equivalence-0.3.3@sha256:e542778605f7a0d557033739dffaa59431691728e8a666d9ecf06fe725a83c73,1621

Module documentation for 0.3.3

This is an implementation of Tarjan's Union-Find algorithm (Robert E. Tarjan. "Efficiency of a Good But Not Linear Set Union Algorithm", JACM 22(2), 1975) in order to maintain an equivalence relation. This implementation is a port of the union-find package using the ST monad transformer (instead of the IO monad).

Changes

0.3.2
-----
* add Applicative constraints for backwards compatibility with GHC 7.8

0.3.1
-----
* use transformers-compat for backwards compatibility with older versions of transformers

0.3.0.1
-------
* add CHANGES.txt to .cabal file

0.3
---
* add suport for Control.Monad.Except (thus the new dependency constraint 'mtl >= 2.2.1')