Студопедия

КАТЕГОРИИ:


Архитектура-(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,…, xnP 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,…, xnP 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,…, xnP 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,…, xnP 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,…, xnP 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,…, xnP 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 (x 1, x 2,…, xn) в полиноме обязательно найдется слагаемое, содержащее не менее двух сомножителей. Без уменьшения общности можно считать, что этими сомножителями являются х 1 и х 2. Преобразуем полином к виду: = х 1× х 2× f 1(х 3,…, хn) Å х 1× f 2(х 3,…, хn) Å х 2× f 3(х 3,…, хn) Å
Å f 4(х 3,…, хn). Так как f (x 1, x 2,…, xn) нелинейна, то f 1(х 3,…, хn)¹0 и существует набор значений a 3,…, an такой, что f 1(a 3,…, an)=1. Подставим этот набор в полином. Тогда f (x 1, x 2, a 3,…, an) = х 1× х 2× f 1(a 3,…, an) Å х 1× f 2(a 3,…, an) Å
Å х 2× f 3(a 3,…, an) Å f 4(a 3,…, an) = х 1× х 2 Å х 1× a Å х 2× b Å c, где a, b и с равны нулю или единице. Теперь заменим х 1 на (х 1Å b) и х 2 на (х 2Å а) – это соответствует подстановке функций вида: х или , в зависимости от значений a и b. Получим: f (x 1Å b, x 2Å а, a 3,…, an) = (х 1Å b)×(х 2Å а) Å (х 1Å ba Å (х 2Å аb Å c = = х 1× х 2 Å х 1× a Å х 2× b Å a × b Å х 1× a Å a × b Å х 2× b Å a × b Å c = х 1× х 2 Å a × b Å c. К последнему выражению добавим (a × b Å c) – это соответствует возможному размещению знака отрицания над функцией. В итоге будет получена функция двух переменных j (x 1, x 2) = х 1× х 2 = х 1 & х 2. Что и требовалось доказать.

Пусть функция алгебры логики задана полиномом Жегалкина: 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

  Т0 Т1 S M L
  + + +
  + + +
+ +

Отметим, что все замкнутые классы попарно различны. Это хорошо видно из таблицы 17, где знаком «+» отмечена принадлежность функций 0, 1 и к классу, а знаком «–» отсутствие соответствующей функции в классе.




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 1775; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.