Implementation of Maximal Sharing

Installation

The Haskell Platform

The implementation is in Haskell, so the Haskell Platform has to be installed.

maxsharing

Then maxsharing-0.9.tar.gz can be installed. Unpack it, and run cabal install in the created directory from a shell.

Usage

After the installation you will find an executable maxsharing in the directory ~/.cabal/bin/. Execute it in a terminal with a file as an argument that contains a lambda-letrec-term. It will then produce some output on the terminal, containing amongst other things the maximally shared form of the term. If you have Graphviz installed and the dot command is available, the DFA of the original term and its minimised form are generated and written to a PDF.