2016-05-05 8 views
0

タイトルはそれをすべて言っています。私は次のように-1を提示しようとします:(_ bv-1 32)、そしてz3が文句を言う。bitvectorに負の数を表示するにはどうすればよいですか?

3x - 5y <= 10などの制約をビットベクトルにどのように表示するのですか?何らかの理由で、私は線形整数を使いたくない。

答えて

2

これは通常two's complement encodingによって行われます。ショートバージョンは、flip(x)は単にxのすべてのビットを反転

-x = flip(x) + 1 

あります。

+0

ありがとうございます。 SMTLIB2形式のすべてのビットを反転する構文は何ですか? – qsp

+1

これは(bvnot x)でなければなりません。 –

関連する問題