File tree Expand file tree Collapse file tree 3 files changed +32
-1
lines changed
src/solvers/smt2_incremental Expand file tree Collapse file tree 3 files changed +32
-1
lines changed Original file line number Diff line number Diff line change @@ -183,3 +183,26 @@ void smt_bit_vector_theoryt::signed_less_than_or_equalt::validate(
183
183
const smt_function_application_termt::factoryt<
184
184
smt_bit_vector_theoryt::signed_less_than_or_equalt>
185
185
smt_bit_vector_theoryt::signed_less_than_or_equal{};
186
+
187
+ const char *smt_bit_vector_theoryt::signed_greater_thant::identifier ()
188
+ {
189
+ return " bvsgt" ;
190
+ }
191
+
192
+ smt_sortt smt_bit_vector_theoryt::signed_greater_thant::return_sort (
193
+ const smt_termt &lhs,
194
+ const smt_termt &rhs)
195
+ {
196
+ return smt_bool_sortt{};
197
+ }
198
+
199
+ void smt_bit_vector_theoryt::signed_greater_thant::validate (
200
+ const smt_termt &lhs,
201
+ const smt_termt &rhs)
202
+ {
203
+ validate_bit_vector_predicate_arguments (lhs, rhs);
204
+ }
205
+
206
+ const smt_function_application_termt::factoryt<
207
+ smt_bit_vector_theoryt::signed_greater_thant>
208
+ smt_bit_vector_theoryt::signed_greater_than{};
Original file line number Diff line number Diff line change 3
3
/// [X-macro](https://en.wikipedia.org/wiki/X_Macro) pattern. These define the
4
4
/// set of bitvector theory functions which are implemented and it is used to
5
5
/// automate repetitive parts of the implementation.
6
- SMT_BITVECTOR_THEORY_PREDICATE(bvsgt, signed_greater_than)
7
6
SMT_BITVECTOR_THEORY_PREDICATE(bvsge, signed_greater_than_or_equal)
Original file line number Diff line number Diff line change @@ -78,6 +78,15 @@ class smt_bit_vector_theoryt
78
78
static const smt_function_application_termt::factoryt<
79
79
signed_less_than_or_equalt>
80
80
signed_less_than_or_equal;
81
+
82
+ struct signed_greater_thant final
83
+ {
84
+ static const char *identifier ();
85
+ static smt_sortt return_sort (const smt_termt &lhs, const smt_termt &rhs);
86
+ static void validate (const smt_termt &lhs, const smt_termt &rhs);
87
+ };
88
+ static const smt_function_application_termt::factoryt<signed_greater_thant>
89
+ signed_greater_than;
81
90
};
82
91
83
92
#endif // CPROVER_SOLVERS_SMT2_INCREMENTAL_SMT_BIT_VECTOR_THEORY_H
You can’t perform that action at this time.
0 commit comments