Module DataFlow.Run

Run requires a type variable that is equipped with an implementation of imperative maps, a type property that is equipped with leq and join functions, and a data flow graph whose edges describe the propagation of properties. It performs a forward data flow analysis and returns its result.

The function solution has type variable -> property option. A reachable variable is mapped to Some _; an unreachable one is mapped to None.

Parameters

module M : sig ... end
module P : sig ... end
module G : sig ... end

Signature

type variable = G.variable

The type of variables.

type property = P.property option

The type of properties.

val solution : variable -> property

The least solution of the system of monotone equations.