Z3을 처음 접했고 온라인 Python 튜토리얼을 확인하고있었습니다.Z3으로 오버플로 확인
그런 다음 BitVecs에서 오버플로 동작을 확인할 수 있다고 생각했습니다.
는이 코드 썼다x = BitVec('x', 3)
y = Int('y')
solve(BV2Int(x) == y, Not(BV2Int(x + 1) == (y + 1)))
및 I는 기대 하였다 Y = 7 X = 7 (즉, 값이 동일하지만, X + 1은 0 Y되기 때문에 후계자하지 + 1 8)
그러나 Z3은 [y = 0, x = 0]으로 대답합니다.
내가 뭘 잘못하고 있니?