为什么我的对称差异不是真的?
why my symmetric difference is not true?
我想计算两个集合 V(i,ip) 和 v(ipp,ippp) 之间的对称差异
我已经设置了 i={1,3,4,6} 和 j={1,2,..,10}
我已经设置了 T(i,j) 和 3 也设置了 V,W,b ,即
T(1)={2,5,10}
T (3)={7,10}
T (4)={2,5,6}
T (6)={2,5}
并且 V 是 T(i) 的并集,W 是 T 和 V 之间的对称差异,b 是 V(i,ip)
之间的差异
我的b结果不是真的!为什么?
我怎样才能得到 V(i,ip) 之间的差异?
v(i,ip)=t(i,j)+t(ip,j)
w(i,ip,ipp)= (t(i,j)+v(ip,ipp,j))-(t(i,j)*v(ip,ipp,j));
b(i,ip,ipp,ippp)=((v(i,ip,j)+v(ipp,ippp,j))-(v(ip,ipp,j)*v(ipp,ippp,j))) ;
*---- index and sets----*
sets
i /1,3,4,6/
j/1*10/
t(i,j) /
1.(2,5,10)
3.(7,10)
4.(2,5,6)
6.(2,5)
/ ;
alias(i,ip,ipp,ippp);
*---- parameter----*
parameter
MyOrd(i,ip);
*-------------------------------
MyOrd(i,ip)=i.val+(ip.val -1)*4;
set
v(i,ip,j)'for union only'
b(i,ip,ipp,ippp,j) 'symmetric diffrence between v and v'
w(i,ip,ipp,j) 'symmetric diffrence between t and v'
;
v(i,ip,j)$(i.val<ip.val)=t(i,j)+t(ip,j);
w(i,ip,ipp,j)$(ip.val<ipp.val) =(t(i,j)+v(ip,ipp,j))-(t(i,j)*v(ip,ipp,j));
b(i,ip,ipp,ippp,j)$(i.val<ip.val and ipp.val<ippp.val and MyOrd(i,ip)
display t,v,w,b;
在您编写的代码中
MyOrd(i,ip)=i.val+(ip.val -1)*4;
试试
parameter
MyOrd(i,i1);
scalar
counter /1/
;
loop((i,i1)$(vulnerable(i) and vulnerable(i1) and i.val <i1.val ),
MyOrd(i,i1)=counter;
counter=counter+1;
);
我想计算两个集合 V(i,ip) 和 v(ipp,ippp) 之间的对称差异
我已经设置了 i={1,3,4,6} 和 j={1,2,..,10} 我已经设置了 T(i,j) 和 3 也设置了 V,W,b ,即
T(1)={2,5,10}
T (3)={7,10}
T (4)={2,5,6}
T (6)={2,5}
并且 V 是 T(i) 的并集,W 是 T 和 V 之间的对称差异,b 是 V(i,ip)
之间的差异我的b结果不是真的!为什么?
我怎样才能得到 V(i,ip) 之间的差异?
v(i,ip)=t(i,j)+t(ip,j)
w(i,ip,ipp)= (t(i,j)+v(ip,ipp,j))-(t(i,j)*v(ip,ipp,j));
b(i,ip,ipp,ippp)=((v(i,ip,j)+v(ipp,ippp,j))-(v(ip,ipp,j)*v(ipp,ippp,j))) ;
*---- index and sets----*
sets
i /1,3,4,6/
j/1*10/
t(i,j) /
1.(2,5,10)
3.(7,10)
4.(2,5,6)
6.(2,5)
/ ;
alias(i,ip,ipp,ippp);
*---- parameter----*
parameter
MyOrd(i,ip);
*-------------------------------
MyOrd(i,ip)=i.val+(ip.val -1)*4;
set
v(i,ip,j)'for union only'
b(i,ip,ipp,ippp,j) 'symmetric diffrence between v and v'
w(i,ip,ipp,j) 'symmetric diffrence between t and v'
;
v(i,ip,j)$(i.val<ip.val)=t(i,j)+t(ip,j);
w(i,ip,ipp,j)$(ip.val<ipp.val) =(t(i,j)+v(ip,ipp,j))-(t(i,j)*v(ip,ipp,j));
b(i,ip,ipp,ippp,j)$(i.val<ip.val and ipp.val<ippp.val and MyOrd(i,ip)
display t,v,w,b;
在您编写的代码中
MyOrd(i,ip)=i.val+(ip.val -1)*4;
试试
parameter
MyOrd(i,i1);
scalar
counter /1/
;
loop((i,i1)$(vulnerable(i) and vulnerable(i1) and i.val <i1.val ),
MyOrd(i,i1)=counter;
counter=counter+1;
);