Since version 2.2.0, the alt-ergo library is built and installed.
You can access the list of modules.
The Alt-Ergo codebase is roughly divided into the following categories:
In this category are defined most of the structures used in Alt-Ergo.
First are the Abstract Syntax Trees used in Alt-Ergo. There exists three main different ASTs: the AltErgoLib.Parsed
module defines the terms generated by the native parser of Alt-Ergo, the AltErgoLib.Typed
module defines typechecked terms, which are an intermediary used by Alt-Ergo before translating them into hashconsed expressions as defined in AltErgoLib.Expr
. The AltErgoLib.Ty
module defines the structure used to represent types (which are common between typed terms and hashconsed expressions). Finally, the AltErgoLib.Commands
module defines a notion of commands that can be sent to the SMT solver.
AltErgoLib.Ty
TypesAltErgoLib.Expr
Data structuresAltErgoLib.Commands
These modules make use of the following modules to abstract over variables and symbols:
Lastly, the following modules are used by the reasonners in the backend:
AltErgoLib.Explanation
AltErgoLib.Satml_types
AltErgoLib.Fpa_rounding
AltErgoLib.Xliteral
AltErgoLib.Profiling
The frontend provides an easily usable user interface for the Alt-Ergo solver. It is split into three main parts.
The AltErgoLib.Frontend
defines a frontend for the core solver, as a functor parametrized by a SAT solver implementation, and returning a solver that can process commands as defined by the AltErgoLib.Commands
module.
TODO: Add some more explanations.
AltErgoLib.Arrays_rel
AltErgoLib.Theory
AltErgoLib.Ccx
AltErgoLib.Relation
AltErgoLib.Intervals
AltErgoLib.Inequalities
AltErgoLib.IntervalCalculus
AltErgoLib.Records_rel
AltErgoLib.Ite_rel
AltErgoLib.Sig_rel
AltErgoLib.Enum_rel
AltErgoLib.Bitv_rel
AltErgoLib.Uf
AltErgoLib.Use
AltErgoLib.Matching
AltErgoLib.Instances
AltErgoLib.Sat_solver_sig
AltErgoLib.Fun_sat
AltErgoLib.Satml
AltErgoLib.Satml_frontend
AltErgoLib.Satml_frontend_hybrid
AltErgoLib.Sat_solver
AltErgoLib.Matching_types
AltErgoLib.Shostak
AltErgoLib.Ac
AltErgoLib.Arith
AltErgoLib.Bitv
AltErgoLib.Polynome
AltErgoLib.Records
AltErgoLib.Sig
AltErgoLib.Th_util
Utilities module specific to Alt-Ergo:
AltErgoLib.Config
AltErgoLib.Errors
AltErgoLib.Steps
Module_NameAltErgoLib.Options
AltErgoLib.Version
AltErgoLib.Printer
Stdlib extensions/replacements/wrappers:
AltErgoLib.Util
AltErgoLib.Heap
Heaps.AltErgoLib.Emap
AltErgoLib.Hstring
AltErgoLib.Compat
AltErgoLib.Gc_debug
AltErgoLib.Timers
AltErgoLib.Hconsing
Generic Hashconsing.AltErgoLib.Vec
AltErgoLib.Loc
Position in input filesAltErgoLib.My_list
Lists utilies This modules defines some helper functions on listsAltErgoLib.Numbers
Unfortunately, odoc doesn't seem to correctly generate the index list the same way that ocamldoc does, :/ While the index of types and values is not generated yet, you can always browse the list of modules.
indexlist