1
from z3 import *
x = Int('x')
y = Int('y')
s = Solver()
try:
f = open("read.txt","r")
try:
str = f.read()
length = len(str)
s.add(str)
finally:
f.close()
except IOError:
pass
我寫了上面的代碼,但它不工作。它不會將字符串作爲輸入,並且我無法找到它接受的輸入類型。請幫忙。z3 smt求解器採用什麼形式的輸入??我們可以使用一個文件來讀取需要解決的等式嗎?如果是,請告訴我們如何?
'read.txt'看起來怎麼樣?你有沒有試圖找出你是否可以加載SMTLib2格式的斷言? –
嘗試做一些像'eval('s.add({})'.format(str.strip()))'。順便說一句,'str'是內置的名稱,不應該用作變量的名稱。 – martineau
read.txt包含形式爲x + y == 2的方程 – user2534232