Я хочу написать генератор таблиц правды в качестве личного проекта.
Есть несколько веб-онлайн-сервисов здесь и здесь.
(Example screenshot of an existing Truth Table Generator
)
У меня есть следующие вопросы:
- Как следует анализировать выражения типа: ((P = > Q) и (Q = > R)) = > (P = > R)
- Должен ли я использовать генератор синтаксического анализатора, например ANTLr или YACC, или использовать прямые регулярные выражения?
- Как только я проанализирую выражение, как мне нужно генерировать таблицу истинности? Каждая часть выражения должна быть разделена на самые маленькие компоненты и перестроена с левой стороны таблицы вправо. Как бы я оценил что-то подобное?
Может ли кто-нибудь дать мне советы относительно разбора этих произвольных выражений и в конечном итоге оценить анализируемое выражение?