module Register: sig
.. end
Use options to know what to do
module F: Fol_formula
module A: Mint_natural.Create
(
F
)
module R: Mfloat_natural.Create
(
F
)
module Hoare: Hoare_mem.Create
(
F
)
(
A
)
(
R
)
module Store: Store_mem.Create
(
F
)
(
A
)
(
R
)
module Runtime: Runtime_mem.Create
(
F
)
(
A
)
(
R
)
module Th: sig
.. end
module HW: Fol_why.EWhy
(
Th
)
module HQ: Fol_coq.ECoq
(
Th
)
module HE: Fol_ergo.Make
(
Th
)
module Ts: sig
.. end
module SW: Fol_why.EWhy
(
Ts
)
module SQ: Fol_coq.ECoq
(
Ts
)
module SE: Fol_ergo.Make
(
Ts
)
module Tr: sig
.. end
module RW: Fol_why.EWhy
(
Tr
)
module RQ: Fol_coq.ECoq
(
Tr
)
module RE: Fol_ergo.Make
(
Tr
)
module MCriteria: sig
.. end
module HCriteria: sig
.. end
module WP_Hoare: CfgProof.Create
(
Funvar_mem.Create
(
HCriteria
)
(
Hoare
)
)
(
HW
)
(
HQ
)
(
HE
)
(
Fol_split
)
(
sig
end
)
module WP_Store: CfgProof.Create
(
Store
)
(
SW
)
(
SQ
)
(
SE
)
(
Fol_split
)
(
sig
end
)
module WP_Storefun: CfgProof.Create
(
Funvar_mem.Create
(
MCriteria
)
(
Store
)
)
(
SW
)
(
SQ
)
(
SE
)
(
Fol_split
)
(
sig
end
)
module WP_Runtime: CfgProof.Create
(
Runtime
)
(
RW
)
(
RQ
)
(
RE
)
(
Fol_split
)
(
sig
end
)
module WP_Runtimefun: CfgProof.Create
(
Funvar_mem.Create
(
MCriteria
)
(
Runtime
)
)
(
RW
)
(
RQ
)
(
RE
)
(
Fol_split
)
(
sig
end
)
type
feature =
type
wp_model = {
}
val wp_model : string -> wp_model
val option : (unit -> bool) -> feature -> bool
type 'a
computing_methods =
| |
OneforBoth of 'a |
| |
NonAssigns of 'a |
| |
OneforEach of 'a * 'a |
val dispatch : wp_model list -> CfgProof.computer computing_methods
val computer : Wp_parameters.model_kind ->
WP_Hoare.computer computing_methods
val on_definition : (Cil_types.kernel_function -> 'a) -> Cil_types.kernel_function -> 'a
val on_all_functions : (Cil_types.kernel_function -> unit) -> unit
val on_function_names : string list -> (Cil_types.kernel_function -> unit) -> unit
val on_function : Cil_types.kernel_function -> (Cil_types.kernel_function -> 'a) -> 'a
val dot_lannots : WpStrategy.strategy list -> unit
type
prop =
| |
NamedProp of string |
| |
IdProp of Property.t |
val do_compute : Wpo.t Bag.t Pervasives.ref ->
CfgProof.computer ->
((Kernel_function.t -> unit) -> 'a) ->
WpAnnot.asked_assigns ->
string list -> prop option -> Cil_types.stmt option -> unit
val do_wp_print : unit -> unit
val do_wp_print_for : Wpo.t Bag.t -> unit
val do_wpo_feedback : Wpo.t -> Wpo.prover -> Wpo.result -> unit
val do_wp_proof : Task.server -> bool -> Wpo.prover -> Wpo.t -> unit
val do_wp_proofs : unit -> unit
val do_wp_proofs_for : Wpo.t Bag.t -> unit
val do_check_feedback : Wpo.t -> Wpo.language -> Wpo.result -> unit
val do_wp_check : Task.server -> Wpo.language -> Wpo.t -> unit
val do_wp_checks : unit -> unit
val do_wp_checks_for : Wpo.t Bag.t -> unit
val do_wp_passes : ((Kernel_function.t -> unit) -> 'a) ->
string list -> prop option -> Cil_types.stmt option -> Wpo.t Bag.t
val generic_compute : Kernel_function.t option ->
string list -> prop option -> Cil_types.stmt option -> unit
val wp_compute : Kernel_function.t option ->
Datatype.String.t list -> Property.t option -> unit
val wp_compute_call : kf_caller:Kernel_function.t -> kf_called:'a -> Cil_types.stmt -> unit
val cmdline_run : unit -> unit
val property_of_id : WpPropId.Prop_id_datatype.t -> Property.t
val wp_compute : Kernel_function.t option ->
Datatype.String.t list -> Property.t option -> unit
val run : unit -> unit
Use options to know what to do
val do_finally : (unit -> 'a) -> (unit -> 'b) -> unit -> unit
val tracelog : unit -> unit
val (&&&) : (unit -> 'a) -> (unit -> 'b) -> unit -> unit
val main : unit -> unit