@@ -40,11 +40,11 @@ exprt string_constraint_generatort::add_axioms_for_equals(
40
40
41
41
42
42
implies_exprt a1 (eq, equal_exprt (s1.length (), s2.length ()));
43
- axioms .push_back (a1);
43
+ lemmas .push_back (a1);
44
44
45
45
symbol_exprt qvar=fresh_univ_index (" QA_equal" , index_type);
46
46
string_constraintt a2 (qvar, s1.length (), eq, equal_exprt (s1[qvar], s2[qvar]));
47
- axioms .push_back (a2);
47
+ constraints .push_back (a2);
48
48
49
49
symbol_exprt witness=fresh_exist_index (" witness_unequal" , index_type);
50
50
exprt zero=from_integer (0 , index_type);
@@ -56,7 +56,7 @@ exprt string_constraint_generatort::add_axioms_for_equals(
56
56
notequal_exprt (s1.length (), s2.length ()),
57
57
equal_exprt (witness, from_integer (-1 , index_type)));
58
58
implies_exprt a3 (not_exprt (eq), or_exprt (diff_length, witnessing));
59
- axioms .push_back (a3);
59
+ lemmas .push_back (a3);
60
60
61
61
return tc_eq;
62
62
}
@@ -124,14 +124,14 @@ exprt string_constraint_generatort::add_axioms_for_equals_ignore_case(
124
124
const typet index_type = s1.length ().type ();
125
125
126
126
const implies_exprt a1 (eq, equal_exprt (s1.length (), s2.length ()));
127
- axioms .push_back (a1);
127
+ lemmas .push_back (a1);
128
128
129
129
const symbol_exprt qvar =
130
130
fresh_univ_index (" QA_equal_ignore_case" , index_type);
131
131
const exprt constr2 =
132
132
character_equals_ignore_case (s1[qvar], s2[qvar], char_a, char_A, char_Z);
133
133
const string_constraintt a2 (qvar, s1.length (), eq, constr2);
134
- axioms .push_back (a2);
134
+ constraints .push_back (a2);
135
135
136
136
const symbol_exprt witness =
137
137
fresh_exist_index (" witness_unequal_ignore_case" , index_type);
@@ -147,7 +147,7 @@ exprt string_constraint_generatort::add_axioms_for_equals_ignore_case(
147
147
or_exprt (
148
148
notequal_exprt (s1.length (), s2.length ()),
149
149
and_exprt (bound_witness, witness_diff)));
150
- axioms .push_back (a3);
150
+ lemmas .push_back (a3);
151
151
152
152
return typecast_exprt (eq, f.type ());
153
153
}
@@ -183,7 +183,7 @@ exprt string_constraint_generatort::add_axioms_for_hash_code(
183
183
and_exprt (
184
184
notequal_exprt (str[i], it.first [i]),
185
185
and_exprt (str.axiom_for_length_gt (i), axiom_for_is_positive_index (i))));
186
- axioms .push_back (or_exprt (c1, or_exprt (c2, c3)));
186
+ lemmas .push_back (or_exprt (c1, or_exprt (c2, c3)));
187
187
}
188
188
return hash;
189
189
}
@@ -220,12 +220,12 @@ exprt string_constraint_generatort::add_axioms_for_compare_to(
220
220
221
221
const equal_exprt res_null (res, from_integer (0 , return_type));
222
222
const implies_exprt a1 (res_null, equal_exprt (s1.length (), s2.length ()));
223
- axioms .push_back (a1);
223
+ lemmas .push_back (a1);
224
224
225
225
const symbol_exprt i = fresh_univ_index (" QA_compare_to" , index_type);
226
226
const string_constraintt a2 (
227
227
i, s1.length (), res_null, equal_exprt (s1[i], s2[i]));
228
- axioms .push_back (a2);
228
+ constraints .push_back (a2);
229
229
230
230
const symbol_exprt x = fresh_exist_index (" index_compare_to" , index_type);
231
231
const equal_exprt ret_char_diff (
@@ -251,12 +251,12 @@ exprt string_constraint_generatort::add_axioms_for_compare_to(
251
251
and_exprt (
252
252
binary_relation_exprt (x, ID_ge, from_integer (0 , return_type)),
253
253
or_exprt (cond1, cond2)));
254
- axioms .push_back (a3);
254
+ lemmas .push_back (a3);
255
255
256
256
const symbol_exprt i2 = fresh_univ_index (" QA_compare_to" , index_type);
257
257
const string_constraintt a4 (
258
258
i2, x, not_exprt (res_null), equal_exprt (s1[i2], s2[i2]));
259
- axioms .push_back (a4);
259
+ constraints .push_back (a4);
260
260
261
261
return res;
262
262
}
@@ -287,14 +287,14 @@ symbol_exprt string_constraint_generatort::add_axioms_for_intern(
287
287
exprt::operandst disj;
288
288
for (auto it : intern_of_string)
289
289
disj.push_back (equal_exprt (intern, it.second ));
290
- axioms .push_back (disjunction (disj));
290
+ lemmas .push_back (disjunction (disj));
291
291
292
292
// WARNING: the specification may be incomplete or incorrect
293
293
for (auto it : intern_of_string)
294
294
if (it.second !=str)
295
295
{
296
296
symbol_exprt i=fresh_exist_index (" index_intern" , index_type);
297
- axioms .push_back (
297
+ lemmas .push_back (
298
298
or_exprt (
299
299
equal_exprt (it.second , intern),
300
300
or_exprt (
0 commit comments