Популярные услуги

Все письменные КМ под ключ за 3 суток! (КМ-6 + КМ-7 + КМ-8 + КМ-9 + КМ-10)
КМ-6. Динамические массивы. Семинар - выполню любой вариант!
КМ-2. Разработка простейших консольных программ с использованием ООП + КМ-4. Более сложные элементы ООП - под ключ!
Любая задача на C/C++
Одно любое задание в mYsql
Сделаю ваше задание: Лабораторная работа на Pascal / Lazarus
Любой тест по базам данных максимально быстро на хорошую оценку - или верну деньги!
Любой реферат по объектно-ориентированному программированию (ООП)
Оба семинара по программированию под ключ! КМ-2. Разработка циклических алгоритмов + КМ-3. Функции и многофайловые программы в Си
Повышение уникальности твоей работе

Полные системы связок

2021-03-09СтудИзба

Полные системы связок

Рассматриваемая нами система пропозициональных связок (Описание: land, Описание: lor, Описание: to, Описание: lnot) полна в следующем смысле:

Теорема 3 (Полнота системы связок). Любая булева функция Описание: nаргументов может быть записана в виде пропозициональной формулы.

Проще всего пояснить это на примере. Пусть, например, булева функция Описание: varphi(p,q,r)задана таблицей 1.4

Описание: (lnot p land lnot q land lnot r) lor(lnot p land q land r) lor(p land q land r) phantom{lor}

В таблице есть три строки с единицами в правой колонке — три случая, когда булева функция истинна (равна Описание: 1). Напишем три конъюнкции, каждая из которых покрывает один случай (а в остальных строках ложна), и соединим их дизъюнкцией. Нужная формула построена.

Ясно, что аналогичная конструкция применима для любой таблицы (с любым числом переменных).

Для формул подобного вида есть специальное название: формулы в дизъюнктивной нормальной форме. Более подробно: литералом называется переменная или отрицание переменной, конъюнктом называется произвольная конъюнкция литералов, а дизъюнктивной нормальной формой называется дизъюнкция конъюнктов. В нашем случае в каждый конъюнкт входит Описание: n литералов (где Описание: n— число переменных), а число конъюнктов равно числу строк с единицами и может меняться от нуля (тогда, правда, получается не совсем формула, а "пустая дизъюнкция", и ее можно заменить какой-нибудь всегда ложной формулой типа Описание: pland lnot p) до Описание: 2^n(если булева функция всегда истинна).

5. Длина построенной в доказательстве теоремы 3 формулы зависит от числа единиц: формула будет короткой, если единиц в таблице мало. А как написать (сравнительно) короткую формулу, если в таблице мало нулей, а в основном единицы?

Иногда полезна конъюнктивная нормальная форма, которая представляет собой конъюнкцию дизъюнктов. Каждый дизъюнкт состоит из литералов, соединенных дизъюнкциями. Теорему 3 можно теперь усилить так:

Теорема 4. Всякая булева функция может быть выражена формулой, находящейся в дизъюнктивной нормальной форме, а также формулой, находящейся в конъюнктивной нормальной форме.

Первая часть утверждения уже доказана. Вторая часть аналогична первой, надо только для каждой строки с нулем написать подходящий дизъюнкт.

Можно также представить функцию Описание: lnot varphiв дизъюнктивной нормальной форме, а затем воспользоваться законами Де Моргана, чтобы внести отрицание внутрь.

6. Проведите второй вариант рассуждения подробно.

Вообще говоря, определение нормальной формы не требует, чтобы в каждом конъюнкте (или дизъюнкте) встречались все переменные. (Повторять переменную больше одного раза смысла нет; если, например, переменная и ее отрицание входят в одну конъюнкцию, то эта конъюнкция всегда ложна и ее можно выбросить.)

7. Приведите пример булевой функции Описание: n аргументов, у которой любая дизъюнктивная или конъюнктивная нормальная форма содержит лишь члены длины Описание: n. (Указание: рассмотрите функцию, которая меняет свое значение при изменении значения любой переменной.)

