package logtk

  1. Overview
  2. Docs
On This Page
  1. Check LLProof
Legend:
Library
Module
Module type
Parameter
Class
Class type

Check LLProof

TODO: the checker itself.

GOAL: A tiny Tableau-like prover that tries to re-prove each step in a simple way.

type proof = LLProof.t
type res =
  1. | R_ok
  2. | R_fail
val pp_res : res CCFormat.printer
type stats = {
  1. n_ok : int;
    (*

    steps that were successfully checked

    *)
  2. n_fail : int;
    (*

    steps that failed

    *)
  3. n_skip_esa : int;
    (*

    steps skipped because ESA

    *)
  4. n_skip_tags : int;
    (*

    steps skipped because of theory tags

    *)
  5. n_skip_trivial : int;
    (*

    steps skipped because they are trivial

    *)
  6. n_skip : int;
    (*

    steps skipped, not checked

    *)
}
val pp_stats : stats CCFormat.printer
type check_step_res =
  1. | CS_check of res
  2. | CS_skip of [ `ESA | `Other | `Tags | `Trivial ]

Result for checking only one step

val check : ?dot_prefix:string -> ?before_check:(proof -> unit) -> ?on_check:(proof -> check_step_res -> unit) -> proof -> res * stats