Читайте также:
|
|
Булевой функцией от n переменных называется функция из множества Z/ 2n Z во множество {0,1}. Для булевой формулы в базисе булевых функций B = {g1,g2,...} от n переменных дадим индуктивное определение:
а) каждая переменная x i есть формула;
б) если g(x1,...,xn)ÎB и F1,...,Fr суть формулы, то g(F1,...,Fr) есть формула.
Булевы формулы дают аналитический способ задания булевых функций. Ясно, что одна и та же функция может быть записана с помощью различных формул. Обычно булевы функции представляются формулами в системе операций И, ИЛИ, НЕ.
Сложностные характеристики булевых формул определяются с помощью нескольких характеристик. Наиболее распространенными являются следующие:
L (F) - число вхождений символов переменных и констант в формулу F в некотором базисе функций. Частным случаем L (F) является число конъюнкций в дизъюнктивной нормальной форме L (D).
Lф(F) - число функциональных элементов в схеме, моделирующей F, с помощью замыкающих и размыкающих контактов.
Сложностью булевой функции f в классе формул (L (f)) называется сложность минимальной формулы, реализующей f. Введем понятие функции Шеннона
L (n) = max L (f)
f: Z/ 2n Z ® {0,1},
как сложности самой сложной функции, отображающей вход длиной n бит в выход длиной 1 бит.
Любой набор булевых формул можно представить в виде
у = а 0 + а iХi + а ijХiХj + а ijkХiХjХk +...+ а 12...nХ1Х2...Хn ,
где х = (Х1,Х2,...Хn); сложение выполняется по модулю 2. Здесь вектор а 0 называется вектором сдвига, векторы а i задают линейную часть преобразования, а векторы а 12,... а 12...n - нелинейную часть.
Наиболее простым является случай, когда нелинейные слагаемые отсутствуют. Тогда преобразование описывается матричным уравнением, где L - невырожденная квадратная (0,1)-матрица, у = L x + a (знак транспонирования вектора опускается) и называется аффинным преобразованием. Множество взаимно однозначных аффинных преобразований образует группу по умножению. Пусть у = L x + a, u = M у + b. Тогда u = ML x + M a + b = L’ x + a ’. Единичным элементом группы является преобразование х = Е х + 0, где Е - единичная матрица (содержит единицы на главной диагонали, остальные элементы - нулевые), 0 - нулевой вектор. К каждому взаимно однозначному аффинному преобразованию есть обратное аффинное. Если у = L x + a, то, умножая слева на L-1, получим L‑1 у = L-1L x + L-1 a. Поэтому х = L-1 у + L-1 a = L’ у + а ’. Заметим, что группа аффинных преобразований некоммутативна: МL ¹ LM.
Если вектор сдвига нулевой, то преобразование называется линейным. Линейные и аффинные преобразования образуют подгруппы в группе всевозможных обратимых преобразований (подстановок).
Дата добавления: 2015-12-01; просмотров: 43 | Нарушение авторских прав