A library for computing Kleene closures of matrices.
The simplest way is using Cabal which is part of the Haskell Platform.
If you are using git, then simply clone the project into a folder of your choice. Otherwise download the zipped version and unpack it into a folder of your choice.
Assuming, all project files are located in ~/functionalKleene
you can proceed as follows.
bash> cd ~/functionalKleene
bash> cabal update
bash> cabal install
The project is now installed and can be either used directly, e.g.:
bash> ghci
ghci> :m FunctionalKleene
FunctionalKleene>
or imported into an own Haskell module via import FunctionalKleene
.
You can browse the documentation online:
- FunctionalKleene is the main file. It contains the algorithms.
- RandomMatrix is an auxiliary file that takes care of the creation of random matrices.
- KleeneAlgebra is another auxiliary file that contains the Kleene algebra type class and some common instances.
- DolanClosure is a file that contains the star closure implementation by Stephen Dolan from the paper "Fun with Semirings" (ICFP 2013)
Alternatively, you can view these files locally as .lhs
files directly or as .md
files
All files are located in the /src
folder.