AltErgoLib.Parsed_interfaceSourceDeclaration of types *
val mk_algebraic_type_decl :
Loc.t ->
string list ->
string ->
(string * (string * Parsed.ppure_type) list) list ->
Parsed.declval mk_record_type_decl :
Loc.t ->
string list ->
string ->
?constr:string ->
(string * Parsed.ppure_type) list ->
Parsed.declDeclaration of symbols, functions, predicates, and goals
val mk_logic :
Loc.t ->
Symbols.name_kind ->
(string * string) list ->
Parsed.plogic_type ->
Parsed.declval mk_function_def :
Loc.t ->
(string * string) ->
(Loc.t * string * Parsed.ppure_type) list ->
Parsed.ppure_type ->
Parsed.lexpr ->
Parsed.declval mk_non_ground_predicate_def :
Loc.t ->
(string * string) ->
(Loc.t * string * Parsed.ppure_type) list ->
Parsed.lexpr ->
Parsed.declDeclaration of theories, generic axioms and rewriting rules *
Declaration of theory axioms and case-splits *
Making pure and logic types
Making arithmetic expressions and predicates *
Making Record expressions *
Making Array expressions *
Making Bit-vector expressions *
Making Boolean / Propositional expressions *
Making quantified formulas *
val mk_forall :
Loc.t ->
(string * string * Parsed.ppure_type) list ->
(Parsed.lexpr list * bool) list ->
Parsed.lexpr list ->
Parsed.lexpr ->
Parsed.lexprval mk_exists :
Loc.t ->
(string * string * Parsed.ppure_type) list ->
(Parsed.lexpr list * bool) list ->
Parsed.lexpr list ->
Parsed.lexpr ->
Parsed.lexprNaming and casting types of expressions *
Making vars, applications, if-then-else, and let expressions *
Making particular expression used in semantic triggers *
val mk_in_interval :
Loc.t ->
Parsed.lexpr ->
bool ->
Parsed.lexpr ->
Parsed.lexpr ->
bool ->
Parsed.lexprMaking cuts and checks *