[英]Validation query formulation, SMT solver, Z3, STP
我有一個布爾公式f(a, b, x, y)
。 其中a和b是布爾表達式, x和y是位向量表達式。 a和b是布爾表達式,可能使用表達式a,b,x和y 。
我想為有效性定義以下查詢:
f(a, b, x, y)* such that *a = false && b = false
f(a, b, x, y)* such that *a = true && b = false
從某種意義上說,我需要在蘊涵的兩面都代入公式中的a和b的值。
請告知如何創建這樣的查詢。
為什么不為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.