Wp.Wpotype index = | Axiomatic of string option |
| Function of Frama_c_kernel.Cil_types.kernel_function * string option |
module DISK : sig ... endmodule GOAL : sig ... endmodule VC_Lemma : sig ... endmodule VC_Annot : sig ... endtype po = tand t = {po_gid : string; | (* goal identifier *) |
po_sid : string; | (* goal short identifier (without model) *) |
po_name : string; | (* goal informal name *) |
po_idx : index; | (* goal index *) |
po_model : WpContext.model; | |
po_pid : WpPropId.prop_id; | |
po_formula : formula; |
}module S : Frama_c_kernel.Datatype.S_with_collections with type t = poval get_gid : t -> stringDynamically exported
val get_property : t -> Frama_c_kernel.Property.tDynamically exported
val get_label : t -> stringval get_model : t -> WpContext.modelval get_scope : t -> WpContext.scopeval get_context : t -> WpContext.contextval get_file_logout : t -> VCS.prover -> stringonly filename, might not exists
val get_file_logerr : t -> VCS.prover -> stringonly filename, might not exists
val get_files : t -> (string * string) listval qed_time : t -> floatval remove : t -> unitval add : t -> unitval age : t -> intval reduce : t -> booltries simplification
val resolve : t -> booltries simplification and set result if valid
val set_result : t -> VCS.prover -> VCS.result -> unitval clear_results : t -> unitval add_modified_hook : ( t -> unit ) -> unitHook is invoked for each goal results modification. Remark: clear() does not trigger those hooks, Cf. add_cleared_hook instead.
val add_removed_hook : ( t -> unit ) -> unitHook is invoked for each removed goal. Remark: clear() does not trigger those hooks, Cf. add_cleared_hook instead.
val compute : t -> Definitions.axioms option * Conditions.sequentWarning: Prover results are stored as they are from prover output, without taking into consideration that validity is inverted for smoke tests.
On the contrary, proof validity is computed with respect to smoke test/non-smoke test.
val has_verdict : t -> VCS.prover -> boolDefinite result for this prover (not computing)
val get_result : t -> VCS.prover -> VCS.resultRaw prover result (without any respect to smoke tests)
val get_results : t -> (VCS.prover * VCS.result) listAll raw prover results (without any respect to smoke tests)
val get_proof :
t ->
[ `Passed | `Failed | `Unknown ] * Frama_c_kernel.Property.tConsolidated wrt to associated property and smoke test.
val get_target : t -> Frama_c_kernel.Property.tAssociated property.
val is_trivial : t -> boolCurrently trivial sequent (no forced simplification)
val is_valid : t -> boolChecks for some prover with valid verdict (no forced simplification)
val all_not_valid : t -> boolChecks for all provers to give a non-valid, computed verdict
val is_passed : t -> boolvalid, or all-not-valid for smoke tests
val has_unknown : t -> boolChecks there is some provers with a non-valid verdict
val is_tactic : t -> boolval is_smoke_test : t -> boolval iter :
?ip:Frama_c_kernel.Property.t ->
?index:index ->
?on_axiomatics:( string option -> unit ) ->
?on_behavior:
( Frama_c_kernel.Cil_types.kernel_function -> string option -> unit ) ->
?on_goal:( t -> unit ) ->
unit ->
unitval iter_on_goals : ( t -> unit ) -> unitDynamically exported.
val goals_of_property : Frama_c_kernel.Property.t -> t listAll POs related to a given property. Dynamically exported
val kf_context : index -> Frama_c_kernel.Description.kfval pp_index : Stdlib.Format.formatter -> index -> unitval pp_warnings : Stdlib.Format.formatter -> Warning.t list -> unitval pp_depend : Stdlib.Format.formatter -> Frama_c_kernel.Property.t -> unitval pp_dependency :
Frama_c_kernel.Description.kf ->
Stdlib.Format.formatter ->
Frama_c_kernel.Property.t ->
unitval pp_dependencies :
Frama_c_kernel.Description.kf ->
Stdlib.Format.formatter ->
Frama_c_kernel.Property.t list ->
unitval pp_goal : Stdlib.Format.formatter -> t -> unitval pp_title : Stdlib.Format.formatter -> t -> unitval pp_logfile : Stdlib.Format.formatter -> t -> VCS.prover -> unitval pp_function :
Stdlib.Format.formatter ->
Frama_c_kernel.Kernel_function.t ->
string option ->
unitval pp_goal_flow : Stdlib.Format.formatter -> t -> unitval prover_of_name : string -> VCS.prover optionDynamically exported.
VC Generator interface.
class type generator = object ... end