How to ignore all the values which are greater than certain limit in cross coverage

Hi All,

bins of i is 1,2,3;
bins of j is 4,5,6;
bins of q is 1:6;
my_cross: cross i,j,q {
}
The valid crosses are when i=1,j=4,q<4; i=2,j=5,q<5 ; i=3,j=6,q<6
How should I define my bins or ignore bins to create only these valid crosses.

Thanks in Advance

Regards
Shilpa

In reply to Shilpa R:
With cross, you have to ignore the bins you don’t want:

my_cross: cross i,j,q {
 ignore_bins i1 = binsof(i) intersect(1) && ! binsof(j) intersect (4) || binsof(i) with (i==1 && q>=4);
 ignore_bins i2 = binsof(i) intersect(2) && ! binsof(j) intersect (5) || binsof(i) with (i==2 && q>=5);
 ignore_bins i3 = binsof(i) intersect(3) && ! binsof(j) intersect (6) || binsof(i) with (i==3 && q>=6);
}

It is usually more straightforward creating coverpoints so you cross closer to what is needed.

set1: coverpoint i==1 && j==4 { bins b={1};}
set2: coverpoint i==2 && j==5 { bins b={1};}
set3: coverpoint i==3 && j==6 { bins b={1};}
setq: coverpoint q { bins b[]={1:6]);}
c1: cross set1,setq { ignore_bins b = c1 with (q>=4);}
c2: cross set2,setq { ignore_bins b = c2 with (q>=5);}
c3: cross set3,setq { ignore_bins b = c3 with (q>=6);}