Equivalent expression for b[=0]

In reply to Have_A_Doubt:


 b[->0] is equivalent to 
!b[*0:$] ##1 b[*0] // expanding to 
!b[*0] ##1 b[*0]  or  // same as b[*0] 
!b[*1] ##1 b[*0]  or ... // same as !b[*1] ##1 empty_match 
// Same as 
b[*0]  or !b[*1] ##1 empty_match or !b[*2] ##1 empty_match 

Thus, b[->0] always ends with an empty_match, which is a fail
I believe that optimization in the tool determines that there is no need to test all the other ORed threads because ALL of them end with an empty match
(2) - EDA Playground // code
EPWave Waveform Viewer // wave

Ben Cohen
Ben@systemverilog.us
Link to the list of papers and books that I wrote, many are now donated.

or Links_to_papers_books - Google Docs