나는 Sympy와 부울 표현식의 동등성을 결정하기 위해 노력했습니다,하지만 더 복잡한 식파이썬에서 두 개의 상징적 인 부울 표현식이 같은지 여부를 결정하는 방법이 있습니까?
from sympy.abc import x, y
from sympy.logic.boolalg import *
print(Equivalent(x, x))
print(Equivalent(x, x & True))
print(Equivalent(x | y, y | x))
print(Equivalent(x | (x & y), x | y))
print(Equivalent(~x & ~y, ~(x | y)))
결과의 동등성을 감지하지 못하는 것 같다
>>>True
>>>True
>>>True
>>>Equivalent(Or(x, y), Or(And(x, y), x))
>>>Equivalent(Not(Or(x, y)), And(Not(x), Not(y)))
가 결정하는 방법이 있나요 두 개의 상징적 인 부울 표현식이 파이썬에서 동일하든 그렇지 않습니까?
이것은 일반적으로 필요한 것보다 많은 작업을 수행합니다. 당신은 정말로 'Equivalent'의 부정이 만족 스러운지 ('만족할 만하다 (Equivalent (a, b))'), 그것이 '평등'한 것인지를 알고 싶을뿐입니다. – asmeurer
@asmeurer 그러면 이것을 나타내는 해답을 게시해야합니다. x | ~ y는 아무런 의미가 없습니다. –
@ Wrzlprmft의 답변과 같으므로 답변을 게시하지 않았습니다. – asmeurer