0

我试图在 SMT-LIB 中执行此操作,z3 -smt2 script.smt2在包含这些表达式的脚本上运行:

(set-logic AUFLIA)

(declare-fun a () Int)
(declare-fun b () Int)
(declare-fun c () Int)
(declare-fun d () Int)
(declare-fun e () Int)
(declare-fun f () Int)
(declare-fun x () Int)
(declare-fun c () Int)

(declare-fun addition (Int Int) Int)

(assert (= x c))
(assert (= c (addition a b)))
(assert (= f (addition d e)))

(check-sat)

我想统一这些变量。例如,我希望能够通过分配x=f,a=d和来统一变量b=e

z3甚至有可能在or中做到这一点SMT-LIB

或者我应该使用其他语言来做到这一点(也许给出建议是你的想法?)

4

0 回答 0