簡體   English   中英

驗證查詢公式,SMT求解器,Z3,STP

[英]Validation query formulation, SMT solver, Z3, STP

我有一個布爾公式f(a, b, x, y) 其中ab是布爾表達式, xy是位向量表達式。 ab是布爾表達式,可能使用表達式a,b,xy

我想為有效性定義以下查詢:

f(a, b, x, y)* such that *a = false && b = false 

f(a, b, x, y)* such that *a = true && b = false

從某種意義上說,我需要在蘊涵的兩面都代入公式中的ab的值。

請告知如何創建這樣的查詢。

為什么不為a創建一個新變量? 然后可以聲明以下內容:(assert(not a))(assert(not b))(assert(fabxy))(assert a2)(assert(not(f a2 bxy)))(check-sat)

當且僅當以上查詢無法令人滿意時,您的查詢才有效,因為綁定被表示為斷言,並且含義被取反(並被扁平化為兩個斷言)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM