Module InferModules__TransferFunctions

Transfer functions that push abstract states across instructions. A typical client should implement the Make signature to allow the transfer functions to be used with any kind of CFG.

module type S = sig ... end
module type SIL = sig ... end
module type HIL = sig ... end
module type DisjunctiveConfig = sig ... end
module type DisjReady = sig ... end
module MakeDisjunctive : functor (TransferFunctions : DisjReady) -> functor (DConfig : DisjunctiveConfig) -> sig ... end

In the disjunctive interpreter, the domain is a set of abstract states representing a disjunction between these states. The transfer functions are executed on each state in the disjunct independently. The join on the disjunctive state is governed by the policy described in DConfig.