Set Operator Aliases
Opened this issue · 3 comments
I might just be unable to find this function, but the binary diff operator (including operator overload for the - operator) is missing for oxidd::bdd_function
and oxidd::bcdd_function
. This operator is equivalent to f & ~g
. With complement edges, one can safely do this using and and not; but without them, one needs a function to not compute/construct ~g
.
Ah, it's called imp_strict
.
Note that compared to diff
, imp_strict
has operands swapped. I’d say this is a weak point of the current API, we should provide diff
(and all other set operators) as aliases to the respective operators on Boolean functions. At some point, I also want to merge the BooleanVecSet
trait (for sets of Boolean vectors; currently only part of the Rust API) into the BooleanFunction
trait.
Yes, one can indeed interpret this issue as a missing alias.