- •Введение………………………………………………………………………………………..1
- •1.Элементы функциональной полноты в классе двоичных функций.
- •1.1 Основные двоичные функции и их своства. Булевой функцией f(x1 … xn) называют функцию, аргументы которой принимают значения из множества , и значение функции также из множества {0;1}.
- •Бинарная операция ассоциативна, если тождественно выполняется: ;
- •1.2 Утверждение о числе функций от n переменных.
- •1.3 Представление функции в виде совершенной дизъюнктивной и совершенной конъюнктивной формах. Разложение функции по начальному множеству переменных.
- •1.4 Утверждение о представлении двоичной функции в виде полинома Жегалкина .
- •1.5 Основные замкнутые классы двоичных функций относительно суперпозиций функций.
- •X1 x2 X
- •I этап :
- •3 Случай :
- •II этап :
- •1); 2); 3); 4).
- •1) ; 2); 3);
- •4) ; 5);
- •1.7 Предполные классы двоичных функций.
- •Все полные системы для классов t0, t1, s, m, l в утверждениях выше являются базисами для этих систем.
- •2 .Минимизация днф заданной функции.
- •2.1 Геометрическая интерпретация двоичных функций.
- •2.2 Утверждение о максимальных интервалах и тупиковых покрытиях.
- •1 Этап:
- •2 Этап:
- •2.3 Метод поиска всех максимальных интервалов заданной функции с помощью операции склеивания и сокращения.
- •2.4 Метод нахождения всех тупиковых покрытий максимальными интервалами.
- •Достаточно ясна связь задачи нахождения тупиковых покрытий и минимизации функции покрытия.
- •2.5 Метод построения сокращённой д.Н.Ф. С помощью обобщенного склеивания
- •3. Элементы математической логики. Исчисление высказываний, его полнота.
- •Семь теорем.
- •2) . Запишем аксиому а3 в следующем виде: вместоВ подставим формулу а, а вместо а подставим
- •Доказательство полноты исчисления высказываний.
- •4 Графы
- •4.1 Неориентированные, ориентированные графы. Способы задания графов.
- •Представление графов
- •1. Задание графа с помощью матрицы смежности.
- •2. Задание графа с помощью матрицы инцидентности.
- •3. Задание графа с помощью списка смежности.
- •4.2 Азбука теории графов. Маршрут, путь, простой путь. Цикл. Простой цикл. Связность в графе.
- •Связные графы
- •4.3 Методы анализа графа. Поиск в ширину. Нахождение кратчайших путей в графе.
- •4.4 Поиск в глубину. Нахождение остовного дерева с помощью поиска в глубину.
- •4.5 Укладки графов. Планарные графы.
- •Теорема Эйлера
- •4.6 Критерий Понтрягина-Куратовского планарности графа.
- •4.7 Хроматическое число графа.
- •5 Элементы комбинаторики.
- •5.1 Упорядоченные наборы с повторением и без повторений.
- •5.2 Неупорядоченные наборы элементов изданных без повторений.
- •5.3 Неупорядоченные наборы элементов изп данных с возможными повторениями.
- •5.4 Метод включения-исключения.
- •Упражнения.
- •5.5 Основы метода производящих функций.
- •1324 0100.
- •5.6 Основы теории перечисления Пойа. Лемма Бернсайда.
- •Упражнения.
- •6 Основы схем из функциональных элементов. Проблема минимизации
- •6.1 Сложность мультиплексора порядка .
- •1) Мультиплексор порядка
- •6.2 Сложность дешифратора порядка n.
- •2) Дешифратор порядка .
- •6.3 Сложность универсального многополюсника.
- •3) Универсальный многополюсник.
- •6.4 Оценка сложности функций n переменных .
- •7. Элементы теории конечных автоматов.
- •7.1 Ограниченно- детерминированные функции и автоматные языки. Эквивалентность.
- •8. Элементы теории кодирования.
- •Теория кодирования.
- •8.1 Критерий однозначности кодирования.
- •8.2 Критерий префиксного кодирования Мак-Миллана.
- •1. Можно ли выразить конъюнкцию через дизъюнкцию и отрицание.
6.1 Сложность мультиплексора порядка .
1) Мультиплексор порядка
Входами являются переменных , а выходами - переменные . На выходах реализуются всевозможные элементарные конъюнкции (“”). – произвольный набор.
Допустим, что на входе набор и этот набор соответствует двоичному представлению числа . Тогда i- выход мультиплексора будет равен , а все остальные выходы , то есть -ый выход мультиплексора реализует следующую логическое умножение: , где – двоичное представление числа :
Таким образом, на выходах мультиплексора реализованы всевозможные элементарные конъюнкции от переменных. Для реализации одной конъюнкции требуется коньюнкция от -х переменных и не более чем отрицаний. Поэтому требуется не более чем элементов. Всего конъюнкций от переменных , следовательно, можно дать следующую оценку сложности мультиплексора:
Оценим сложность мультиплексора более точно, используя полученную оценку. Для этого рассмотрим мультиплексоры порядка от переменных и мультиплексор от оставшихся переменных . Примем , то есть разобьем все переменные на группы. К первой группе относим переменные первой половины , а ко второй группе – переменные второй половины. На выходах реализуются всевозможные элементарные конъюнкции от переменных , а на выходах мультиплексора реализуются всевозможные элементарные конъюнкции переменных . Каждую конъюнкцию от переменных можно получить логическим умножением двух конъюнкций: конъюнкции переменных и конъюнкции переменных . Поэтому общую схему мультиплексора можем представить следующим образом:
Как показано ранее,
Поэтому общая сложность мультиплексора порядка
6.2 Сложность дешифратора порядка n.
2) Дешифратор порядка .
У дешифратора имеется входов ( и ) и единственный выход . Допустим, что на входах первых переменных двоичный набор , который является двоичным представлением числа , то есть . Тогда на выходе дешифратора будет значение входа : .
Дешифратор реализует следующую двоичную функцию:
(*)
|
|
Для реализации дешифратора по данной формуле потребуется мультиплексор порядка для реализации всевозможных конъюнкций от переменных , следовательно, сложность дешифратора
, где
– сложность мультиплексора;
– умножение выходов мультиплексора на соответствующие входы дешифратора. Элементарные конъюнкции от переменных, т.е. таких умножений ;
– всевозможные дизъюнкции слагаемых в формуле (*). Количество слагаемых равно числу двоичных наборов от переменных.
6.3 Сложность универсального многополюсника.
3) Универсальный многополюсник.
Входами этого многополюсника являются переменные , а выходами , где , и эти выходы соответствуют всевозможным функциям от n переменных.
Утверждение. Сложность многополюсника
Докажем нижнюю оценку . Действительно, многополюсник имеет выходов, которым соответствуют различные двоичные функции, поэтому на реализацию каждого выхода требуется по крайней мере различных элементов.
Докажем верхнюю оценку . Рассмотрим произвольную схему, которая реализует все нетождественные функции не более чем от переменных. Для этого, например, можно использовать представление функции в виде СДНФ. Тогда каждой вершине схемы будет соответствовать нетождественная функция. Для каждой нетождественной функции рассмотрим вершины, в которых реализуется данная функция. Среди этих вершин рассмотрим ту, глубина которой наименьшая (ту, которая расположена наиболее близко к входам схемы). Тогда удалим оставшиеся вершины соответствующие данной функции и присоединим выходы рассмотренной вершины ко выходам удаленных вершин (т.к. выходы удаленных вершин могут быть использованы для реализации каких либо других функций). Данную операцию выполним для всех нетождественных функций не более чем от переменных. В полученной схеме количество вершин будет соответствовать количеству нетождественных функций не более чем от переменных, т.е. .
Что и требовалось доказать.
Основная задача – оценить число элементов, необходимых и достаточных для реализации любых двоичных функций не более чем от переменных. Покажем, что