Sidekick_quip.Proofmodule Ty : sig ... endRepresentation of types
module Fun : sig ... endmodule Cstor = Funmodule T : sig ... endRepresentation of terms, with explicit sharing
type term = T.ttype ty = Ty.tmodule Lit : sig ... endtype clause = Lit.t listtype t = | Unspecified | ||||
| Sorry | ||||
| Sorry_c of clause | ||||
| Named of string | ||||
| Refl of term | ||||
| CC_lemma_imply of t list * term * term | ||||
| CC_lemma of clause | ||||
| Assertion of term | ||||
| Assertion_c of clause | ||||
| Hres of t * hres_step list | ||||
| Res of term * t * t | ||||
| Res1 of t * t | ||||
| Paramod1 of t * t | ||||
| Rup of clause * t list | ||||
| Clause_rw of {
} | ||||
| DT_isa_split of ty * term list | ||||
| DT_isa_disj of ty * term * term | ||||
| DT_cstor_inj of Cstor.t * int * term list * term list | ||||
| Bool_true_is_true | ||||
| Bool_true_neq_false | ||||
| Bool_eq of term * term | ||||
| Bool_c of bool_c_name * term list | ||||
| Ite_true of term | ||||
| Ite_false of term | ||||
| LRA of clause | ||||
| Composite of {
} |
and composite_step = | S_step_c of {
} | (* A named step in | |||
| S_step_anon of {
} | (* A named intermediate proof, to be reused in subsequent proofs. Unlike | |||
| S_define_t of term * term | ||||
| S_define_t_name of string * term |
val stepc : name:string -> clause -> t -> composite_stepval step_anon : name:string -> t -> composite_stepval deft : term -> term -> composite_stepval deft_name : string -> term -> composite_stepval is_trivial_refl : t -> boolval default : tval sorry : tval ref_by_name : string -> tval composite_a : ?assms:(string * Lit.t) list -> composite_step array -> tval composite_l : ?assms:(string * Lit.t) list -> composite_step list -> tval composite_iter : ?assms:(string * Lit.t) list -> composite_step Iter.t -> tval true_is_true : tval true_neq_false : tval bool_c : bool_c_name -> term list -> t