Лекция 14.

advertisement
Лекция 14.
Нижняя оценка сложности включающего поиска.
Верхняя оценка сложности включающего поиска.
Асимптотика функции Шеннона
сложности включающего поиска.
1
Нижняя оценка сложности включающего
поиска
Опираясь на лемму о характеристических носителях включающего поиска, мы можем получить следующую нижнюю оценку сложности включающего поиска.
b
Теорема 1 (нижняя оценка). Пусть I = hB n , V, i — ЗИП типа
Sbool . Пусть базовое множество имеет вид F = hMn , ∅i, где Mn —
множество монотонных булевых функций. Тогда
T (I, F) ≥ 2 ·
X
b
P(O(y, )) − t0 ,
y∈V
где t0 — число записей веса 0 в библиотеке V (t0 ∈ {0, 1}).
Доказательство. Обозначим через ti — число записей веса i в библиотеке V (i = 1, n).
Возьмем произвольный ПИГ U над базовым множеством
F = hMn , ∅i, решающий ЗИП I. (Такой ПИГ обязательно существует,
так как F полно для типа Sbool .)
Согласно лемме о характеристических носителях включающего поиска библиотеку V можно разбить на такие непересекающиеся части, что
каждая часть содержит записи одного веса, и каждой части веса i > 0 и
мощности t сопоставляется такая совокупность ребер графа U , что сумма сложностей ребер из этой совокупности не меньше чем t·21−m , причем
1
образы различных частей при этом соответствии не пересекаются. Отсюда следует, что
n
X
T (U ) ≥
ti 21−i .
i=1
Теперь предположим, что в библиотеке V
есть запись
y0 = (0, . . . , 0) веса 0. Обозначим через C0 главную цепь, ведущую из
корня в множество LU (y0 ) (согласно теореме о существовании главных
цепей такая цепь существует). Пусть α0 — лист, в котором заканчивается цепь C0 , а ребро (β0 , α0 ) — последнее ребро цепи C0 . Так как запись
y0 удовлетворяет всем запросам из B n , то все запросы проходят через
ребро (β0 , α0 ), и, значит, сложность этого ребра равна 1. Остается заметить, что ребро (β0 , α0 ) не принадлежит ни одной совокупности ребер,
соответствующей части разбиения веса, большего 0.
Таким образом,
T (U ) ≥ t0 +
n
X
ti 21−i = 2 ·
i=1
X
b
P(O(y, )) − t0 .
y∈V
Отсюда в силу произвольности ПИГ U вытекает утверждение теоремы. Что и требовалось доказать.
Замечание. Если мы находимся в условиях теоремы 1, то нижняя
оценка, получаемая из этой теоремы, практически в два раза лучше мощностной нижней оценки.
2
Верхняя оценка сложности включающего
поиска
b
Теорема 2 (верхняя оценка). Пусть I = hB n , V, i — ЗИП типа Sbool .
Пусть базовое множество имеет вид F = hKn , ∅i, где Kn — множество
монотонных элементарных
конъюнкций. Пусть |V | = k и m — такое
n
n
число, что 2 m
< k ≤ 2 m+1
. Тогда
T (I, F) ≤ 1 +
m
X
1−i
2
i=1
2
n
+ 2−m k.
i
q
q
q
HH @
Y
*
I
H
x1
1 H@
xn
H@
H
q Рис. 1: Универсальный многополюсник для множества K1n
Доказательство. Обозначим через Kln — множество всех монотонных элементарных конъюнкций, содержащих не более l переменных (или
другими словами, имеющих длину не более l).
Построим по индукции информационный граф Uln , реализующий как
функции фильтров каких-либо вершин все функции из Kln .
Базис индукции. l = 1. K1n = {1, x1 , . . . , xn }.
U1n будет иметь вид, изображенный на рисунке 1, где жирной точкой
изображен корень графа, а на концах ребер реализуются функции из K1n .
n
Шаг индукции. Пусть Ul−1
— граф, реализующий все функции из
n
n
Kl−1
. Граф Uln будем строить, добавляя к Ul−1
вершины и ребра, чтобы
n
n
реализовать функции из Kl \ Kl−1 , следующим образом. Возьмем произвольную монотонную элементарную конъюнкцию длины l xi1 & · · · &xil .
n
найдем вершину, на которой реализуется функция xi1 & · · · &xil−1
В графе Ul−1
и выпустим из нее ребро, которому припишем переменную xil . На вершине, в которую ведет это ребро, будет реализовываться как функция
n
фильтра функция xi1 & · · · &xil . Перебрав все функции из Kln \ Kl−1
и
n
проделав для каждой эту операцию, получим требуемый граф Ul , реализующий все функции из Kln .
Отметим, что на первом ярусе графа Uln находится n + 1 = n1 + 1
ребер, и сложность каждого из них равна 1 (первый ярус — это ребра,
исходящие из корня), а на i-ом ярусе (i ≥ 2) находится ni ребер, и
сложность каждого из них равна 21−i (i-ый ярус — это ребра, исходящие
из концов ребер (i − 1)-го яруса). Таким образом, сложность графа Uln
равна
l X
n 1−i
n
T (Ul ) = 1 +
2 .
i
i=1
Вернемся теперь к нашей задаче I.
Для любой записи y ∈ V характеристическая функция этой записи
есть некоторая монотонная элементарная конъюнкция, которую будем
обозначать Ky .
3
Информационный граф U , решающий задачу I, будем строить слеn
дующим образом. Возьмем граф Um
, описанный выше. Возьмем произвольную запись y ∈ V . Возможны два случая.
1. Характеристическая функция этой записи Ky имеет длину, не преn
находим вершину, на которой реаливышающую m. Тогда в графе Um
зуется функция Ky , объявляем эту вершину листом и приписываем ей
запись y.
2. Длина элементарной конъюнкции Ky больше чем m. Пусть Ky =
n
xi1 & · · · &xil , где l > m. Тогда найдем в графе Um
вершину, на которой
реализуется функция xi1 & · · · &xim , выпустим из этой вершины ребро,
припишем этому ребру функцию xim+1 & · · · &xil , объявим конец этого
ребра листом и припишем ему запись y.
Проделав эту операцию для каждой записи y ∈ V , мы получим граф
U , который, как нетрудно заметить, согласно критерию допустимости
информационных графов решает задачу I.
Оценим сложность графа U . Граф U содержит в себе как подграф
n
граф Um
. В худшем случае, когда для каждой записи реализуется слуn
k ребер, каждое из которых исходит
чай 2, мы добавим к графу Um
из некоторой вершины, на которой реализуется элементарная конъюнкция длины m. Следовательно, сложность каждого из этих k ребер будет
равна 2−m . Таким образом,
m
X
n
−m
1−i n
T (I, F) ≤ T (U ) ≤ T (Um ) + 2 k = 1 +
2
+ 2−m k.
i
i=1
Тем самым теорема доказана.
3
Асимптотика функции Шеннона сложности включающего поиска
Если k — натуральное число, то обозначим
I(k, Sbool ) = {I = hX, V, ρi ∈ Sbool : |V | = k}.
Рассмотрим функцию Шеннона, характеризующую сложность класса
ЗИП I(k, Sbool )
T (k, Sbool , F) =
sup T (I, F).
I∈I(k,Sbool )
4
Теорема 2 позволяет нам показать, что существуют библиотеки, для
которых нижняя оценка теоремы 1 асимптотически не улучшаема.
Теорема
3. (Асимптотика
функции
Шеннона)
Если
n
m(n) → ∞ при n → ∞, m = ō(n), k(n) такое, что m−1
= ō(k) и
n
k ≤ m
, и базовое множество имеет вид F = hF, ∅i, где F ⊆ Mn и
Kn ⊆ F , то при n → ∞
T (k, Sbool , F) ∼ 21−m k.
Доказательство. Рассмотрим библиотеку V , являющуюся k-элементным
n
и |V | = k. Рассмотподмножеством m-го слоя куба B n , то есть V ⊆ Bm
b
рим связанную с этой библиотекой ЗИП I = hB n , V, i. Согласно теореме
1
X
b
T (I, F) ≥ 2 ·
P(O(y, )) = 21−m k.
y∈V
Согласно теореме 2
T (I, F) ≤ 1 +
m−1
X
i=1
1−i
2
n
+ 21−m k = 21−m k(1 + ō(1)).
i
Осталось заметить, что последние два неравенства доказывают утверждение теоремы 3.
5
Download