Matlab simplify boolean expression
68 visualizzazioni (ultimi 30 giorni)
Geoff il 27 Mag 2012
(A && B) || (A && ~B)
Is logically equivalent to:
The reason is that both terms require A to be true, and the whole expression evaluates to true regardless of whether B is true or false. If you drew up a truth table for this, it'd be immediately obvious.
[EDIT] Hadn't clicked that the poster was talking about the symbolic math toolbox.
simplify( (a & b) | (a & ~b) )
Alexander il 29 Mag 2012
You have copied a MuPAD command. Did you use it inside a MuPAD Notebook? If not, type this at the MATLAB command prompt:
This will open a MuPAD Notebook. There, paste the input near the bracket (red text should appear) and press enter:
[ simplify((a and b) or (a and (not b)), logic)
If you don't want to open a MuPAD notebook, try this in MATLAB:
evalin(symengine, 'simplify((a and b) or (a and (not b)), logic)')
Though if you prefer to stay in MATLAB, you should take what Geoff suggests:
syms a b;
simplify((a & b) | (a & ~b))
(For some reason it did not work for me with the comma between a and b).