Как решить логическое выражение, заданное в строковом формате, с помощью Python?
Я пытался решить логические выражения, указанные в строковом формате как
( ( i_0 & i_1 ) ^ i_2 ) ^ i_3
Используя пакет PyEDA, я могу преобразовать текст в выражение следующим образом:
from pyeda.inter import *
be_text = "( ( i_0 & i_1 ) ^ i_2 ) ^ i_3"
be = expr(be_text)
Количество переменных (i_0, i_1, i_2, ...) может доходить до 1000 секунд. Выполняемые операции - это базовые логические операции, а именно. И, ИЛИ, НЕ, XOR
Теперь, как я могу предоставить входные данные для этого выражения и решить его? Входные данные могут быть константой или массивом NumPy.
Правильно ли я все делаю, или PyEDA можно использовать только для преобразования текста в выражения?
Пожалуйста, помогите, если есть другой способ решить эту проблему.
Спасибо!