`module Avl_closure: ``sig end`

Transitive closure of a directed graph.

This module allows computing the transitive closure of a directed
graph. Given a graph *G = (X, E)*, the strict transitive closure
of *G* is the graph *G' = (X, E')* such that there is an edge
from *x* to *y* in *G'* if and only if there is a non-empty
path from *x* to *y* in *G*.

`module type GRAPH = ``sig end`

The client must provide an implementation of graph which
fullfills the signature

`GRAPH`

.
`module Make: ``functor (X : GRAPH) -> sig end`