Frama-C API - Strategy
Strategies Entry Points
Term & Predicate Selection
val occurs_x : Lang.F.var -> Lang.F.term -> boolval occurs_y : Lang.F.var -> Lang.F.pred -> boolval occurs_e : Lang.F.term -> Lang.F.term -> boolval occurs_p : Lang.F.term -> Lang.F.pred -> boolval occurs_q : Lang.F.pred -> Lang.F.pred -> boolval select_e : Conditions.sequent -> Lang.F.term -> Tactical.selectionLookup the first occurrence of term in the sequent and returns the associated selection. Returns Empty is not found. Goal is lookup first.
val select_p : Conditions.sequent -> Lang.F.pred -> Tactical.selectionSame as select_e but for a predicate.
Strategy
type strategy = {priority : float;tactical : Tactical.tactical;selection : Tactical.selection;arguments : argument list;
}class pool : object ... endclass type heuristic = object ... endval register : heuristic -> unitval lookup : id:string -> heuristicval iter : (heuristic -> unit) -> unitFactory
type t = strategyval arg : 'a Tactical.field -> 'a -> argumentval make : Tactical.tactical -> ?priority:float -> ?arguments:argument list -> Tactical.selection -> strategy