次の単純な SMT-LIB プログラムに示すような問題を見つけました。
SMT-LIB コード:
(declare-fun isDigit (Int) Bool)
(assert (forall ((x Int))
(=> (isDigit x)
(and (>= x 0) (< x 10))
)
)
)
(assert (forall ((x Int))
(=> (and (>= x 12) (< x 15))
(exists ((y Int))
(and (>= y 1) (< y 6)
(isHost (- x y))
)
)
)
)
)
(check-sat)
(get-model)
これにより、次の警告が表示されます。
WARNING: failed to find a pattern for quantifier (quantifier id: k!18)
sat
........
........
警告メッセージが気になります。何かが欠けていることはわかっていますが、理解できません。誰でもこの問題で私を助けることができますか?