boolean.py icon indicating copy to clipboard operation
boolean.py copied to clipboard

Simplifying "not (True and False) or True" results in '_TRUE' object is not callable

Open 1v-0 opened this issue 6 years ago • 1 comments

from boolean import BooleanAlgebra
BooleanAlgebra().parse("not (True and False) or True").simplify()

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/ivigan/topic-streams-tools/env/lib/python3.6/site-packages/boolean/boolean.py", line 1170, in simplify
    expr = expr.literalize()
  File "/home/ivigan/topic-streams-tools/env/lib/python3.6/site-packages/boolean/boolean.py", line 603, in literalize
    args = tuple(arg.literalize() for arg in self.args)
  File "/home/ivigan/topic-streams-tools/env/lib/python3.6/site-packages/boolean/boolean.py", line 603, in <genexpr>
    args = tuple(arg.literalize() for arg in self.args)
  File "/home/ivigan/topic-streams-tools/env/lib/python3.6/site-packages/boolean/boolean.py", line 1035, in literalize
    expr = self.demorgan()
  File "/home/ivigan/topic-streams-tools/env/lib/python3.6/site-packages/boolean/boolean.py", line 1084, in demorgan
    return op.dual(*(self.__class__(arg).cancel() for arg in op.args))
TypeError: '_TRUE' object is not callable

1v-0 avatar May 03 '19 20:05 1v-0

Same here for OR(FALSE, NOT(AND(TRUE, TRUE))), which gives TypeError: '_FALSE' object is not callable.

kkew3 avatar Jun 15 '19 02:06 kkew3