У меня есть два логических вектора a = [1,1,1]
и b = [0,1,1]
, где, очевидно, 1
означает true
и 0
для false
.
Я хочу рассчитать их внутренний продукт, используяБулева алгебраПоэтому я хочу получить результат
1*0 + 1*1 + 1*1 = 0 + 1 + 1 = 0
, потому что сложение играет роль исключительного или (XOR).
Я знаю, что часть продукта может быть выполнена следующим образом
a = [true, true, true] # could also use ones(Bool, 3)
b = [false, true, true]
bitwise_prod = a & b
но я не знаю, как сделать сумму.Есть идеи?