Encontré un problema como se muestra en el siguiente programa simple SMT-LIB.Cuál es la razón detrás del mensaje de advertencia en Z3: "no se pudo encontrar un patrón para el cuantificador (identificación del cuantificador: k! 18)"
El código 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)
Esto da la siguiente advertencia:
WARNING: failed to find a pattern for quantifier (quantifier id: k!18)
sat
........
........
Me gustaría saber el mensaje de advertencia. Sé que me estoy perdiendo algo, pero no puedo entender. ¿Alguien puede ayudarme en este tema?