Заметим, что при доказательстве теоремы 3 мы обошлись без импликации. Это и не удивительно, так как она выражается через дизъюнкцию и отрицание: Описание: (pto q) leftrightarrow (lnot p lor q). Мы могли бы обойтись только конъюнкцией и отрицанием, так как Описание: (plor q) leftrightarrow lnot(lnot p land lnot q),или только дизъюнкцией и отрицанием, так как Описание: (pland q) leftrightarrow lnot(lnot p lor lnot q) (обе эквивалентности вытекают из законов Де Моргана; их легко проверить и непосредственно). Как говорят, система связок Описание: land, lnot, а также система связок Описание: lor, lnotявляются полными. (По определению это означает, что с их помощью можно записать любую булеву функцию.)

8. Докажите, что система связок Описание: lnot, toполна. (Указание: как записать через них дизъюнкцию?)

А вот без отрицания обойтись нельзя. Система связок Описание: land,
lor,toнеполна — и по очень простой причине: если все переменные истинны, то любая их комбинация, содержащая только указанные связки, истинна. (Как говорят, все эти связки "сохраняют единицу".)

9. Легко понять, что любая формула, составленная только с помощью связок Описание: landи Описание: lor, задает монотонную булеву функцию (в том смысле, что от увеличения значения любого из аргументов значение функции может только возрасти — или остаться прежним). Покажите, что любая монотонная булева функция может быть выражена формулой, содержащей только Описание: land и Описание: lor.

10. Пусть Описание: varphitopsi— тавтология. Покажите, что найдется формула Описание: tau, которая включает в себя только общие для Описание: varphi и Описание: psiпеременные, для которой формулы Описание: (varphitotau) и Описание: (tautopsi) являются тавтологиями. (Более общий вариант этого утверждения, в котором рассматриваются формулы с кванторами, называется леммой Крейга.)

В принципе мы не обязаны ограничиваться четырьмя рассмотренными связками. Любая булева функция может играть роль связки. Например, можно рассмотреть связку Описание: (p texttt{ notand } q), задаваемую эквивалентностью Описание: (p texttt{ notand } q) leftrightarrow lnot(pland q) (словами: Описание: (ptexttt{ notand }q) ложно, лишь если Описание: p и Описание: q истинны). Через нее выражается отрицание (Описание: p texttt{ notand }p), после чего можно выразить конъюнкцию, а затем, как мы знаем, и вообще любую функцию. (Знакомые с цифровыми логическими схемами малого уровня интеграции хорошо знакомы с этим утверждением: достаточно большой запас схем И-НЕ позволяет реализовать любую требуемую зависимость выхода от входов.)

Другая интересная полная система связок — сложение по модулю Описание: 2, конъюнкция и константа Описание: 1 (которую можно считать Описание: 0-арной связкой, задающей функцию от нуля аргументов). Представленные в этой системе булевы функции становятся полиномами с коэффициентами в кольце вычетов по модулю Описание: 2. Идея рассматривать булевы функции как полиномы (оказавшаяся неожиданно плодотворной в последние годы) была высказана в 1927 г. российским математиком Иваном Ивановичем Жегалкиным.

Назовем мономом конъюнкцию любого набора переменных или константу Описание: 1 (которую естественно рассматривать как конъюнкцию нуля переменных). Название это естественно, так как при наших соглашениях (Описание: 1 обозначает истину, Описание: 0— ложь) конъюнкция соответствует умножению.

Назовем полиномом сумму таких мономов по модулю Описание: 2 (это значит, что Описание: 0oplus0hm =0, Описание: 0oplus 1hm=1oplus 0hm=1 и Описание: 1oplus1hm=0). Ясно, что два повторяющихся монома можно сократить (ведь сложение по модулю Описание: 2), так что будем рассматривать только полиномы без повторяющихся мономов. При этом, естественно, порядок членов в мономе (как и порядок мономов в полиноме) роли не играет, их можно переставлять.

