In reply to ben@SystemVerilog.us:
In reply to hisingh:
then all threads must be tested with its consequent for the assertion to terminate as successful.
Could you please elaborate on this ?
I am having a hard time of making sense of it logically .
For the Attempt1 at TIME : 300 , the “or” construct is behaving as “and” construct as it waits for longer sequence ( a ##1 a ##1 b |-> c ) to complete .
In the 2 paths possible ( Path1 :: Thread1 |-> c and Path2 :: Thread2 |-> c )
why is taking the longer path instead of the shorter one ?