Frama-C:
Plug-ins:
Libraries:

Frama-C API - Strategy

Strategies Entry Points

Term & Predicate Selection

val occurs_x : Lang.F.var -> Lang.F.term -> bool
val occurs_y : Lang.F.var -> Lang.F.pred -> bool
val occurs_e : Lang.F.term -> Lang.F.term -> bool
val occurs_p : Lang.F.term -> Lang.F.pred -> bool
val occurs_q : Lang.F.pred -> Lang.F.pred -> bool

Lookup the first occurrence of term in the sequent and returns the associated selection. Returns Empty is not found. Goal is lookup first.

Same as select_e but for a predicate.

Strategy

type argument =
  1. | ARG : 'a Tactical.field * 'a -> argument
type strategy = {
  1. priority : float;
  2. tactical : Tactical.tactical;
  3. selection : Tactical.selection;
  4. arguments : argument list;
}
class pool : object ... end
class type heuristic = object ... end
val register : heuristic -> unit
val export : heuristic -> heuristic
val lookup : id:string -> heuristic
val iter : (heuristic -> unit) -> unit

Factory

type t = strategy
val arg : 'a Tactical.field -> 'a -> argument
val make : Tactical.tactical -> ?priority:float -> ?arguments:argument list -> Tactical.selection -> strategy