如何使用smt-lib2獲取公式的最大值?使用Z3和SMT-LIB獲得最多兩個值
我想是這樣的:
(declare-fun x() Int)
(declare-fun y() Int)
(declare-fun z() Int)
(assert (= x 2))
(assert (= y 4))
(assert (= z (max x y))
(check-sat)
(get-model)
(exit)
當然, '最大' 是未知的smtlibv2。 那麼,這怎麼做呢?
快速注意:'define-fun'是SMT-LIB v2標準的一部分。 –
感謝您的更正。我相應地更新了答案。 – pad
謝謝你......這確實非常好。接下來的問題將是一個最大函數,它需要n個參數(如+)。我無法讓它與「List Int」一起工作。這是如何完成的?列表最大爲 –