私がやろうとしているのは、すべてのベクトルに行き、各ビットで異なることをすることです。
define-fun LT....
私が知りたいのは、私が forall (in )でうまくやっているかどうかです。
結果が予想と一致しないため: S
このリンクにあるコード: http://rise4fun.com/Z3/xrFK
私がやろうとしているのは、すべてのベクトルに行き、各ビットで異なることをすることです。
define-fun LT....
私が知りたいのは、私が forall (in )でうまくやっているかどうかです。
結果が予想と一致しないため: S
このリンクにあるコード: http://rise4fun.com/Z3/xrFK
あなたの数式の意図したセマンティクスが何であるかはわかりませんが、直感的には、あなたの定義がis_in
原因である可能性があるようです:
(define-fun is_in ((e (_ BitVec 9)) (S (_ BitVec 9))) Bool
;; True if e is an element of the "set" S.
(= (bvand e S) e))
この制約は、が と等しい(= (bvand e S) e))
場合にのみ、この関数が true を返すことができることを意味します。関数の名前からすると、定義は.S
e
(not (= (bvand e S) Empty))