Comment #11 on issue 1894 by asmeurer: Automatic rewriting of boolean functions
http://code.google.com/p/sympy/issues/detail?id=1894

Yes, except they should still evaluate literals (like Implies(True, False) => False).

For some arguments as to why this should be done, consider what is "simpler," Implies(Xor(x, y), y) or Or(And(Or(Not(x), y), Or(Not(y), x)), y). Sure, the second one is easier to deal with in an algorithm, but if you're a user trying to use the logic module (like for assumptions or something), trying to even recognize that the latter is the same as the former is a pain.

On the other hand, calling .nnf() or whatever on whatever logical statement you want to be in a normal form is trivial, and it should make the code more explicit and help avoid bugs.

--
You received this message because you are subscribed to the Google Groups 
"sympy-issues" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sympy-issues?hl=en.

Reply via email to