Теорема 5 (о полиномах Жегалкина). Всякая булева функция однозначно представляется таким полиномом.

Существование искомого полинома следует из теоремы 4, так как конъюнкция есть умножение, отрицание — прибавление единицы, а дизъюнкцию можно через них выразить (получится Описание: p+q+pq). Надо только заметить, что степени не нужны: переменные принимают значения Описание: 0 и Описание: 1, так что Описание: x^n можно заменить на Описание: x.

Можно также сослаться на известное из алгебры утверждение о том, что всякая функция с аргументами из конечного поля (в данном случае это двухэлементное поле вычетов по модулю Описание: 2) задается полиномом. (Отсюда, кстати, получается новое доказательство теоремы 3.)

Далее можно заметить, что полиномов столько же, сколько булевых функций – Описание: 2^{2^n}. В самом деле, булева функция может принимать любое из двух значений в каждой из Описание: 2^nточек булева куба Описание: mathbb B^n, а многочлен может включать или не включать любой из Описание: 2^nмономов. (Мономов ровно Описание: 2^n, потому что каждый моном включает или не включает любую из Описание: n переменных.) Поэтому избытка полиномов нет, и если любая функция представима полиномом, то единственным образом.

Можно и не ссылаться на сведения из алгебры и теорему 4, а дать явную конструкцию. Это удобно сделать индукцией по Описание: n. Пусть мы уже умеем представлять любую булеву функцию от Описание: n-1 аргументов с помощью полинома. Тогда Описание: varphi(p_1,dots,p_n) можно представить как Описание: varphi(p_1,dots,p_n) = varphi(0, p_2,dots,p_{n})+[varphi(0,p_2,dots,p_{n})+varphi(1,p_2,dots,p_{n})]p_1. Остается заметить, что правую часть можно представить полиномом по предположению индукции.

Для единственности также есть другое доказательство: пусть два многочлена (имеющие степень Описание: 1 по каждой переменной) равны при всех значениях переменных. Тогда их сумма (или разность — вычисления происходят по модулю Описание: 2) является ненулевым многочленом (содержит какие-то мономы), но тождественно равна нулю. Так не бывает, и это легко доказать по индукции. В самом деле, любой многочлен Описание: A(p_1,dots,p_n) можно представить в виде Описание: A(p_1,dots,p_n)=B(p_2,dots,p_n)+p_1C(p_2,dots,p_n), где Описание: B и Описание: C— многочлены от меньшего числа переменных. Подставляя сначала Описание: p_1hm=0, а затем Описание: p_1hm=1, убеждаемся, что многочлены Описание: B и Описание: Cравны нулю во всех точках, и потому (согласно предположению индукции) равны нулю как многочлены (не содержат мономов).

11. Пусть Описание: F— произвольное поле. Назовем мультилинейной функцией полином от Описание: n переменных с коэффициентами из Описание: F, в котором все показатели степеней равны либо  Описание: 0, либо Описание: 1. (Таким образом, каждый моном в ней есть произведение коэффициента и некоторого набора переменных без повторений.) Будем рассматривать Описание: mathbb B={0,1} как подмножество Описание: F. Докажите, что всякая булева функция Описание: mathbb B^ntomathbb B однозначно продолжается до мультилинейной функции Описание: F^nto F, и коэффициенты мультилинейной функции можно считать целыми числами.

Если рассматривать произвольные булевы функции в качестве связок, возникает вопрос: в каком случае набор булевых функций образует полный базис? (Это значит, что любая булева функция представляется в виде композиции функций из набора, т. е. записывается в виде формулы, где связками служат функции набора.) Подобные вопросы вызывали в свое время большой интерес и были хорошо изучены. Начальным этапом явилось такое утверждение:

Теорема 6 (критерий Поста). Набор булевых функций является полным тогда и только тогда, когда он не содержится целиком ни в одном из пяти следующих "предполных классов":

· монотонные функции;

· функции, сохраняющие нуль;

