Hi,
For this formula:
(set-option :model_validate true)
(set-option :smt.array.extensional false)
(declare-fun a () (Set Int))
(declare-fun b () (Set Int))
(assert (distinct a b))
(push)
(check-sat)
Z3 gives an invalid model:
[627] % z3 small.smt2
sat
(error "line 7 column 10: an invalid model was generated")
[628] %
[628] % cat small.smt2
(set-option :model_validate true)
(set-option :smt.array.extensional false)
(declare-fun a () (Set Int))
(declare-fun b () (Set Int))
(assert (distinct a b))
(push)
(check-sat)
[629] %
OS: Ubuntu 18.04
Commit: 9be7bda