Frama-C API - VCS
Provers and Proof Obligations Results
Verification Condition Status
Prover
type prover =
| Why3 of Why3Provers.t
(*Prover via WHY
*)| Qed
(*Qed Solver
*)| Tactical
(*Interactive Prover
*)
val provers : unit -> prover list
Mainstream installed provers
val name_of_prover : prover -> string
val title_of_prover : ?version:bool -> prover -> string
val filename_for_prover : prover -> string
val title_of_mode : mode -> string
val parse_mode : string -> mode
val parse_prover : string -> prover option
For the command line
val prover_of_name : ?fallback:bool -> string -> prover option
For scripts
val pp_prover : Stdlib.Format.formatter -> prover -> unit
val pp_mode : Stdlib.Format.formatter -> mode -> unit
Config
None
means current WP option default. Some 0
means prover default.
val current : unit -> config
Current parameters
val default : config
all None
val get_timeout : ?kf:Frama_c_kernel.Kernel_function.t -> smoke:bool -> config -> float
0.0 means no-timeout
val get_stepout : config -> int
0 means no-stepout
val get_memlimit : config -> int
0 means no-memlimit
Results
val no_result : result
val valid : result
val unknown : result
val stepout : int -> result
val timeout : float -> result
val computing : (unit -> unit) -> result
val failed : ?pos:Stdlib.Lexing.position -> string -> result
val kfailed : ?pos:Stdlib.Lexing.position -> ('a, Stdlib.Format.formatter, unit, result) Stdlib.format4 -> 'a
val is_auto : prover -> bool
val has_counter_examples : prover -> bool
val is_prover : prover -> bool
val is_extern : prover -> bool
val is_result : verdict -> bool
val is_proved : smoke:bool -> verdict -> bool
val is_none : result -> bool
val is_verdict : result -> bool
val is_valid : result -> bool
val is_trivial : result -> bool
val is_not_valid : result -> bool
val is_computing : result -> bool
val has_model : result -> bool
val autofit : result -> bool
Result that fits the default configuration
val name_of_verdict : ?computing:bool -> verdict -> string
val pp_result : Stdlib.Format.formatter -> result -> unit
val pp_model : Stdlib.Format.formatter -> model -> unit
val dkey_shell : Wp_parameters.category