Веселье с обратным Аккерманом


11

Обратная функция Аккермана часто встречается при анализе алгоритмов. Отличная презентация здесь: http://www.gabrielnivasch.org/fun/inverse-ackermann .

α1(n)=[n/2]
α2(n)=[log2⁡n]
α3(n)=log∗⁡n
...
αk(n)=1+αk(αk−1(n))
α(n)=min{k:αk(n)≤3}

Мой вопрос: что такое функция

k(n)=min{k:αk(n)≤k}
Очевидно, что 1≪k(n)≤α(n) . Какие более узкие границы можно дать для k(n) ? Является ли k(n)≤log⁡α(n) ?

Я знаю, почему , но не могли бы вы объяснить, почему ? k ( n ) ≪ α ( n )k(n)≤α(n)k(n)≪α(n)
— Jbapple

Хорошо, отредактированный к бесспорной . k(n)<α(n)
— Дана Мошковиц

3
@DanaMoshkovitz: Я приблизил определения, используя иерархию Аккермана, с которой я знаком: и . С типичным определением функций Аккермана, . Следовательно, если то , т.е. . (Надеюсь, я там не ошибся.)k ( n ) = min { k : A k ( k ) ≥ n } A k + 1 ( 1 ) = A k ( A k ( 1 ) ) ≥ A k ( k ) A k ( kα(n)=min{k:Ak(1)≥n}k(n)=min{k:Ak(k)≥n}Ak+1(1)=Ak(Ak(1))≥Ak(k)A k + 1 ( 1 ) ≥ n k ( n ) ≥ α ( n ) - 1Ak(k)≥nAk+1(1)≥nk(n)≥α(n)−1
— Сильвен

1
@DanaMoshkovitz: чтобы уточнить, я использую и , который растет немного быстрее, чем ваше определение, например, вместо . Это не должно иметь большого значения, хотя: и - одно и то же. A k + 1 ( n ) = A n + 1 k ( 1 ) A 2 ( n ) = 2 n + 1 2 n α ( n ) k ( n )A1(n)=2nAk+1(n)=Akn+1(1)A2(n)=2n+12nα(n)k(n)
— Сильвен

1
@DanaMoshkovitz: я не понимаю, почему . Для бесконечного числа значений вы будете иметь , то есть всякий раз, когда ; поскольку быстро растет, у вас будет больше и больше таких последовательностей. С вашими определениями можно даже иметь : следовательно, но . n α ( n ) = k ( n ) A k ( k ) < n ≤ A k + 1 ( 1 ) < A k + 1 ( k + 1 ) A k + 1 ( 1 ) - A k ( k ) α ( n )k(n)<α(n)nα(n)=k(n)Ak(k)<n≤Ak+1(1)<Ak+1(k+1)Ak+1(1)−Ak(k)α 2 ( 8 ) = 3 > 2 α ( 8 ) = 2 k ( 8 ) = 3α(n)<k(n)α2(8)=3>2α(8)=2k(8)=3
— Сильвен

Ответы:


12

Пусть будет обратным к . . Я утверждаю, что .α k A 1 ( x ) = 2 x , A 2 ( x ) = 2 x , … k - 1 ( x ) = A x ( x )AkαkA1(x)=2x,A2(x)=2x,…k−1(x)=Ax(x)

Поскольку и так как , . В результате .∀ z , α y ( z ) > α x ( z ) α y ( A x ( x ) ) > α x ( A x ( x ) ) = x k ( A x ( х ) ) = хx=αx(Ax(x))∀z,αy(z)>αx(z)αy(Ax(x))>αx(Ax(x))=xk(Ax(x))=x

Теперь рассмотрим значение . По определению это . Мы знаем, что , поэтому . Я утверждаю, что . . Теперь , поэтому . Поскольку , , поэтому . Таким образом,α min z { α z ( A n ( n ) ) ≤ 3 } α n ( A n ( n ) ) = n α ( A n ( n ) ) > n α ( A n ( nα(k−1(n))=α(An(n))αminz{αz(An(n))≤3}αn(An(n))=nα(An(n))>nα n + 1 ( A n ( n ) ) = 1 + α n + 1 ( n ) α ( n ) = min z { α z ( n ) ≤ 3 } α α ( n ) ( n ) ≤ 3 n + 1 > α ( n )α(An(n))≤n+2αn+1(An(n))=1+αn+1(n)α(n)=minz{αz(n)≤3}αα(n)(n)≤3n+1>α(n)α n + 1 ( A n ( n ) ) ≤ 4 α n + 2 ( A n ( n ) ) = 1 + α n + 2 ( α n + 1 ( n ) ) ≤ 1 + α n + 2 ( 4 ) ≤ 3αn+1(n)≤3αn+1(An(n))≤4αn+2(An(n))=1+αn+2(αn+1(n))≤1+αn+2(4)≤3,

Итак, мы имеем , поэтому и по существу равны.k αn<α(k−1(n))≤n+2kα


9
И позвольте мне добавить, что все эти функции являются просто разными сложными способами написания числа 4.
— Сариэль Хар-Пелед

0

Это неверно; смотрите комментарии.

Функция, очень близкая к этой, называлась « » и использовалась в « Петровых деревьях», «Последовательностях Давенпорта-Шинзеля » и « Гипотезе Deque» Петти , в которых он показал, что « deque-операций [в дереве splay] принимают только время, где - минимальное количество применений функции обратного Аккермана, отображающей в константу. " n O ( n α ∗ ( n ) ) α ∗ ( n ) nα∗nO(nα∗(n))α∗(n)n

Эта функция очень медленно растет и медленнее, чем . Рассмотрим функциюf : N → Nlog⁡α(n)f:N→N

f(n)={1 n = 02f(n−1) n > 0

Эта функция растет примерно так же быстро, как , поэтому она растет медленнее, чем . Теперь я оценю и для :A ′ ( n ) = A ( n , n ) log α ( n ) α ∗ ( n ) A ′ ( f ( n ) )A(4,n)A′(n)=A(n,n)log⁡α(n)α∗(n)A′(f(n))

log⁡α(A′(f(n)))=log⁡f(n)=f(n−1)

α∗(A′(f(n)))=1+α∗(f(n))<1+α∗(A′(n))<2+α∗(n)

Поскольку , растет намного быстрее, чем .log α ( n ) α ∗ ( n )f(n−1)∈ω(2+α∗(n))log⁡α(n)α∗(n)


Какова связь между альфа ^ * и к (п)? (обратите внимание, что в определении k (n) я использую обозначение alpha_k (n), определенное в ссылке, которая была у меня в вопросе)
— Дана Мошковиц

О, прости, я прочитал твой как ! α kαkαk
— Jbapple
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.