我被困在如何在 SMTLIB2 中创建一个声明类似
forall x < 100, f(x) = 100
此属性将检查一个函数,该函数递归地将所有小于 100 的数字加 1:
(define-fun-rec incUntil100 ((x Int)) Int
(ite
(= x 100)
100
(incUntil100 (+ x 1))
)
)
我通读了关于量词和模式的 Z3 教程,但这似乎并没有让我在任何地方获得太多帮助。