Smtmlmodule Altergo_mappings : sig ... endAlt-Ergo Solver Mappings. This module defines types and utilities for mapping between internal representations and the format used by the Alt-Ergo solver. It provides functions to translate problems into solver-specific inputs and to interpret solver outputs.
module Ast : sig ... endmodule Binder : sig ... endQuantifiers and Binding Constructs. This module defines types and utilities for representing quantifiers (universal and existential) and let-bindings, which are commonly used in SMT-LIB formulas for logical quantification and local definitions.
module Bitvector : sig ... endmodule Bitwuzla_mappings : sig ... endBitwuzla Solver Mappings. This module defines types and utilities for mapping between internal representations and the format used by the Bitwuzla solver. It provides functions to translate problems into solver-specific inputs and to interpret solver outputs.
module Cache : sig ... endmodule Cache_intf : sig ... endmodule Colibri2_mappings : sig ... endColibri2 Solver Mappings. This module defines types and utilities for mapping between internal representations and the format used by the Colibri2 solver. It provides functions to translate problems into solver-specific inputs and to interpret solver outputs.
module Compile : sig ... endCompilation Module. This module provides functionality for parsing and processing abstract syntax trees (ASTs) from files, with support for transformations and rewrites.
module Cvc5_mappings : sig ... endCvc5 Solver Mappings. This module defines types and utilities for mapping between internal representations and the format used by the Cvc5 solver. It provides functions to translate problems into solver-specific inputs and to interpret solver outputs.
module Dolmenexpr_to_expr : sig ... endmodule Eval : sig ... endOperators and Evaluation Functions. This module defines types and functions for representing and evaluating various kinds of operations, including unary, binary, ternary, relational, conversion, and n-ary operations. It also defines exceptions for handling errors during evaluation.
module Expr : sig ... endAbstract Syntax Tree (AST) for Expressions. This module defines the representation of terms and expressions in the AST, along with constructors, accessors, simplification utilities, and pretty-printing functions. It also includes submodules for handling Boolean expressions, sets, bitvectors, and floating-point arithmetic.
module Expr_intf : sig ... endmodule Expr_raw : sig ... endmodule Feature_extraction : sig ... endmodule Interpret : sig ... endmodule Interpret_intf : sig ... endmodule Lexer : sig ... endmodule Log : sig ... endmodule Logic : sig ... endSMT-LIB Logics. This module defines the set of SMT-LIB logics, which specify the theories and operations that a solver may handle. Each logic represents a combination of supported theories, such as arithmetic, arrays, bitvectors, and uninterpreted functions.
module Mappings : sig ... endmodule Mappings_intf : sig ... endMappings Module. This module defines interfaces for interacting with SMT solvers, including term construction, type handling, solver interaction, and optimization. It provides a generic interface for working with different SMT solvers and their functionalities.
module Model : sig ... endModel Module. This module defines a symbol table that maps symbols to values. It provides utility functions for iteration, retrieval, evaluation, serialization, and parsing from various formats.
module Num : sig ... endTyped Values Representation. This module defines types and utilities for representing values with different numeric types, including integers and floating-point numbers. It also provides functions for type checking, comparison, formatting, and conversion.
module Op_intf : sig ... endmodule Optimizer : sig ... endmodule Optimizer_intf : sig ... endOptimizer Module. This module defines interfaces for interacting with optimization solvers, including constraint management, optimization objectives, and result retrieval. It provides a generic interface for working with different optimization backends.
module Params : sig ... endParameter Management Module. This module defines a type-safe interface for handling solver parameters, allowing configuration of options such as timeouts, model production, and parallel execution.
module Parse : sig ... endSMT Script Parsing Module. This module provides functionality for parsing Smt.ml and SMT-LIB scripts from files or strings. It supports both custom Smt.ml syntax and the standard SMT-LIB format.
module Parser : sig ... endmodule Regression_model_default : sig ... endmodule Rewrite : sig ... endModule that performs two 'important' rewritings:
module Smtlib : sig ... endmodule Smtzilla : sig ... endmodule Solver : sig ... endmodule Solver_dispatcher : sig ... endSolver Query Module. This module provides functions for querying available solvers and obtaining mappings for specific solver types. It allows checking solver availability, listing available solvers, and retrieving solver mappings.
module Solver_intf : sig ... endSolver Interface Module. This module defines interfaces for interacting with SMT solvers, including batch and incremental modes. It provides a generic interface for working with different SMT solvers and their functionalities.
module Solver_mode : sig ... endSolver Mode Type. This module defines different solver modes and provides utilities for conversion, pretty-printing, and command-line argument handling.
module Solver_type : sig ... endSolver Type Module. This module defines types and utilities for working with different SMT solvers, including parsing, pretty-printing, availability checks, and mapping retrieval.
module Statistics : sig ... endStatistics Module. This module defines types and utilities for managing and manipulating solver statistics, including merging and pretty-printing.
module Symbol : sig ... endSymbol Module. This module defines names, namespaces, and typed symbols, providing utilities for creating, comparing, and manipulating symbols.
module Ty : sig ... endType Module. This module defines types and operations for working with SMT types, including unary, binary, relational, ternary, conversion, and n-ary operations. It also provides utilities for type comparison, pretty-printing, and parsing.
module Typed : sig ... endmodule Utils : sig ... endmodule Value : sig ... endConcrete Values Module. This module defines types and utilities for working with concrete values, including integers, floats, strings, lists, and applications. It provides functions for type checking, comparison, mapping, and conversion to/from strings and JSON.
module Z3_mappings : sig ... endZ3 Solver Mappings. This module defines types and utilities for mapping between internal representations and the format used by the Z3 solver. It provides functions to translate problems into solver-specific inputs and to interpret solver outputs.