Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка - Диск/Мат - полная.doc
Скачиваний:
238
Добавлен:
25.03.2016
Размер:
17.97 Mб
Скачать

Упражнения.

1. Найти число ожерелий из пяти бусин трех цветов. Два ожерелья оди­наковы, если одно на другого можно получить циклической переста­новкой в плоскости.

2. Найти число раскрасок граней тетраэдра в четыре цвета. Два тетра­эдра одинаковы, если один иа них можно получить из другого враще­нием в пространстве.

3. Найти число раскрасок ребер тетраэдра в четыре цвета. Два тетра­эдра одинаковы, если один из другого можно получить вращениями в пространстве.

4. Найти число существенно различных булевых функций от трех пере­менных. Две функции одинаковы, если одну из другой можно получить переименованием переменных.

Ответы

К главе 1.

1) 2)3)4). 5). 6)7)8)8!=40320. 9) 5!=120. 10) 311)

12) 13)14)=252.

15) 16)17).

18) . 19). 20).

21) 22)23)24) 25) 26) 27) . 28) Порядок существенен: 5!; порядок не существенен:. 29)30)

31) . 32). 33)34)35)66660:3 (1111+2222+3333+4444). 36)33330. 37)11110. 38) 16665. 39) 12. 40) 864. 41) 2220. 42)43)44)45)

46) 47) а)

Разное.

1.

2.

3.

4. (6).

5.

6.

7.

8.

9.

10.

11. Ответ нужно поделить на 2.

К главе 2.

1.

2.

3.

4.

5.

К главе 4.

1.

2.

3.

4.

Глава. Основы схем из функциональных элементов.

Пример. Рассмотрим базовые элементы: . Задача состоит в построении схемы из данных элементов, которая вычисляет функцию суммы двух элементов по модулю ().

Рассмотрим представление функции в виде СДНФ. Рассмотрим следующий функциональный граф, вершинам которого поставлены в соответствие логические элементы.

Этот граф естественным образом вычисляет требуемую сумму . Каждая вершина совершает соответствующую ей логическую операцию. Таким образом, подавая на входы данной схемы определенные значения , на выходе получим требуемую сумму по .

Определение. Схемой из функциональных элементов называется последовательность элементов, где каждый элемент совершает определенную логическую операцию над результатами, ранее вычисленными операционными элементами.

Удобно графовое представление схемы из функциональных элементов. Рассмотрим ациклический ориентированный граф (ацикличность – отсутствие циклов).

В таком графе обязательно найдется хотябы одна вершина, в которой нет входящих ребер. Такую вершину назовем источником. Аналогично, в таком графе найдется хотябы одна вершина, в которой нет исходящих ребер. Такие вершину назовем стоком.

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

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

Если вершине соответствует элемент , то получаем соответственно выход . если вершине соответствует элемент , то на выходе получаем отрицание входа.

Таким образом, каждая схема из функциональных элементов вычисляет набор функций от входных элементов , которые определены в стоках программы.

Определение. Сложностью схемы функциональных элементов называется число элементов в ней . Схема из любых других элементов строится подобным образом. Сложность схемы обозначим .

Определение. Сложностью логической функции будем называть следующую величину , где минимум ьерется по всем схемам, которые реализуют функцию , то есть минимальное число элементов “” “” “”, необходимое для реализации функции с помощью какой-либо схемы.

Определение. Сложностью класса функций K назовем величину

В дальнейшем нас будет интересовать сложность класса всех двоичных функций неболее чем от n :

Оценим сложность класса двоичных функций не более чем от переменных при больших n. Будем использовать следующие обозначения:

1) , если ;

2) , если;

3) , если (“≲” – ассимптотически не превосходит).

Оценим сложность сумматора двух двоичных чисел.

Входами сумматора являются разрядов входных двоичных чисел, а выходами цифр , которые являются разрядами суммы. На рисунке показано подсхем блока, каждый блок соответствует вычислению определенного разряда суммы.

Входом i-ого блока являются входы -ых разрядов суммируемых чисел ( – вход -ого разряда -ого числа, – вход -ого разряда -ого числа), а также значение переносимого числа из предыдущего разряда. Выходом i-ого блока является значение двоичной суммы разрядов на входе , а также значение переносимого числа в очередной разряд.

0

0

0

0

0

0

0

1

1

0

0

1

0

1

0

0

1

1

0

1

1

0

0

1

0

1

0

1

0

1

1

1

0

0

1

1

1

1

1

1

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

Отдельный блок зависит не более чем от -х входов и имеет выхода, тогда сложность реализации отдельного блока не более, чем const. Например, используя представление двоичной функции в виде СДНФ, выход определяется формулой:

Потребуется операции конъюнкции (“”), т.к. в СДНФ слагаемых, в каждом слагаемом операция “” выполняется раза. Операций дизъюнкций (“”) потребуется и операций отрицания (“”). Общее число элементов для реализации -ого выхода: , .

Оценим сложность реализации . Для этого будем использовать представление в виде СДНФ. имеет единицы, поэтому в СДНФ будет слагаемых, тогда число используемых элементов “” равно , “” – , “” – . Общее число элементов

, следовательно, суммарная сложность сумматора, построенного по СДНФ .

Оценим сложность двоичной функции не более чем от переменных.

При построении схемы, реализуем двоичную функцию не более чем от переменнх. Будем использовать следующие схемы: