
теория вычислительной сложности / up1
.pdfЗадание 1.1:
Какие из следующих утверждений ложны, какие истинны:
1.Каждый алгоритм описывает функцию.
2.Каждая функция: описывается некоторым алгоритмом.
3.Каждая функция, описываемая конечным текстом, вычислима.
4.Существуют больше невычислимых функций, чем вычислимых.
Задание 1.2:
Докажите следующие утверждения:
a)Множество конечных текстов (рациональных чисел) перечислимо.
b)Множество бесконечных слов (вещественных чисел в интервале [0, 1]) неперечислимо.
c)Множество Pascal-программ перечислимо.
d)Для множеств A и B верно, если A B и B перечислимо, то A - перечислимо.
Задание 1.3:
Множества A и B равномощны, если существует биекция f : A → B между ними. Какие из следуюших множеств равномощны.
{n | 1 ≤ n ≤ 5, n IN} {q | 1 ≤ q ≤ 5, q Q} {r | 1 ≤ r ≤ 5, n R}
IN |
Q |
R |
P(IN) |
P(Q) |
P(R) |
{f | f : IN → {0, 1}} |
{P | P - Паскаль-программа} |
|
{f | f : IN → {0, 1}, f вычислима Паскаль-программой}
Задание 1.4:
Для проверки корректности программы ее запускают с определенным
1
входом i и проверяют совпадает ли ее выход с заранее известным правильным результатом j. Если не совпадает, программы работает неправильно. Этот процесс соответствует вычислению функции test:
(
1, если алгоритм p со входом i выдает j
test(p, i, j) =
0, в противном случае
Вычислима ли функция test (интуитивно)?
Задание 1.5:
Пусть gr : IN → {0, 1, . . . , 9} - такая функция, что gr(m) = “m-я позиция десятичного представления дроби r”. Например, g2 13 (0) = 2 и g2 13 (123456) = 3.
Покажите:
1.Для каждого рационального числа q функция gq вычислима.
2.Существует вещественное число r, для которого gr невычислима.
Задание 1.6: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Хуттон (Hutton) показал, что |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
π = |
∞ |
|
|
(n!2n)2 |
12 |
1 |
+ |
14 |
· |
1 |
|||||||||
n=0 |
|
(2n + 1)! |
5 · |
|
|
10n |
25 |
50n |
|||||||||||
|
X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
=hn |
|
|
|
|
|
|
|
|
||||
Пусть sk - суммаbe первых k + 1 слагаемых: sk = |
|
k |
|
|
hn. Тогда |
||||||||||||||
|
|
| |
|
|
|
|
{z |
|
|
|
|
|
} |
||||||
|
|
|
sk < π < sk + |
|
1 |
. |
|
|
Pn=0 |
|
|||||||||
|
|
|
|
10k |
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Опишите алгоритм, который для данного n определяет n-ю позицию десятичного представления числа π = a0.a1a2a3 . . . an . . ..
Задание 1.7:
Покажите вычислимость функции f : IN → {0, 1}:
1, если в десятичном представлении числа π встречается
f(n) = последовательность из n подряд идуших 7-ок
0, в противном случае.
2
Задание 1.8:
Опишите вещественное число r, которое интуитвно невычислимо, то есть функция gr (задание 1.5) интуитивно невычислима. Для этого можно использовать функцию H, определенную в лекции, и биекцию b между программами и множеством IN . . .
Задание 1.9:
Показать, что функция mm : IN → IN невычислима.
Множество An состоит из всех алгоритмов, описываемых текстом длины не более n. Пусть a(m) - результат, который выдает алгоритм a при входе m.
Функция mm с аргументом n равна наименьшему натуральному числу, которое невычислимо никаким алгоритмом длины не более n при входе n:
mm(n) = min(IN − {aj (n) | aj An})
Задание 1.10:
(Парадокс Берри (Berry).) Рассмотрим следующее высказывание.
Это предложение описывает наименьшее натуральное число, которое нельзя описать никаким предложением, содержащим не более 200 символов.
Описывает ли это предложение в действительности натуральное число? Каково максимальное число натуральных чисел, описываемых предложениями длины 200 ?
Задание 1.11:
Какова функция Z → N, вычислимая следующим алгоритмом?
input x ; while x 6= 0 do
x := |x| − 2 ;
3

end (* of while *) ; output 1
Задание 1.12:
Обоснуйте, что следующая функция a вычислима.
(
1, если w L(G) для w Σ и контекстно-свободной грамматики G
a(w, G) =
0, в противном случае
Обоснуйте также, что функция
(
neq(G1, G2) =
1, G1 и G2 - контекстно-свободные грамматики и L(G1) 6= L(G2) не определена , в противном случае
вычислима. Возможно ли задать алгоритм для вычисления функции
|
1, G1 |
G2 - контекстно-свободные грамматики и L(G1) = L(G2) |
|
neq0 |
(G1, G2) = (0, 0 , випротивном случае |
6 |
Задание 1.13:
1.Докажите, что следующая функция r2 : N × N → N является биекцией:
r2(x, y) = 12 · ((x + y)2 + x + 3y).
Указание: покажите сначала, что r(x + 1, y) = r(x, y) + (x + y + 1)
и r(x, y + 1) = r(x, y) + (x + y + 2).
2.Используя биекцию r2 постройте биекцию r3 : N × N × N → N. Обобщите идею для определения биекции rk+1 : Nk+1 → N.
4