Interface ProverEnvironment

All Superinterfaces:
AutoCloseable, BasicProverEnvironment<Void>
All Known Implementing Classes:
DebuggingProverEnvironment, ProverWithAssumptionsWrapper

public interface ProverEnvironment extends BasicProverEnvironment<Void>
An interface to an incremental SMT solver with methods for pushing and popping formulas as well as SAT checks. Instances of this class can be used once for a series of related queries. After that, the BasicProverEnvironment.close() method should be called (preferably using the try-with-resources syntax). All methods are expected to throw IllegalStateExceptions after close was called.

All solving methods are expected to throw SolverException if the solver fails to solve the given query, and InterruptedException if a thread interrupt was requested or a shutdown request via the ShutdownNotifier. It is not guaranteed, though, that solvers respond in a timely manner (or at all) to shut down or interrupt requests.