Булева формула

Материал из testwiki
Перейти к навигации Перейти к поиску

Булева формула — терм над некоторым множеством булевых функций. Более развёрнуто: пусть F — некоторое множество булевых функций, X — множество символов переменных, S={«,» «(» «)»} — множество символов пунктуации, причём все три множества попарно непересекаются. Булева формула над множеством функций F и множеством переменных X индуктивно определяется как слово над алфавитом FXS следующим образом:

  1. слово x, где xX — формула;
  2. слово c, где cF и c имеет арность 0 — формула;
  3. слово f(φ1,,φn), где fF, f имеет арность n>0, φ1,,φn — некоторые формулы, — формула;
  4. любая формула получена за конечное число применения шагов 1-3.

Термин булева формула назван по имени Джорджа Буля.

Если переменная x входит в множество X — это ещё не значит, что она встречается в формуле. Подмножество X(Φ)X переменных, которые встречаются в формуле, называется множеством переменных формулы Φ. Оно всегда конечно. Формулы, множество переменных которых пусто, называются замкнутыми.

Пусть x~=(x1,,xn) — конечный набор (так в теории дискретных функций принято называть кортежи, пустые кортежи тоже допускаются) переменных такой, что X(Φ)x~. Значением формулы Φ на наборе значений α~=(α1,,αn)E2n переменных x~ определяется следующим образом:

  • если Φ=xi, то
Φ[x~,α~]=αi;
  • если Φ=f(φ1,,φn), то
Φ[x~,α~]=f(φ1[x~,α~],,φn[x~,α~]).

Говорят, что формула Φ задаёт функцию f относительно набора переменных x~ при если функция f определяется соотношением:

f(α1,,αn)=Φ[x~,α~]

Формула называется тождественно истинной (ложной), если она истинна (ложна) на любых наборах. Две булевы формулы называются эквивалентными тогда и только тогда, когда они равны на любых наборах.

Всего существует 22n n-арных булевых функций, поэтому существует столько же классов эквивалентных булевых формул над множеством переменных мощности n.

Литература

Шаблон:Math-stub Шаблон:Нет ссылок