Функция TREE (англ. TREE sequence) — быстрорастущая функция TREE(n), возникшая из теории графов, разработанная математическим логиком Харви Фридманом.[1][2] Фридман доказал, что функция в конечном итоге доминирует над всеми доказуемо тотальными рекурсивными функциями в системе .[note 1]
Первым значительно большим членом последовательности является знаменитое TREE(3) (на англоязычной гугология вики записывается как TREE[3]), примечательное тем, что это число, встречающееся в серьёзной математике, больше, чем число Грэма.
Определение[]
TREE(n)[]
Предположим, у нас есть последовательность n-меченых деревьев T1, T2 ... со следующими свойствами:
- Каждое дерево Ti имеет не более вершин i.
- Ни одно дерево не сохраняет информацию, а сохранение меток можно встроить в любое дерево, следующее за ним в последовательности.
Теорема Краскала о дереве утверждает, что такая последовательность не может быть бесконечной. Харви Фридман расширил эту тему, задав вопрос: учитывая некоторое n, какова максимальная длина такой последовательности? Эта максимальная длина является функцией n и является определением TREE(n) или функции TREE.
tree(n)[]
Определим , слабую функцию tree, как длину самой длинной последовательности 1-меченных (или немаркированных) деревьев, такой что:
- Каждое дерево в позиции k (для всех k) имеет не более чем k + n вершин.
- Ни одно дерево не может быть гомеоморфно вложено в любое дерево, следующее за ним в последовательности.
Дерево в нижнем регистре — слабая функция tree, а TREE, всё в верхнем регистре, – обычная функция.
Анализ[]
Значения для TREE[n][]
Первые два значения: TREE(1) = 1 и TREE(2) = 3. Следующее значение, TREE(3), как известно, очень велико. TREE(3) превышает число Грэма, числа Аккермана, nn(5)(5), G33, [5]. Крис Берд утверждал, что , в его нотации массива.[6]
Нижние границы слабой tree(n) и TREE(3)[]
Хотя известно мало результатов, то есть доказанных утверждений о нижних границах tree, японский математик Такаюки Кихара[7] подтвердил, что слабое tree(4) больше числа Грэма.[8] Он представил иерархию больших функций, индексированных ординалами , связанных с иерархией двоичных деревьев, снабжённых фиксированным кодированием последовательности натуральных чисел, и точно оценил иерархию с точки зрения быстрорастущей иерархии. Значение его работ состоит в том, что он явно оценивает значения комбинаторных больших функций, в то время как многие гугологи без доказательств грубо говорят о "соответствующих ординалах". Способность tree выражать ординалы не гарантирует сравнения с быстрорастущей иерархией, и, следовательно, многие аргументы, основанные на этом неправильном выводе, бессмысленны. Подробности см. в здесь.
Кроме того, Кихара разработал метод точной оценки иерархии , расширенной до ординалов , связанной с иерархией троичных деревьев, снабжённых фиксированным кодированием иерархии Веблена, и проверил () и () относительно канонической системы фундаментальных последовательностей.[9] В отличие от неверных аргументов относительно темпов роста, результат явно оценивает нижние границы конкретных значений функции tree.
В результате точного рассуждения Кихара получил строгое неравенство для , где обозначает малый ординал Веблена. Поскольку Кихара утверждает,[10] что TREE(3) намного больше, чем , из этого следует, что TREE(3) больше, чем .
Пользователь англоязычной гугология вики Deedlit11 установил нижнюю границу TREE(3) по дереву. Определите и . (Обратите внимание, что она отличается ранее объяснённой от иерархии .) Затем Deedlit11 заявил .[11][note 2]
Значения []
Можно показать, что , , и .[12] использует последовательность (с использованием #Альтернативные обозначения):
(()) ()
немного больше, у нас есть две самые длинные последовательности, которые выглядят следующим образом:
((())) (()()()) (()()) (()) ()
В противном случае:
(()()) (((()))) ((())) (()) ()
Определить точное значение для гораздо сложнее, поскольку необходимо проверить множество последовательностей, и каждая из них очень длинная. Тем не менее, последовательность была сформулирована и ответ дан.[13]. Последовательность следующая:
(()()()) ((()())()) ((((()())))) ((((())(())))) ... 4 шага ... (((()()))) ((((((()))))((((()))))))) ... 82 шага ... ((()())) ... много шагов ... ()
Как рассчитано по приведённой выше ссылке, .
Фридман определил функцию FFF(k), которая равна tree(k+1), но его предположение о том, что значение FFF(2) (также известное как tree(3)) меньше 100, кажется немного заниженным.[14]
Альтернативные обозначения[]
(Эта альтернатива ещё требует формальной проверки.)
Деревья сложно визуализировать, не рисуя их, поэтому мы разработаем более компактный способ их представления. Рассмотрим язык, в котором есть различные виды скобок, такие как ()
, []
, {}
и т. д. Круглые скобки всегда идут парами и могут быть вложенными друг в друга. Внутри более крупного узла они могут быть объединены. Например, на этом языке допустимы следующие строки:
[] ([]) {[()]()} [(){[[]]}(){(())[]}]
Предположим, у нас есть строка А. Мы будем называть пару соответствующих скобок узлом, из уважения к оригинальной конструкции дерева. Определите дочерний узел как узел, вложенный на один уровень глубже в исходный узел. Например, возьмём строку {[()()][][()]}
; дочерними элементами узла, представленного {}
, являются узлы, представленные []
, но не узлы, представленные ()
.
Назовите узел удаляемым, если у него меньше двух дочерних элементов. Например, в строке {[()()][][()]
все узлы ()
являются удаляемыми, как и два последних узла []
узлы, но не первый []
или {}
. В строке ([(()())])
узел []
можно удалить.
Мы говорим, что строка A сводима к строке B, если A можно преобразовать в B путём удаления удаляемых узлов. Строка A сводится к строке B тогда и только тогда, когда дерево, представленное B, гомеоморфно вложима в дерево, представленное A.
Имея всё это в виду, мы можем создать функцию, которая должна соответствовать исходному определению TREE(k), при условии, что это обозначение было получено правильно. Предположим, у нас есть последовательность строк со следующими свойствами:
- Вы можете использовать только скобки типа k.
- В первой строке не более одной пары скобок, во второй строке не более двух пар скобок, в третьей строке не более трёх пар скобок и т. д.
- Ни одна строка не может быть сокращена до более ранней строки.
TREE(k) — максимальная длина последовательности.
Для k = 1 оптимальная последовательность имеет только один член: ()
.
Для k = 2 оптимальная последовательность состоит только из трёх членов: ()
, затем [[]]
, затем []
.
Сноски[]
- ↑ Фридман далее доказал теорему о том, что TREE(3) больше, чем время остановки любой машины Тьюринга, инициализированной пустой лентой, которая, как можно доказать, останавливается в путём доказательства с не более чем [3] символов.[4]
- ↑ равно дереву treetree...tree (n)...(n)(n)(n) с n слоями, где . Заметим, что даже если это верно, оно не даёт нижней оценки TREE(3) в терминах БРИ для больших ординалов относительно канонического выбора фундаментальных последовательностей.
Примечания[]
- ↑ Х. Фридман, [FOM] 273:Sigma01/optimal/size
- ↑ Х. Фридман, [FOM] n(3) < Graham's number < n(4) < TREE[3]
- ↑ https://cs.nyu.edu/pipermail/fom/2006-March/010233.html
- ↑ Х. Фридман, [FOM] 273:Sigma01/optimal/size
- ↑ Насколько велико TREE(3)
- ↑ Крис Берд, За пределами вложенных массивов Берда II, страница 10
- ↑ Персональный веб-сайт Такаюки Кихары
- ↑ T. Кихара, 「tree(4)>グラハム数」の証明, YouTube, 05/2020.
- ↑ T. Кихара, Нижние границы tree(4) и tree(5), とりマセ Σ^0_2, 05/2020.
- ↑ T. Кихара, Нижние границы tree(4) и tree(5), とりマセ Σ^0_2, 05/2020.
- ↑ Как TREE(3) стало таким большим? Нужны пояснения от непрофессионалов
- ↑ Насколько велико TREE(3)
- ↑ https://math.stackexchange.com/questions/2893373/lower-bound-for-kruskals-weak-tree-function
- ↑ http://www.cs.nyu.edu/pipermail/fom/2006-June/010627.html