Битвектор Z3 неудовлетворителен после добавления более одного ограничения ⇐ Python

Программы на Python
Anonymous
Битвектор Z3 неудовлетворителен после добавления более одного ограничения

Сообщение Anonymous »

Для задачи CTF мне нужно восстановить массив байтов на основе нескольких ограничений для каждого байта.
Однако, немного поигравшись с битовыми векторами в Z3, я заметил, что Solver.check() возвращает unsat, как только я добавляю более одного ограничения.
Вот пример кода для воспроизводимости:
from z3 import *

# Create solver
solver = Solver()

# Declare a BitVector of 8 bit
x = BitVec('x', 8)

# Add multiple constraints
solver.add(x >= 0) # x should be greater or equal than 0
solver.add(x = 0)< /code> или Solver.add(x = 0)
solver.add(x

Подробнее здесь: https://stackoverflow.com/questions/790 ... constraint

Вернуться в «Python»