I have analyzed a formula in QF_AUFLIA with z3. The result was sat
. The model returned by (get-model)
contained the following lines:
(define-fun PCsc5_ () Int
(ite (= 2 false) 23 33)
According to my understanding of the SMTLIBv2 language, this statement is malformed. =
should only be applied to arguments of the same sort. However, 2
has sort Int
and false
has sort Bool
.
When I feed back just these two lines to z3, it agrees with me by saying:
invalid function application, sort mismatch on argument at position 2
Is this a bug?
If not, how am I supposed to interpret (= 2 false)
?