when I use Simplify
or FullSimplify
in Mathematica it often simplifies it using all the existing boolean operations. For example, consider the following:
FullSimplify[! (x && y && z) && ! (x && ! y && ! z) && ! (! x && ! y && z)]
Simplify[! (x && y && z) && ! (x && ! y && ! z) && ! (! x && ! y && z)]
Both the code segment above are going to output the following:
! (x ⊻ z ⊻ (x && y) ⊻ (z && y) ⊻ (z && x && y))
I do not want the Xor
gates in the solution. Is there a way we can give restrictions to the two functions, such that it gives the simplest possible formula but without using other gates except Or
, Not
, and And
.
I've tried BooleanMinimize
with "CNF" and "DNF", but these two things do not mean that the formula is the simplest (in terms of numbers of operation). I simply want a "Simplify" that does not use other operators except Not
, And
, and Or
. Thanks!
Simplify
calledExcludedForms
. That can let you tellSimplify
thatXor
cannot be considered as part of the solution.Simplify
usesLeafCount
, which is roughly a count of the number of symbols needed to write an expression, to determine what is simplest. Without usingXor
I'm not sure I see any expression with fewer symbols that is equivalent to your problem. Can you show the simplest result with fewer symbols? $\endgroup$Xor
. However what I want here is that the "simplest possible form" withoutXor
. Which can be solved usingExcludedForms
argument. Thank you for your reply. $\endgroup$