You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
GraphBLAS does not have the full set of all 16 possible boolean binary operators. It has only 11 of them. See the table below:
x: 0 0 1 1
y: 0 1 0 1
-------------
z = 0 0 0 0 0 (zero function, not predefined)
z = (x && y) 0 0 0 1 AND, MIN, TIMES
z = (x > y) 0 0 1 0 GT
z = x 0 0 1 1 FIRST
z = (x < y) 0 1 0 0 LT
z = y 0 1 0 1 SECOND
z = (x != y) 0 1 1 0 XOR, MINUS, NE
z = (x || y) 0 1 1 1 OR, MAX, PLUS
z = ~(x || y) 1 0 0 0 (nor(x,y) function, not predefined)
z = (x == y) 1 0 0 1 LXNOR, EQ
z = ~y 1 0 1 0 (not(y), not predefined as a binary op)
z = (x >= y) 1 0 1 1 GE, also same as "x implies y"
z = ~x 1 1 0 0 (not(x), not predefined as a binary op)
z = (x <= y) 1 1 0 1 LE, also same as "y implies x"
z = ~(x && y) 1 1 1 0 (nand(x,y) function, not predefined)
z = 1 1 1 1 1 ONEB
We should add the 5 missing functions, as boolean binary operators:
GrB_ZEROB_BOOL: z = false. This might also be GrB_ZEROB_T for any domain T.
GrB_NFIRST: z = not(x)
GrB_NSECOND: z = not(y)
GrB_NAND: z = not (and (x,y))
GrB_NOR: z = not (or (x,y))
All domains for these binary operators are GrB_BOOL. These functions are useful in their own right, but are also required by #67
The text was updated successfully, but these errors were encountered:
GraphBLAS does not have the full set of all 16 possible boolean binary operators. It has only 11 of them. See the table below:
We should add the 5 missing functions, as boolean binary operators:
All domains for these binary operators are GrB_BOOL. These functions are useful in their own right, but are also required by #67
The text was updated successfully, but these errors were encountered: