- •Глава 1
- •§ 1. Затраты алгоритма для данного входа, алгебраическая сложность
- •§ 1. Затраты алгоритма для данного входа
- •§ 1. Затраты алгоритма для данного входа
- •§ 1. Затраты алгоритма для данного входа
- •§ 1. Затраты алгоритма для данного входа
- •§ 2. Асимптотические оценки (формализм)
- •§ 2. Асимптотические оценки (формализм)
- •§ 2. Асимптотические оценки (формализм)
- •§ 3. Асимптотические оценки (два примера) 23
- •§ 3. Асимптотические оценки (два примера)
- •§ 3. Асимптотические оценки (два примера)
- •§ 3. Асимптотические оценки (два примера)
- •§ 3. Асимптотические оценки (два примера)
- •§ 4. Длина числа как возможный размер входа
- •§ 4. Длина числа как возможный размер входа
- •§ 4. Длина числа как возможный размер входа
- •§ 4. Длина числа как возможный размер входа
- •Глава 2
- •§ 5. Понятие сложности в среднем
- •§ 5. Понятие сложности в среднем
- •Глава 2. Сложность в среднем
- •§ 5. Понятие сложности в среднем
- •Глава 2. Сложность в среднем
- •§ 6. Сортировка и конечные вероятностные пространства.
- •§ 6. Сортировка и конечные вероятностные пространства 47
- •Глава 2. Сложность в среднем
- •§ 6. Сортировка и конечные вероятностные пространства 49
- •Глава 2. Сложность в среднем
- •§ 6. Сортировка и конечные вероятностные пространства 51
- •Глава 2. Сложность в среднем
- •§ 7. Пример медленного роста сложности в среднем
- •§ 7. Пример медленного роста сложности в среднем в сравнении со сложностью в худшем случае
- •Глава 2. Сложность в среднем
- •§ 7. Пример медленного роста сложности в среднем 55
- •Глава 2. Сложность в среднем
- •§ 7. Пример медленного роста сложности в среднем
- •Глава 2. Сложность в среднем
- •§ 8. Функция затрат рандомизированного алгоритма
- •§ 8. Функция затрат рандомизированного алгоритма
- •Глава 2. Сложность в среднем
- •§ 8. Функция затрат рандомизированного алгоритма
- •Глава 2. Сложность в среднем
- •§ 8. Функция затрат рандомизированного алгоритма
- •Глава 2. Сложность в среднем
- •Глава 2. Сложность в среднем
- •Глава 2. Сложность в среднем
- •Глава 2. Сложность в среднем
- •Глава 2. Сложность в среднем
- •Глава 3
- •§ 9. Функции, убывающие по ходу выполнения алгоритма
- •§ 9. Функции, убывающие по ходу выполнения алгоритма 75
- •§ 9. Функции, убывающие по ходу выполнения алгоритма 77
- •§ 9. Функции, убывающие по ходу выполнения алгоритма 79
- •§ 9. Функции, убывающие по ходу выполнения алгоритма 81
- •§ 10. Качество оценок
- •§ 10. Качество оценок
- •§ 10. Качество оценок
- •§ 10. Качество оценок
- •§ 11. Завершимостъ работы алгоритма
- •§ 11. Завершимость работы алгоритма
- •§ 11. Завершимостъ работы алгоритма
- •§ 11. Завершимостъ работы алгоритма
- •§ 12. Вложенные циклы (дополнительные примеры)
- •§ 12. Вложенные циклы (дополнительные примеры)
- •§ 13. Нецелые размеры входа и непрерывные оценочные функции 97
- •§ 13. Нецелые размеры входа и непрерывные оценочные функции
- •§ 13. Нецелые размеры входа и непрерывные оценочные функции 99
- •Глава 4
- •§ 14. Понятие нижней границы сложности
- •§ 14. Понятие нижней границы сложности
- •§ 15. Оптимальные алгоритмы
- •§ 15. Оптимальные алгоритмы
- •§ 15. Оптимальные алгоритмы
- •§ 15. Оптимальные алгоритмы
- •§ 16. Асимптотические нижние границы. Алгоритм, оптимальный по порядку сложности
- •§ 16. Асимптотические нижние границы
- •§ 16. Асимптотические нижние границы
- •§ 17. Нижняя граница сложности в среднем
- •§ 17. Нижняя граница сложности в среднем
- •§ 17. Нижняя граница сложности в среднем
- •§ 17. Нижняя граница сложности в среднем
- •§ 17. Нижняя граница сложности в среднем 125
- •§ 18. Нижние границы сложности рандомизированных алгоритмов. Принцип Яо
- •§18. Нижние границы сложности рандомизированных алгоритмов 127
- •Глава 5
- •§ 19. Битовые операции
- •Глава 5. Битовая сложность
- •§ 19. Битовые операции
- •Глава 5. Битовая сложность
- •§ 20. Наивная арифметика: умножение
- •§ 20. Наивная арифметика: умножение
- •Глава 5. Битовая сложность
- •§ 20. Наивная арифметика: умножение
- •Глава 5. Битовая сложность
- •§ 21. Наивная арифметика: деление с остатком
- •§ 21. Наивная арифметика: деление с остатком
- •Глава 5. Битовая сложность
- •§ 21. Наивная арифметика: деление с остатком
- •Глава 5. Битовая сложность
- •§ 22. Модулярная арифметика
- •§ 22. Модулярная арифметика
- •Глава 5. Битовая сложность
- •§ 22. Модулярная арифметика
- •Глава 5. Битовая сложность
- •§ 22. Модулярная арифметика
- •Глава 5. Битовая сложность
- •§ 23. Булева арифметика
- •§ 23. Булева арифметика
- •Глава 5. Битовая сложность
- •§ 23. Булева арифметика
- •Глава 5. Битовая сложность
- •Глава 5. Битовая сложность
- •Глава 6
- •§ 24. Простейшие рекуррентные уравнения
- •§ 24. Простейшие рекуррентные уравнения
- •§ 24. Простейшие рекуррентные уравнения
- •§ 25. Об одном классе нелинейных рекуррентных соотношений 163
- •§ 25. Об одном классе нелинейных рекуррентных соотношений
- •§ 25. Об одном классе нелинейных рекуррентных соотношений 165
- •§ 25. Об одном классе нелинейных рекуррентных соотношений 167
- •§26. Асимптотические оценки решений рекуррентных неравенств 169
- •§ 26. Асимптотические оценки решений рекуррентных неравенств
- •§ 26. Асимптотические оценки решений рекуррентных неравенств 171
- •§ 27. Добавление нулей
- •§ 27. Добавление нулей 173
- •§ 27. Добавление нулей 175
- •§ 27. Добавление нулей
- •§ 27. Добавление нулей 179
- •Глава 7 Сводимость
- •§ 28. Линейная сводимость
- •Глава 7. Сводимость
- •§ 28. Линейная сводимость
- •Глава 7. Сводимость
- •§ 28. Линейная сводимость
- •Глава 7. Сводимость
- •§ 29. Линейная сводимость и нижние границы сложности
- •§ 29. Линейная сводимость и нижние границы сложности 191
- •Глава 7. Сводимость
- •§ 29. Линейная сводимость и нижние границы сложности 193
- •Глава 7. Сводимость
- •§ 30. Классы PиNp
- •§ 30. Классы р и np
- •Глава 7. Сводимость
- •§ 30. Классы PuNp
- •Глава 7. Сводимость
- •§ 30. Классы PuNp
- •Глава 7. Сводимость
- •§ 31. Существование задач распознавания, не принадлежащих р 201
- •§ 31. Существование задач распознавания, не принадлежащих р. Связь моделей мт и рам
- •Глава 7. Сводимость
- •§ 31. Существование задач распознавания, не принадлежащих р 203
- •Глава 7. Сводимость
- •§ 32. Полиномиальная сводимость. Np-полные задачи
- •§ 32. Полиномиальная сводимость. Np-полные задачи
- •Глава 7. Сводимость
- •Глава 7. Сводимость
- •Глава 7. Сводимость
- •Глава 7. Сводимость
- •Глава 1. Сложности алгоритмов как функции числовых аргументов. Сложность в худшем случае
- •119002, Москва, Большой Власьевский пер., 11. Тел. (499) 241-74-83
Глава 7. Сводимость
146. Здесь речь идет о линейной сводимости P^Q задач, связан ных с мультипликативными операциями над квадратными числовы ми матрицами порядка п. Рассматриваются лишь такие алгоритмы решения задачи Q, для сложности по числу арифметических опера ций каждого из которых выполняется соотношение Т(кп) = 0(Т(п)), к = 2,3.
Требуется показать, что задача умножения произвольных квадратных матриц линейно сводится к задаче
а) умножения симметричных квадратных матриц;
б) умножения верхних треугольных матриц;
в) обращения невырожденных матриц.
Указание. Так же, как в предыдущей задаче, здесь можно прибегнуть к матрицам размера, большего п, используя исходные матрицы как блоки для построения новых матриц. В пункте в) полезно предварительно установить вид матрицы
fln М1 0 V1
0 1п М2 , V0 0 1п) где M1,M2— исходные матрицы, 1п — единичная матрица порядка п.
147. а) Доказать свойство (R2) рациональных функций, сформули рованное в § 29.
Указание. Достаточно доказать, что если полином р(х1,х2, ...,хп) тождественно равен нулю на некотором непустом открытом множестве U аШп, то этот полином нулевой. При п = 1 утверждение очевидно. Пусть п > 1 и точка v = (v1,v2,...,vn)eIRn такова, что р(у1, v2,..., v) ф 0. Пусть ueU. Множество U — открытое, поэтому у точки и существует окрестность некоторого радиуса г > 0, целиком принадлежащая U. Пусть I — расстояние от и до v, а с1,с2,...,сп—координаты вектора единичной длины, направленного из и в v. Если t пробегает множество Ж, то формулы
x1 = u1+c1t, x2 = u2+c2t, ..., xn=un+cnt (32.3)
задают прямую в Шп, причем при t = 0 получается точка и, а при t = l — точка v. Остается рассмотреть для полинома p(t) одной переменной t, получающегося подстановкой (32.3) в р(х1,х2, ...,хп), его значения в точке t = l и на интервале -г <t<r.
б) Для каких целых n ^ 1 справедливо утверждение, что если произвольный полином с вещественными коэффициентами от х1,х2,...,хп обращается в нуль на бесконечном подмножестве множества Ж", то этот полином является нулевым?
148. Функция /(n) = |"log2n!l является нижней границей сложно сти по числу сравнений алгоритмов сортировки массивов длины п
Задачи
211
попарно различных рациональных чисел c помощью сравнений и четырех арифметических операций (в предложении 29.1 речь шла о сортировке вещественных чисел).
149. Функция /(n) = [log2(n + 1)1 является нижней границей слож ности по числу сравнений алгоритмов поиска места элемента в упо рядоченном массиве длины п попарно различных вещественных чи сел c помощью сравнений и четырех арифметических операций.
150. Пусть известен алгоритм, который по данным с,т, с > 1,
т е N+, строит т значащих двоичных цифр числа - (построить
с т значащих цифр некоторого числа х, 0 < х < 1, — это в данном
контексте означает отыскать первую ненулевую цифру после запятой в двоичной записи этого числа, а затем отбросить все цифры после т цифр, отсчитанных от найденной), и пусть сложность этого алгоритма есть 0(f(m)), где /(т)—некоторая функция такая, что дополнительно известен алгоритм умножения произвольных a, b е N+, сложность которого тоже есть 0(,f(m)), где m = max{A(a), А(Ь)}. На основе этих двух алгоритмов сконструировать алгоритм построения частного и остатка от деления положительных целых а и Ъ, имеющий сложность 0(f(m)), m = max{A(a), А(Ь)}.
Указание. Нужно построить q и г такие, что a = qb + r, 0 sj г < Ъ, или a-=q + s, 0^5<1. Возникновение погрешности при вычислении - может привести к тому, что найденное q будет отличаться на 1 от точного значения; несколько добавочных проб помогут найти точные q и г, не изменяя оценки 0(f(m)) для сложности.
151. Пусть о 0 и jo удовлетворяет неравенствам у ^ у0 ^ -; пусть последовательность Уо,Ут_,У2> ■■■ получена по рекуррентной формуле
yi = 2yi-1-ciyfL-1, i = l,2, ...
Тогда последовательность Уп, y-i, ••• сходится к -.
152. (Продолжение предыдущей задачи.) Пусть ceN+. Справедли во следующее утверждениег. Пусть у0 удовлетворяет неравенствам
9~ ^ Уо ^ ~~ и последовательность УсъУъУг» ••• получена по рекуррентной формуле
Vi,
yi=2yi-1-ciyf1, i = l,2,..., (32.4)
См. [5, разд. 8.2].
212