Simplify Boolean/logical expression
9 views (last 30 days)
Show older comments
Sara Nikdel
on 14 Aug 2020
Commented: Sara Nikdel
on 14 Aug 2020
I have the following commands:
syms a b c;
S = simplify( ((a|b) | a) & (a|c) );
When I run them, it gives me the following answer:
(a | b) & (a | c)
which is correct, but it is not the simplest answer. The simplest answer is this:
a | (b & c)
For what I am working on, when 'a' appears two times, it changes the result and calculation. So I get the wrong outputs. I was wondering if there is a way to get the simplest answer such as the second one for a Boolean expression or if I can make changes to the current commands to get the second answer?
Note: This is just an example, I will have about 15-20 elements/sets in my Boolean expression.
0 Comments
Accepted Answer
More Answers (1)
Cris LaPierre
on 14 Aug 2020
You could try using the "Steps" name-value pair
S = simplify( ((a|b) | a) & (a|c) ,"Steps",50)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!