AND operation on sequences in assertions

In reply to sasi_8985:


(te1 ##[1:5] te2) and (te3 ##2 te4 ##2 te5)
// same as 
((te1 ##1 t2) or (te1 ##2 t2) or (te1 ##3 t2) or (te1 ##4 t2) or (te1 ##5 t2)) and 
te3 ##2 te4 ##2 te5);
// same as 
((te1 ##1 t2) and (te3 ##2 te4 ##2 te5))  or // in evaluation at t9
((te1 ##2 t2) and (te3 ##2 te4 ##2 te5))  or // in evaluation at 10
((te1 ##3 t2) and (te3 ##2 te4 ##2 te5))  or // in evaluation at t11
((te1 ##4 t2) and (te3 ##2 te4 ##2 te5))  or // PASS testcase at t12, PASSED @t12 because
//  (te1 ##4 t2) is a match at t12 and (te3 ##2 te4 ##2 te5) completed and is a match at t12 
((te1 ##5 t2) and (te3 ##2 te4 ##2 te5);     // PASS testcase at t13, PASSED @t13 because
// (te1 ##5 t2) is a match at t13 and (te3 ##2 te4 ##2 te5) was a match at t12 
//                                                             and was completed 
// In other words, for any ANDing of 2 sequences of different lengths, 
// The ANDing is a match (or PASS) is from the start of the evaluation
// sequence1 completes at some point in time AND 
// sequence2 completes at some point in time.  
// Those completion cycle times need not be identical. 
((te1 ##1 t2) or (te1 ##2 t2) or (te1 ##3 t2) or (te1 ##4 t2) or (te1 ##5 t2)) and 
te3 ##2 te4 ##2 te5);
// represents the ORing of 5 separate sequences, with each one having an AND operation.
// BTW, I used the colloquial PASS for a sequence, but when you talk about sequences
// you should refer to matches or no matches.  Properties are true or false, 
// assertions PASS or FAIL. 
//
// If you wrote 
(te1 ##[1:5] te2) intersect (te3 ##2 te4 ##2 te5)
// then the following sequence in the ORing is the only one that matches
((te1 ##4 t2) and (te3 ##2 te4 ##2 te5))    // PASS testcase at t12,


Let me add an analogy.

  • You can say 1) I’ll save $1M and I’ll buy a house and pay for it.
    Either of these 2 sequences need not be completed at the same instant of time,
    but the statement is true when both conditions are true.
    After you save the $1M, it may take you a while to find a house you like.

  • If you say 2) the instant I have $1M I’ll pay for my house.
    That is the intersect. Getting the $1M may take a while, and so does escrow for the payment. Escrow closes the moment you submit the check for the $1M.