· функции, сохраняющие единицу;

· линейные функции;

· самодвойственные функции.

(Функция Описание: fмонотонна, если она монотонно неубывает по каждому из своих аргументов. Функция Описание: fсохраняет нуль/единицу, если Описание: f(0,dots,0)hm=0 (соответственно, Описание: f(1,dots,1)hm=1). Функция Описание: fлинейна, если она представима многочленом, в котором все мономы содержат не более одной переменной. Наконец, функция Описание: fназывается самодвойственной, если Описание: f(1-p_1,dots,1-p_n)hm=1-f(p_1,dots,p_n)).

Если Вам понравилась эта лекция, то понравится и эта - 6 Нейронные сети.

Если набор содержится в одном из классов, то и все композиции также не выходят за пределы этого класса (легко проверить для каждого из классов в отдельности) и поэтому набор не является полным. Докажем обратное утверждение. Пусть для каждого класса выбрана какая-то функция, в нем не лежащая. Убедимся, что с помощью комбинаций выбранных функций можно получить все булевы функции.

У нас есть функция, не сохраняющая нуль. Подставим вместо всех аргументов одну и ту же переменную. Получится функция от одного аргумента, отображающая нуль в единицу, то есть либо константа Описание: 1, либо отрицание. Сделав то же самое с функцией, не сохраняющей единицу, получим либо константу нуль, либо отрицание. Таким образом, у нас либо есть отрицание, либо обе константы Описание: 0 и Описание: 1.

Если есть обе константы, то все равно можно получить отрицание. Возьмем немонотонную функцию. Легко понять, что она должна менять значение с единицы на нуль при изменении какого-то одного аргумента с нуля на единицу (в самом деле, будем увеличивать аргументы по одному, в какой-то момент значение функции уменьшится.) Зафиксировав значения остальных аргументов (ведь мы считаем, что константы есть), получаем отрицание.

Имея отрицание и несамодвойственную функцию, легко получить константы (если их не было). В самом деле, несамодвойственность означает, что Описание: f(x_1,dots,x_n)hm=f(1hm-x_1,dots,1hm-x_n) для каких-то значений Описание: x_1,dots,x_nhmin{0,1}. Вместо нулевых значений переменных Описание: x_1,dots,x_n подставим Описание: p, вместо единиц подставим Описание: lnot p, получится одна из констант. Вторая получится отрицанием.

Теперь у нас есть константы, отрицание и нелинейная функция Описание: f(p_1,dots,p_n). Нелинейность означает, что в ее представлении в виде многочлена есть моном, состоящий более чем из одной переменной. Пусть, например, этот моном содержит переменные Описание: p_1 и Описание: p_2. Сгруппируем члены по четырем группам и получим выражение Описание: p_1p_2 A(p_3,dots)+p_1B(p_3,dots)+p_2C(p_3,dots)+D(p_3,dots).

При этом многочлен Описание: A(p_3,dots) заведомо отличен от нуля, поэтому можно так подставить константы вместо Описание: p_3,dots,p_n, чтобы первое слагаемое не обратилось в нуль. Тогда получим либо Описание: p_1p_2+d, либо Описание: p_1p_2 + p_1+d, либо Описание: p_1p_2+p_2+d, либо Описание: p_1p_2+p_1+p_2+d. Свободный член Описание: dможно менять, если нужно (у нас есть отрицание), так что получается либо Описание: p_1p_2 (конъюнкция, и все доказано), либо Описание: p_1p_2+p_1hm=p_1(p_2+1)hm=
p_1landlnot p_2(убираем отрицание, получаем конъюнкцию, все доказано), либо Описание: p_1p_2+p_2 (аналогично), либо Описание: p_1p_2+p_1+p_2hm= (1+p_1)(1+p_2)-1hm=lnot(lnot p_1landlnot
p_2)hm=p_1lor p_2 (дизъюнкция, все доказано).

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5160
Авторов
на СтудИзбе
439
Средний доход
с одного платного файла
Обучение Подробнее