You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There has the problem that tautology(P ==> Q) is not equivalent to
!s. hold(s,P) ==> hold(s,Q)
For example, if Q = (x == x:int32) and P = true then tautology(P==>Q). However, for the states s={} and s1={x:int64}, property P holds while property Q does not hold.
This is problematic for the weakening rule. An option is to require in the weakening rule that tautology(P ==> Q) and vars(Q) \subseteq vars(P)`. However, I'm not totally convinced about this rule.
The text was updated successfully, but these errors were encountered:
The presence of BIR variables in predicates makes a bit complicated the definition of tautologies. The current definition states:
In BIR, we usually say that a precondition P holds iff
There has the problem that
tautology(P ==> Q)
is not equivalent toFor example, if
Q = (x == x:int32)
andP = true
thentautology(P==>Q)
. However, for the statess={}
ands1={x:int64}
, propertyP
holds while propertyQ
does not hold.This is problematic for the weakening rule. An option is to require in the weakening rule that
tautology(P ==> Q)
andvars(Q) \subseteq
vars(P)`. However, I'm not totally convinced about this rule.The text was updated successfully, but these errors were encountered: