package smtml

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
module type S = Solver_intf.S

The S module type, which defines the core solver interface.

Batch Mode

In this module, constraints are handled in a 'batch' mode, meaning that the solver delays all interactions with the underlying SMT solver until it becomes necessary. It communicates with the underlying solver only when a call to Solver_intf.S.check, Solver_intf.S.get_value, or Solver_intf.S.model is made.

module Batch (_ : Mappings_intf.S) : S

The Batch module is parameterized by the mapping module M implementing Mappings_intf.S. In this mode, the solver delays all interactions with the underlying SMT solver until necessary.

module Cached (_ : Mappings_intf.S) : sig ... end

Incremental Mode

In the Incremental module, constraints are managed incrementally, meaning that every interaction with the solver prompts a corresponding interaction with the underlying SMT solver. Unlike the batch solver, nearly every interaction with this solver involves the underlying SMT solver.

The Incremental module, like Batch, presents a solver parameterized by the mapping module M. In this mode, the Incremental solver engages with the underlying SMT solver in nearly every interaction.

OCaml

Innovation. Community. Security.