Skip to content

Commit adc5d8a

Browse files
committed
Document identifier_table in smt2_incremental_decision_proceduret
1 parent 4085b97 commit adc5d8a

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

src/solvers/smt2_incremental/smt2_incremental_decision_procedure.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,13 @@ class smt2_incremental_decision_proceduret final
138138
/// array expressions when support for them is implemented.
139139
std::unordered_map<exprt, smt_identifier_termt, irep_hash>
140140
expression_identifiers;
141+
/// This maps from the unsorted/untyped string/symbol for the identifiers
142+
/// which we have declared in SMT solver to the corresponding sorted/typed
143+
/// `smt_identifier_termt`. This enables type checking the parse trees of
144+
/// responses received back from the solver. It is required because without
145+
/// the definitive sorts we would need to attempt to infer the sorts of
146+
/// identifiers from the surrounding terms which would be a looser check with
147+
/// a more complex implementation.
141148
std::unordered_map<irep_idt, smt_identifier_termt> identifier_table;
142149
/// This map is used to track object related state. See documentation in
143150
/// object_tracking.h for details.

0 commit comments

Comments
 (0)