Module Sig.Backward_Arity

Standard arities for backward transfer functions (used to refined the arguments from information on the result values). These take the result value 'r as argument and return a new-improved value for each argument. They return None when no improvement is possible for that argument.

We generally don't include backward function for symbols of arity 0.

type 'r ar0 = 'r -> unit
type ('a, 'r) ar1 = 'a -> 'r -> 'a option
type ('a, 'b, 'r) ar2 = 'a -> 'b -> 'r -> 'a option * 'b option
type ('a, 'b, 'c, 'r) ar3 = 'a -> 'b -> 'c -> 'r -> 'a option * 'b option * 'c option