Алгоритм преобразования логических формул в булеву алгебру заключается в приведении формулы к равносильной ей формуле, содержащей только операции конъюнкции, дизъюнкции и инверсии. 2
Некоторые шаги алгоритма:
- Элиминация операций. 1 Выражение всех операций через операции конъюнкции, дизъюнкции и отрицания. 1
- Протаскивание отрицаний. 1 Сведение всех отрицаний к переменным (используются законы Де Моргана и снятия двойного отрицания). 1
- Раскрытие скобок. 1 Раскрытие скобок, являющихся операндами конъюнкции, и приведение к ДНФ. 1
- Приведение подобных. 1 Удаление с помощью свойства идемпотентности повторных вхождений переменных в каждую конъюнкцию и повторных вхождений конъюнкций в дизъюнкцию. 1
- Расщепление переменных. 1 Добавление в каждую конъюнкцию, содержащую не все переменные, недостающих переменных. 1
При преобразовании логических формул используют законы алгебры логики, правила операций с логическими константами, а также некоторые приёмы, применяемые в обычной алгебре, например, вынесение общего множителя за скобки. 4