module Encoding:sig
..end
type'a
printer =Format.formatter -> 'a -> unit
type 'a
lit =
| |
Eq of |
| |
Prop of |
| |
Bool of |
val fmap_lit : ('a -> 'b) -> 'a lit -> 'b lit
type'a
clause ='a lit list
val fmap_clause : ('a -> 'b) -> 'a clause -> 'b clause
typefoterm =
Libzipperposition.FOTerm.t
typehoterm =
Libzipperposition.TypedSTerm.t
typefoclause =
foterm clause
typehoclause =
hoterm clause
val foclause_of_clause : Libzipperposition.FOTerm.t Libzipperposition.SLiteral.t list ->
foclause
Invalid_argument
if the argument is not a proper clauseval clause_of_foclause : foclause ->
Libzipperposition.FOTerm.t Libzipperposition.SLiteral.t list
val pp_clause : 'a printer -> 'a clause printer
class type[['a, 'b]]
t =object
..end
val id : ('a, 'a) t
val compose : ('a, 'b) t -> ('b, 'c) t -> ('a, 'c) t
val (>>>) : ('a, 'b) t -> ('b, 'c) t -> ('a, 'c) t
val currying : (foterm clause, hoterm clause) t
Encode the whole clause into a Reasoner.Property.t
, ie a higher-order term
that represents a meta-level property.
module EncodedClause:sig
..end
val clause_prop : (hoclause, EncodedClause.t) t