Module Flow

module Flow: sig .. end
Algorithms on flows

The following flow algorithms only apply to networks, that are directed graphs together with a source (a 0 in-degree vertex) and a terminal (a 0 out-degree vertex).



Maximum flow algorithms


module type FLOW = sig .. end
Signature for edges' flow.

Goldberg maximal flow algorithm


module type G_GOLDBERG = sig .. end
Minimal graph signature for Goldberg.
module Goldberg: 
functor (G : G_GOLDBERG) ->
functor (F : FLOW with type label = G.E.label) -> sig .. end

Ford-Fulkerson maximal flow algorithm


module type G_FORD_FULKERSON = sig .. end
Minimal digraph signature for Ford-Fulkerson.
module Ford_Fulkerson: 
functor (G : G_FORD_FULKERSON) ->
functor (F : FLOW with type label = G.E.label) -> sig .. end