Python

Как преобразовать в паскале?

(x → y) ∧ (y ≡ ¬z) ∧ (z ∨ w)
В Паскале? Вы собираетесь разбирать это выражение и преобразовывать его в синтаксическом дереве? Или в чём задача состоит?

Само преобразование в дизъюнктивную нормальную форму, если что, примерно такое:
 (x → y) ∧ (y ≡ ¬z) ∧ (z ∨ w)  =  (¬x ∨ y) ∧ ((y ∧ ¬z) ∨ (¬y ∧ z)) ∧ (z ∨ w)  =
(по закону дистрибутивности)
= (¬x ∧ (y ∧ ¬z) ∧ z) ∨ (¬x ∧ (y ∧ ¬z) ∧ w) ∨
∨ (¬x ∧ (¬y ∧ z) ∧ z) ∨ (¬x ∧ (¬y ∧ z) ∧ w) ∨
∨ (y ∧ (y ∧ ¬z) ∧ z) ∨ (y ∧ (y ∧ ¬z) ∧ w) ∨
∨ (y ∧ (¬y ∧ z) ∧ z) ∨ (y ∧ (¬y ∧ z) ∧ w) =
(произведения с множителями вида ¬z ∧ z уходят, т.к. равны 0,
и раскрываем скобки внутри произведений)
= (¬x ∧ y ∧ ¬z ∧ w) ∨ (¬x ∧ ¬y ∧ z ∧ z)
∨ (¬x ∧ ¬y ∧ z ∧ w) ∨ (y ∧ y ∧ ¬z ∧ w) =
(по закону идемпотентности убираем повторяющиеся множители)
= (¬x ∧ y ∧ ¬z ∧ w) ∨ (¬x ∧ ¬y ∧ z) ∨ (¬x ∧ ¬y ∧ z ∧ w) ∨ (y ∧ ¬z ∧ w)
(упрощаем суммы вида (x ∧ z) ∨ x = x)
= (¬x ∧ ¬y ∧ z) ∨ (y ∧ ¬z ∧ w)
Сергей Болквадзе
Сергей Болквадзе
54 053
Лучший ответ
Сергей Митрофанов Нет.....Это значит расписать его с If