CBMC
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
smt2_dec.h
Go to the documentation of this file.
1/*******************************************************************\
2
3Module:
4
5Author: Daniel Kroening, kroening@kroening.com
6
7\*******************************************************************/
8
9
10#ifndef CPROVER_SOLVERS_SMT2_SMT2_DEC_H
11#define CPROVER_SOLVERS_SMT2_SMT2_DEC_H
12
13#include "smt2_conv.h"
14
16
18{
19protected:
20 std::stringstream stringstream;
21};
22
25class smt2_dect : protected smt2_stringstreamt, public smt2_convt
26{
27public:
29 const namespacet &_ns,
30 const std::string &_benchmark,
31 const std::string &_notes,
32 const std::string &_logic,
37 {
38 }
39
40 std::string decision_procedure_text() const override;
41
42protected:
44 resultt dec_solve(const exprt &) override;
45
48 std::stringstream cached_output;
49
50 resultt read_result(std::istream &in);
51};
52
53#endif // CPROVER_SOLVERS_SMT2_SMT2_DEC_H
ait supplies three of the four components needed: an abstract interpreter (in this case handling func...
Definition ai.h:562
resultt
Result of running the decision procedure.
Base class for all expressions.
Definition expr.h:56
A namespacet is essentially one or two symbol tables bound together, to allow for symbol lookups in t...
Definition namespace.h:91
Decision procedure interface for various SMT 2.x solvers.
Definition smt2_dec.h:26
smt2_dect(const namespacet &_ns, const std::string &_benchmark, const std::string &_notes, const std::string &_logic, solvert _solver, message_handlert &_message_handler)
Definition smt2_dec.h:28
message_handlert & message_handler
Definition smt2_dec.h:43
std::string decision_procedure_text() const override
Return a textual description of the decision procedure.
Definition smt2_dec.cpp:20
resultt dec_solve(const exprt &) override
Implementation of the decision procedure.
Definition smt2_dec.cpp:38
std::stringstream cached_output
Everything except the footer is cached, so that output files can be rewritten with varying footers.
Definition smt2_dec.h:48
std::stringstream stringstream
Definition smt2_dec.h:20
return read_result
Definition java.io.c:7