КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Замыкание систем функций алгебры логики
Рассмотрим ещё два понятия: замыкания и замкнутого класса, которые тесно связаны с понятием полноты. Пусть М Í Р 2 – некоторое подмножество множества всех функций алгебры логики. Замыканием М называется множество тех истинностных функций, которые могут быть выражены формулой над М. Замыкание М обозначается [ M ]. Примеры: 1) Пусть М = Р 2, тогда [ M ] = Р 2. 2) Пусть М = {¯}, тогда [ M ] = Р 2. 3) Пусть М = {1,Å}, тогда [ M ] = { f (x 1,…, xn)Î P 2: f (x 1,…, xn) = c 0Å c 1 x 1żŠcnxn, где сi =0 или 1}. Т.е. [ M ] – это множество функций, представимых линейным выражением или класс всех линейных функций. Свойства замыкания: 1) Для всякого множества функций алгебры логики М замыкание «шире» самого множества М. Или [ M ] Ê М. 2) Для всякого множества функций М замыкание замыкания М есть само замыкание М. Или [[ M ]] = [ М ]. 3) Если множество функций М 1 является подмножеством множества функций М 2, то замыкание М 1 является подмножеством замыкания М 2. Или если М 1 Í М 2, то [ М 1] Í [ М 2]. 4) Объединение замыканий двух множеств является подмножеством замыкания объединения этих множеств. Или [ М 1] È [ М 2] Í [ М 1 È М 2]. Класс функций М называется функционально замкнутым или просто замкнутым, если его замыкание совпадает с ним самим, т.е. [ M ] = М. Так, например, множество всех функций алгебры логики – функционально замкнутый класс. А множества {Ø,&}, {Ø,Ú}, {Ø,®} не являются замкнутыми классами, поскольку их замыканием является множество всех функций алгебры логики. То же можно сказать и о других полных системах функций. Тем самым, определение полной системы функций можно сформулировать в терминах замыканий: система функций М является функционально полной, если её замыкание совпадает с множеством всех функций алгебры логики, т.е. [ M ]= P 2. § 1.15. Важнейшие замкнутые классы 1) Класс функций, сохраняющих ноль. Обозначение: Т0. Т0={ f (x 1, x 2,…, xn)Î P 2: f (0,0,…,0)=0}, таким образом, этот класс состоит из тех функций алгебры логики, которые на наборе, состоящем из одних нулей, имеют значение ноль. Или, что то же самое, в верхней строке таблицы истинности значение этих функций равно нулю. И поскольку, ровно половина всех функций в верхней строке равны нулю, то число функций от n переменных, относящихся к классу Т0, равно . Из элементарных функций к этому классу относятся следующие: 0, х, &, Ú, Å. А такие, как 1, , º, ® не принадлежат классу Т0. Утверждение: Т0 – замкнутый класс, т.е. [Т0]=T0. Доказательство: По свойствам замыканий Т0 Í [Т0]. Покажем, что [Т0] Í Т0. Для этого рассмотрим произвольную функцию ФÎ [Т0]. По определению замыкания функция Ф выражается формулой через функции класса Т0, т.е. Ф= f (f 1, f 2,…, fm), где функции f, f 1, f 2,…, fm ÎТ0. Тогда Ф(0,0,…,0)= f (f 1(0,…,0), f 2(0,…,0),…, fm (0,…,0)) = f (0,…,0)=0. Таким образом, функция ФÎТ0. И так как Ф – произвольная функция из замыкания, то [Т0] Í Т0. И, следовательно, [Т0] = Т0. 2) Класс функций, сохраняющих единицу. Обозначение: Т1. Т1={ f (x 1, x 2,…, xn)Î P 2: f (1,1,…,1)=1}, таким образом, этот класс состоит из тех функций алгебры логики, которые на наборе, состоящем из одних единиц, имеют значение 1. Или, что то же самое, в нижней строке таблицы истинности значение этих функций равно единице. И, поскольку, ровно половина всех функций в нижней строке равны единице, то число функций от n переменных, относящихся к классу Т1, равно . Из элементарных функций к этому классу относятся следующие: 1, х, &, Ú, º, ®. А такие, как 0, , Å не принадлежат классу Т1. Утверждение: Т1 – замкнутый класс, т.е. [Т1]=T1. Доказательство: По свойствам замыканий Т1 Í [Т1]. Покажем, что [Т1] Í Т1. Для этого рассмотрим произвольную функцию ФÎ [Т1]. По определению замыкания функция Ф выражается формулой через функции класса Т1, т.е. Ф= f (f 1, f 2,…, fm), где функции f, f 1, f 2,…, fm ÎТ1. Тогда Ф(1,1,…,1)= f (f 1(1,…,1), f 2(1,…,1),…, fm (1,…,1)) = f (1,…,1)=1. Таким образом, произвольно взятая функция Ф из [Т1] принадлежит и классу Т1. Поэтому [Т0] Í Т0. Следовательно [Т0] = Т0. 3) Класс самодвойственных функций. Обозначение: S. S ={ f (x 1, x 2,…, xn)Î P 2: f (x 1, x 2,…, xn)= f *(x 1, x 2,…, xn) }, таким образом, этот класс состоит из тех функций алгебры логики, которые совпадают с двойственными к ним. Заметим, что такие функции на противоположных наборах принимают противоположные значения, т.к. f (x 1, x 2,…, xn)=. Таблицы истинности этих функций имеют зеркальную симметрию верхней половины строк таблицы и инвертированной нижней половины строк относительно середины всех строк таблицы. Тем самым, самодвойственные функции полностью определяются своими значениями на первой половине строк таблицы. Число таких строк для функций от n переменных равно =2 n -1 и, следовательно, число функций от n переменных, относящихся к классу S, равно . Из элементарных функций самодвойственными являются только тождественная функция х и отрицание . Утверждение: S – замкнутый класс, т.е. [ S ]= S. Доказательство: По свойствам замыканий S Í [ S ]. Покажем, что [ S ] Í S. Для этого рассмотрим произвольную функцию ФÎ[ S ]. По определению замыкания функция Ф выражается формулой через функции класса S, т.е. Ф= f (f 1, f 2,…, fm), где функции f, f 1, f 2,…, fm Î S. Тогда Ф*= f *(f 1*, f 2*,…, fm *) = f (f 1, f 2,…, fm)=Ф. Таким образом, функция ФÎ S. И так как Ф – произвольная функция из замыкания, то [ S ] Í S. Отсюда следует, что [ S ] = S. Лемма о несамодвойственной функции. Если функция алгебры логики не принадлежит классу самодвойственных функций, то всегда можно указать такую замену её переменных функциями х и , что в результате этой замены будет получена константа 0 или 1. Доказательство: Доказательство имеет конструктивный характер и показывает, как подобрать такую замену переменных. Рассмотрим произвольную несамодвойственную функцию от n переменных f (x 1, x 2,…, xn). Так как f S, то существует такой набор значений переменных a 1, a 2,…, an, что f (a 1, a 2,…, an), а это значит, что f (a 1, a 2,…, an) =. Заметим, что для самодвойственной функции такого набора не существует по определению. Введем также в рассмотрение функции gi (x)= xai, где i =1,2,…, n, и gi (x) равно либо х, либо , в зависимости от значения ai. Произведем замену переменных x 1, x 2,…, xn в функции f на g 1(x), g 2(x),…, gn (x) соответственно. Покажем, что полученная в результате этой замены функция Ф(х)= f (g 1(x), g 2(x),…, gn (x)) является константой. Действительно, т.к. Ф(х)= f (xa 1, xa 2,…, xan), то Ф(0)= f (0 a 1,0 a 2,…,0 an), но 0 ai равно =1, если ai =0, и равно 0, если ai =1, тем самым, 0 ai =. Тогда Ф(0)==(по условию) f (a 1, a 2,…, an) = f (1 a 1,1 a 2,…,1 an) = Ф(1). Т.е. Ф(х) имеет постоянное значение для всех значений х, и Ф(х) – константа. Пусть функция f (х, y, z)=. Заметим, что f (0,0,0)= f (1,1,1). Поэтому набор (1,1,1) можно взять для формирования функций gi (x)= xai, где i =1,2,3. На выбранном наборе все эти функции равны тождественной функции х. Выполним замену каждой переменной на х. Получим: f (х, х, х)= . Понятно, что никакая замена переменных на х или в самодвойственной функции не может привести к константе, а только к х или . 4) Класс монотонных функций. Обозначение: М. Функция f (x 1, x 2,…, xn)Î P 2 называется монотонной, если для любых двух наборов a =(a 1, a 2,…, an) и b =(b 1, b 2,…, bn) таких, что ai £ bi, где i =1,2,…, n, следует f (a) £ f (b). Про такие наборы говорят, что набор a предшествует набору b, и обозначают a £ b. Из элементарных функций монотонными являются 0, 1, тождественная функция х, &, Ú. А функции , ®, ½, ¯, Å, º монотонными не являются. Утверждение: М – замкнутый класс, т.е. [ М ]= М. Доказательство: По свойствам замыканий М Í [ М ]. Покажем, что [ М ] Í М. Т.к. функция х Î М, то достаточно рассмотреть произвольную функцию ФÎ[ М ]. По определению замыкания функция Ф выражается формулой через функции класса М, т.е. Ф(x 1, x 2,…, xn)= f (f 1, f 2,…, fm), где функции f, f 1, f 2,…, fm Î М. Пусть a =(a 1, a 2,…, an) и b =(b 1, b 2,…, bn) – два набора значений переменных (x 1, x 2,…, xn) таких, что ai £ bi, где i =1,2,…, n. Эти наборы определяют наборы значений переменных для функций f 1, f 2,…, fm: а 1=(a 11, a 12,…, a 1 s 1) и b 1=(b 11, b 12,…, b 1 s 1),…, аm =(am 1, am 2,…, amsm) и bm =(bm 1, bm 2,…, bmsm), которые (вследствие того, что a £ b) также попарно предшествуют друг другу. Т.е. а 1 £ b 1 и а 2 £ b 2 и … аm £ bm. Но функции f 1, f 2,…, fm монотонны, поэтому f 1(а 1) £ f 1(b 1), f 2(а 2) £ f 2(b 2), …, fm (аm) £ fm (bm). Тогда рассматривая a ¢=(f 1(а 1), f 2(а 2),…, fm (аm)) и b ¢=(f 1(b 1), f 2(b 2), …, fm (bm)) как наборы значений переменных функции f, имеем: a ¢ £ b ¢ и f (a ¢) £ f (b ¢) ввиду монотонности f. Но Ф(a)= f (a ¢) и Ф(b)= f (b ¢), т.е. для a £ b Þ Ф(a) £ Ф(b). И, следовательно, функция ФÎ М. Но Ф – произвольная функция из замыкания, поэтому [ М ] Í М. Отсюда по определению равных множеств следует: [ М ] = М. Лемма о немонотонной функции. Если функция алгебры логики не принадлежит классу монотонных функций, то из неё путем подстановки констант 0, 1 и функции х на места переменных можно получить функцию . Доказательство: Доказательство имеет конструктивный характер и показывает, как подобрать такую замену переменных. Рассмотрим произвольную немонотонную функцию от n переменных f (x 1, x 2,…, xn). Так как f М, то существуют такие наборы значений переменных a и b, что a £ b и f (a) > f (b). Если наборы a и b смежны, т.е. различаются только одной i –той координатой (при этом в наборе a на i –том месте стоит ноль, а в наборе b – единица), то цель достигнута – можно сделать замену переменных (x 1, x 2,…, xn) на (a 1,…, ai‑1, x, ai+1,…, an). После этой замены будет получена функция одной переменной g (x)= f (a 1,…, ai‑1, x, ai+1,…, an). Причем g (0)= f (a 1,…, ai‑1,0, ai+1,…, an) = f (a), а g (1)= f (a 1,…, ai‑1,1, ai+1,…, an)= f (b). И так как f (a) > f (b), то g (0) > g (1), а это значит, что g (0)=1 и g (1)=0, т.е. g (x)=. Если же наборы a и b несмежны, то они отличаются в нескольких координатах, и пусть число этих координат равно k (где k >1). И так как a £ b, то в наборе a эти k координат равны 0, а в наборе b они равны 1. Поэтому между наборами a и b можно вставить (k ‑1) промежуточных наборов g 1, g 2,…,g k-1 таких, что a £ g 1 £ g 2 £…£ g k-1 £ b, образующих цепь смежных наборов, связывающих a и b. И так как f (a) > f (b), то в этой цепи существуют два смежных набора g i и g i+1 (где g i £ g i+1), для которых f (g i) > f (g i+1). Тогда также, как и в первом случае, эти наборы g i и g i+1 можно использовать для замены. Пусть функция f (х, y)= х ® у. Заметим, что на наборах (0,0) и (1,0), которые являются смежными, значения функции находятся в соотношении: f (0,0)> f (1,0). Поэтому можно выполнить замену переменной у на 0, а переменную х оставить без изменений. После замены получим: f (х,0)= х ®0=. 5) Класс линейных функций. Обозначение: L. L ={ f (x 1, x 2,…, xn)Î P 2: f (x 1, x 2,…, xn)= c 0Å c 1× x 1Å c 2× x 2Å…Å cn × xn, где c 0, c 1, c 2,…, cn равны 0 или 1}. Таким образом, этот класс состоит из тех функций алгебры логики, которые представимы линейным выражением. Различные линейные функции от n переменных отличаются друг от друга составом слагаемых, входящих в их линейные выражения. Этот состав определяется значением коэффициентов: если соответствующий коэффициент равен нулю, то слагаемое отсутствует. И так как число коэффициентов равно n +1, то число функций от n переменных, относящихся к классу L, равно 2 n +1. Из элементарных функций линейными являются тождественная функция х, отрицание , константы 0 и 1, а также Å и º. Утверждение: L – замкнутый класс, т.е. [ L ]= L. Доказательство: По свойствам замыканий L Í [ L ]. Покажем, что [ L ] Í L. Т.к. х Î[ L ], то достаточно рассмотреть произвольную функцию ФÎ[ L ]. По определению замыкания функция Ф выражается формулой через функции класса L, т.е. Ф= f (f 1, f 2,…, fm), где функции f, f 1, f 2,…, fm Î L. Иными словами функция Ф представляет из себя «линейное выражение от линейных выражений», а оно в свою очередь линейно. Таким образом, функция ФÎ L. И так как Ф – произвольная функция из замыкания, то [ L ] Í L. Следовательно, [ L ] = L. Лемма о нелинейной функции. Если функция алгебры логики от n переменных f (x 1, x 2,…, xn) нелинейна, то из неё можно получить х 1& x 2 путем подстановки констант 0 или 1 и функций х и , а также, возможно, размещением знака отрицания над f. Доказательство: Рассмотрим полином Жегалкина для функции f: Пусть функция алгебры логики задана полиномом Жегалкина: f (х, y, z, t) = xyz Å yzt Å xy Å zt Å xz Å x Å 1. Здесь для компактности записи пропущен знак «×». Выполним преобразования полинома, как указано в доказательстве леммы: f (х, y, z, t) = xy (z Å 1) Å x (z Å 1) Å yzt Å (zt Å 1). Таким образом, в соответствии с введенными в лемме обозначениями f 1(z, t) = z Å 1, f 2(z, t) = z Å 1, f 3(z, t) = zt, f 4(z, t) = zt Å 1. Заметим, что f 1(z, t) = 1 при z = 0 и t = 0 или t = 1. Для определенности рассмотрим набор (z, t) = (0,1). На выбранном наборе f 2(0,1) = 1, f 3(0,1) = 0 и f 4(z, t) = 1, т.е. a, b и с равны соответственно 1, 0 и 1. И f (х, y,0,1) = xy Å x Å 1. Заменим теперь у на у Å 1. Тогда f (х, y Å1,0,1) = x (y Å 1) Å x Å 1= xy Å x Å x Å 1= xy Å 1. Добавим к последнему выражению (a × b Å c)=1 и j (х, у) = х × у. Тем самым, с помощью замены х на х, у на , z на ноль и t на единицу, а также установки знака отрицания над функцией получена конъюнкция. Таблица 17
Отметим, что все замкнутые классы попарно различны. Это хорошо видно из таблицы 17, где знаком «+» отмечена принадлежность функций 0, 1 и к классу, а знаком «–» отсутствие соответствующей функции в классе.
Дата добавления: 2014-01-07; Просмотров: 1775; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |