Я использую z3 для своих исследований, и у меня есть следующая проблема. Я анализирую модель удовлетворительной формулы, содержащей массивы, но я не понимаю результаты модели. Например, у меня есть две переменные «pkgcounter» и «rxlen» и два предложения p1 и p2. Моя цель - выяснить, есть ли модель, которая удовлетворяет обоим утверждениям.Использование массива в Z3PY
pkgcounter = Array('pkgcounter',IntSort(),BitVecSort(8))
rxlen = Array('rxlen',IntSort(),BitVecSort(8))
s = Solver()
p1 = (pkgcounter < rxlen)
p2 = (pkgcounter == rxlen)
s.add(p1,p2)
if s.check() == sat:
print s.model()
В результате получается следующая модель: [! Rxlen = [еще -> 0], pkgcounter = [еще -> 0], к 0 = [еще -> 0]]
Может ли кто-нибудь помочь мне интерпретировать этот результат? Поскольку, если rxlen и pkgcounter имеют все поля, равные нулю, предложение p1 не имеет модели.