Currently all the options of or, and, xor operates directly.
It's possible to simplify the operation before evaluating the intersection of curves (a expensive operation).
Example, for any subsets A and B:
A + A * B can be easily simplified to A
The possible solutions are:
LazyNot, LazyOr and LazyAnd. But some structure is repeated:
Not[Or[A, B]] = And[Not[A], Not[B]]
Not[Or[A, B]] = And[Not[A], Not[B]]
- Use only two: Either
LazyNot + LazyAnd or LazyNot + LazyOr
- Use only one:
NAND port