假设我有两个二进制变量A和B(存储大小是无限的,我总是可以增加此问题的大小)。
C计算如下
C = A & B;
我可以仅使用加,减和二进制补码(+,-,〜)来计算C吗?
为什么我要问这个问题。我有一个优化约束,规定给定集合X,Y和Z的值,如果X与Y相交不为空,Y与Z相交为非空,则X和Y的交集等于Y与Z的交集。我想写这个约束以可以在整数程序中使用的格式。我的想法是,如果我将每个集合表示为二进制值(每个位代表集合中是否存在元素),则可以复制所需的所有集合操作。但是,为此,我需要能够仅使用加,减,一个补码来表示and运算(它将表示两个集合的交集)。