Use the two incoming initial arrows in the source figure: . An atomic proposition is true precisely at the states whose displayed labels contain it. In particular, is false at every state. Hence is true on every infinite path in a transition system, and the first implication in the fairness assumption imposes no restriction.
Write . The remaining implication is . By the linear temporal logic duality , it is equivalent tosince implies . Thus a path is fair exactly when it visits states not labelled with both and infinitely often. This condition also follows directly: if eventually holds forever, then eventually holds forever and the required is impossible; if does not eventually hold forever, the implication has a false antecedent.
Every initial path in a transition system in the upper component either alternates forever between and , or makes finitely many alternations and then stays at . These are all fair: the first visits infinitely often, and the second visits infinitely often; neither state satisfies .
In the lower component, a path in a transition system can stay at forever, or leave it after finitely many visits and pass through to . The constant path in a transition system is unfair because holds forever while never holds. Every departing path in a transition system is fair because satisfies neither nor . Here means infinite repetition of the finite word . ThereforeThis notation lists initial paths in a transition system. If one instead allows arbitrary starting states, their suffixes starting at are fair as well; the fair paths in a transition system from each initial state, and hence all verdicts below, are unchanged.
Denote the three families found in part (a) by , and , where . All are fair paths in a transition system. The verdicts areEach verdict follows from the infinite path in a transition system semantics, rather than from a finite prefix alone.
For , take . From onwards, is always false, so there is no time after which is always true. Therefore the first specification fails, with fair counterexample . The path in a transition system is another fair counterexample, because it encounters , where is false, infinitely often. Each does satisfy , since satisfies forever.
For , take . Its next state is , so is true, but is false as just shown. Thus the second specification fails, with fair counterexample . Alternatively, has next state , making its antecedent true and its consequent false. For with , the next state is still , so this implication is true there because its antecedent is false; this does not rescue a universally quantified specification.
For , the fair path in a transition system reaches , where is false. Thus the third specification fails, with fair counterexample . In fact every fair initial path in a transition system reaches or , so none satisfies .
For , strong until requires an eventual position satisfying , together with at every earlier position. On , is true forever, so never holds. Thus the fourth specification fails, with fair counterexample . On each , holds until entry into , after which holds forever. On each , holds until entry into , after which holds forever. These latter paths in a transition system satisfy the strong until requirement.
For , weak until permits either the preceding strong until behavior or . Every and satisfies the strong until behavior, and satisfies . These exhaust the fair initial paths in a transition system. Therefore the fifth specification holds on every fair initial path. Allowing the left operand to continue forever is exactly what distinguishes this answer from the previous one.
For , the two next-time operators belong to the left operand of strong until. The fair path in a transition system has true at positions zero and one, then false at every position from two onwards. Therefore first holds at position two. But is false already at position zero, since is false at position two. A witness for strong until cannot occur at zero or one, where its right operand is false, or at two or later, where its left operand has already failed. Thus the sixth specification fails, with fair counterexample .
Indeed, every fair initial path in a transition system fails the sixth specification. On , the right operand never holds. On and , let be the first position of the permanent tail. The left operand is false at , strictly before any possible right-operand witness. This also checks that the two next-time operators cannot be ignored or shifted onto the whole strong until formula.
To apply bounded model checking, seek an initial path in a transition system satisfyingA satisfying assignment for its bounded encoding is enough to disprove the specification. Use a lasso path: positions follow the transition relation, and a final arrow returns from to some , . The repeated part is . On such a lasso path, is equivalent to having true at some position of the repeated part.
For this example an explicit Boolean formula for the bounded search isHere means and means that the source diagram has the arrow ; each can be encoded by finite Boolean variables for the states. The loop requirements are the fairness assumption and the negated specification respectively. Unrolling the transition relation and adding a loop closure is the usual bounded model checking construction.[ref]
Symbolic Model Checking without BDDs by Armin Biere and others. §2, worked example with an unrolled transition relation and a returning loop; §3, infinite-path semantics
At bound , an initial self-loop would be needed. The only such choice is , whose repeated label satisfies and . It violates both loop requirements. The other initial state, , has no self-loop. Thus has no satisfying assignment.
At bound , chooseBoth required arrows and exist. At , is false and hence is false, so both repeated-part requirements are true. Equivalently, the label values are and . These values give a satisfying assignment of , representing the fair counterexample . ConsequentlyHere the bound counts forward arrows before the returning arrow, so stores two positions and describes a two-state repeated part. There is no need for a completeness bound: the exhibited fair counterexample settles the negative answer. These satisfying assignments are checked directly; no claim of executing an external SAT solver is needed.
Articles by others on the same topic
There are currently no matching articles.