Module Wpo
module Wpo: sig
.. end
Proof Obligations
type
po = t
type
t = {
}
type
warning = {
|
wrn_loc : Lexing.position ; |
|
wrn_severe : bool ; |
|
wrn_source : string ; |
|
wrn_reason : string ; |
|
wrn_effect : string ; |
}
module PODatatype: Datatype.Make
(
sig
end
)
type
prover =
| |
Why of string |
| |
AltErgo |
| |
Coq |
| |
WP |
Dynamically exported.
module ProverType: Datatype.Make
(
sig
end
)
type
language =
| |
L_why |
| |
L_coq |
| |
L_altergo |
type
result =
| |
Valid |
| |
Invalid |
| |
Unknown |
| |
Timeout |
| |
Computing |
| |
Failed of string |
module ResultType: Datatype.Make
(
sig
end
)
val pp_warning : Format.formatter -> warning -> unit
val pp_dependency : Cil_types.kernel_function -> Format.formatter -> Property.t -> unit
val pp_depend : Format.formatter -> Property.t -> unit
val pp_prover : Format.formatter -> prover -> unit
val pp_language : Format.formatter -> language -> unit
val pp_result : Format.formatter -> result -> unit
module Hproof: Hashtbl.Make
(
Datatype.Pair
(
Datatype.String
)
(
Property
)
)
module Results: sig
.. end
module WPO: sig
.. end
module Kfmap: Kernel_function.Map
module Imap: Map.Make
(
String
)
module WPOset: Set.Make
(
WPO
)
module Hpo: Hashtbl.Make
(
WPO
)
type
system = {
|
mutable environments : int Imap.t ; |
|
mutable last : (string * int * string) option ; |
|
mutable index : WPOset.t Imap.t Kfmap.t ; |
|
proofs : WpAnnot.proof Hproof.t ; |
|
results : Results.t Hpo.t ; |
}
val system : system
val get_gid : PODatatype.t -> string
Dynamically exported
Since Nitrogen-20111001
val get_prop_id : PODatatype.t -> WpPropId.Prop_id_datatype.t
val gid : context:string ->
kf:Kernel_function.t ->
bhv:string option -> propid:WpPropId.prop_id -> string
val clear : unit -> unit
val env_name : string -> int -> string
val new_env : context:Imap.key -> string
Generates a fresh environment name.
val release_env : env:string -> unit
Releases the last generated environment name.
val add : WPOset.elt -> unit
val set_po_result : t -> result -> unit
val set_result : Hpo.key -> prover -> result -> unit
val get_result : PODatatype.t -> ProverType.t -> ResultType.t option
Dynamically exported.
val get_result : PODatatype.t -> ProverType.t -> ResultType.t option
Dynamically exported.
val is_valid : ResultType.t -> bool
true
if the result is valid. Dynamically exported.
Since Nitrogen-20111001
val get_results : Hpo.key -> (prover * result) list
val iter : ?on_environment:(string -> 'a) ->
?on_function:(Kernel_function.t -> unit) ->
?on_behavior:(Kernel_function.t -> String.t option -> unit) ->
?on_goal:(WPOset.elt -> unit) -> unit -> unit
val iter_on_goals : (WPOset.elt -> unit) -> unit
Dynamically exported.
Since Nitrogen-20111001
val local : string -> string -> string
val file_for_lang : string -> language -> string
val file_for_ctxt : env:string -> string
val file_for_head : gid:string -> string
val file_for_body : gid:string -> string
Dynamically exported.
val file_for_log_proof : gid:string -> prover -> string
val file_for_log_proof_ : string -> ProverType.t -> string
val file_for_log_check : gid:string -> language -> string
val file_for_goal : gid:string -> language -> string
val file_for_env : env:string -> language -> string
val file_for_po : gid:string -> language -> string
val file_for_model : model:string -> language -> string
val coq_for_env : env:'a -> 'a
val coq_for_model : model:string -> string
val coqc_for_model : model:string -> string
val prover_of_name : string -> ProverType.t option
val prover_of_name : string -> ProverType.t option
val language_of_name : string -> language option
Dynamically exported.
val language_of_prover : prover -> language
val language_of_prover_name : string -> language option
val is_interactive : string -> bool
val gui_provers : prover list
val bar : string
val flow : bool Pervasives.ref
val pp_environment : Format.formatter -> string -> unit
val pp_function : Format.formatter -> Kernel_function.t -> string option -> unit
val pp_goal : Format.formatter -> Hpo.key -> unit
val pp_goal_flow : Format.formatter -> Hpo.key -> unit