package why3find

  1. Overview
  2. Docs
type status = private
  1. | Stuck
  2. | Prover of Prover.desc * float
  3. | Tactic of {
    1. id : string;
    2. children : crc list;
    3. stuck : int;
    4. proved : int;
    5. depth : int;
    6. time : float;
    }
and crc = private {
  1. goal : Session.goal option;
  2. status : status;
}
val none : status
val stuck : ?goal:Session.goal -> unit -> crc
val prover : ?goal:Session.goal -> Prover.desc -> float -> crc
val tactic : ?goal:Session.goal -> Tactic.tactic -> crc list -> crc
val iter : (Session.goal -> status -> unit) -> crc -> unit

Iterates over all goals in the CRC. Tactic nodes are visite first, followed by their children.

type verdict = [
  1. | `Valid of int
  2. | `Failed of int
  3. | `Partial of int * int
]
val verdict : crc -> verdict
val verdict_all : crc list -> verdict
val nverdict : stuck:int -> proved:int -> verdict
val get_stuck : crc -> int
val get_proved : crc -> int
val get_time : crc -> float
val get_depth : crc -> int
val size : crc -> int
val get_stuck_all : crc list -> int
val get_proved_all : crc list -> int
val get_time_all : crc list -> float
val get_depth_all : crc list -> int
val is_stuck : crc -> bool
val is_unknown : crc -> bool
val is_complete : crc -> bool
val pretty : Format.formatter -> crc -> unit
val pp_status : Format.formatter -> status -> unit
val pp_result : Format.formatter -> stuck:int -> proved:int -> unit
val dump : Format.formatter -> crc -> unit
val merge : crc -> crc -> crc
val of_json : Why3findUtils.Json.t -> crc
val to_json : crc -> Why3findUtils.Json.t
OCaml

Innovation. Community. Security.