УДК 519.712
doi:10.21685/2072-3040-2022-2-2
О сложности целочисленных полиномиальных возвратных последовательностей
С. С. Марченков
Московский государственный университет имени М. В. Ломоносова, Москва, Россия
ssmarchen@yandex. ги
Аннотация. Актуальность и цели. Линейные возвратные последовательности представляют собой «классический» объект комбинаторного анализа. Для выражения произвольного члена линейной возвратной последовательности имеются точные формулы экспоненциального типа как в случае поля комплексных чисел, так и в случае конечного поля Галуа. Следующим шагом в изучении возвратных последовательностей явилось бы рассмотрение полиномиальных возвратных последовательностей. Однако даже для возвратных последовательностей над множеством натуральных чисел эта задача пока не решена. Существует предположение, что при переходе к множеству целых чисел для полиномиальных возвратных последовательностей могут появиться алгоритмически неразрешимые проблемы. Тогда, разумеется, никаких формул для вычисления членов полиномиальной возвратной последовательности в общем случае ожидать не следует. Пока это предположение не доказано, целочисленные полиномиальные возвратные последовательности являются практически неисследованным объектом. В начале 2000-х гг. автор предложил рассматривать «почти полиномиальные» возвратные последовательности - последовательности, порождающие функции которых определяются суперпозициями полиномиальных функций и некоторых простых «почти полиномиальных» функций. Как оказалось, при добавлении к множеству полиномиальных функций функции типа sg(х) появляются возвратные последовательности с алгоритмически неразрешимыми проблемами. Это наводит на мысль, что в случае полиномиальных возвратных последовательностей над множеством целых чисел сами возвратные последовательности с алгоритмической точки зрения должны быть устроены достаточно сложно. Обоснование этого предположения и является целью настоящей статьи. Чтобы говорить о сложности возвратных последовательностей, необходимо прежде всего определить инструмент, с помощью которого можно будет оценивать сложность рассматриваемых последовательностей. В качестве такого инструмента выбрана одноленточная машина Тьюринга, работающая в трехбуквенном алфавите. Вычисления на данных машинах Тьюринга удается промоделировать целочисленными возвратными последовательностями с полиномиальной порождающей функцией. В результате для ряда проблем, связанных с возвратными последовательностями этого типа, получаются нижние сверхэкспоненциальные оценки сложности их решения. Материалы и методы. В построениях и доказательствах используются приемы и методы из теории вычислимых функций. Результаты и выводы. Рассматриваются возвратные последовательности над множеством целых чисел с полиномиальными порождающими функциями. С помощью данных последовательностей моделируются вычисления на детерминированных машинах Тьюринга. Из процесса моделирования следует, что некоторые алгоритмические проблемы для рассматриваемых возвратных последовательностей могут быть даже ЕХРЗРАСЕ-полными. Таким образом, целочисленные полиномиальные возвратные последовательности с алгоритмической точки зрения представляют собой достаточно сложный объект.
Ключевые слова: возвратная последовательность, полином над множеством целых чисел
© Марченков С. С., 2022. Контент доступен по лицензии Creative Commons Attribution 4.0 License / This work is licensed under a Creative Commons Attribution 4.0 License.
Для цитирования: Марченков С. С. О сложности целочисленных полиномиальных возвратных последовательностей // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. 2022. № 2. С. 17-27. doi:10.21685/2072-3040-2022-2-2
On the complexity of integer polynomial recursive sequences
S.S. Marchenkov
Lomonosov Moscow State University, Moscow, Russia [email protected]
Abstract. Background. Linear recursive sequences represent the "classic'" object of combinatorial analysis. To express an arbitrary term of a linear recursive sequence, there are exact formulas of exponential type as in the case of a field of complex numbers, and in the case of a finite Galois field. The next step in the study of recursive sequences would be to consider polynomial recursive sequences. However, even for recursive sequences over a set of natural numbers, this problem has not yet been solved. There is an assumption that when moving to the set of integers for of polynomial recursive sequences, algorithmically un-solvable problems may appear. Then, of course, no formulas for calculating the common term of a polynomial recursive sequence in the general case should be expected. So far this assumption has not been proven, and integer polynomial recursive sequences are practically an unexplored object. In the early 2000s, the author proposed to consider "almost polynomial" recursive sequences - sequences, the generating functions of which are defined by superpositions of polynomial functions and some simple "almost polynomial" functions. As it turned out, when adding to the set of polynomial functions, for example, functions of type sg(x), recursive sequences with algorithmically unsolvable problems appear. This suggests that in the case of polynomial recursive sequences over a set of integers, the recursive sequences themselves should be rather complicated from an algorithmic point of view. The substantiation of this assumption is the purpose of this article. To talk about the complexity of recursive sequences, it is necessary first of all to determine the tool with which you can will evaluate the complexity of the sequences in question. A single-tape Turing machine operating in a three-letter alphabet was chosen as such a tool. Calculations on these Turing machines can be modeled by integer recursive sequences with a polynomial generating function. As a result, for a number of problems related to recursive sequences of this type, lower superexponential estimates of the complexity of their solution are obtained. Materials and methods. The constructions and proofs use techniques and methods from the theory of computable functions. Results and conclusions. We consider recursive sequences over a set of integers with polynomial generating functions. Calculations on deterministic Turing machines are modeled using these sequences. It follows from the modeling process that some algorithmic problems for the considered recursive sequences may be EXPSPACE-complete. Thus, integer polynomial recursive sequences from an algorithmic point of view represent a rather complex object.
Keywords: a recursive sequence, a polynomial over a set of integers
For citation: Marchenkov S.S. On the complexity of integer polynomial recursive sequences. Izvestiya vysshikh uchebnykh zavedeniy. Povolzhskiy region. Fiziko-matemati-cheskie nauki = University proceedings. Volga region. Physical and mathematical sciences. 2022;(2):17-27. (In Russ.). doi:10.21685/2072-3040-2022-2-2
Введение
Пусть M - непустое множество, f(x1,...,xr) - функция на множестве M . Возвратная (рекуррентная) последовательность порядка r над множеством M есть последовательность
аь а2, аъ,..., (1)
которая при любом п > 1 удовлетворяет соотношению
ап+г = /(ап ,•••,ап+г-1).
Возвратная последовательность (1) полностью определяется первыми г членами а1,...,аг и функцией / , которую будем называть порождающей функцией последовательности (1).
Если функция / линейна, то возвратная последовательность (1) называется линейной. Линейные возвратные последовательности полностью охарактеризованы, когда М - поле комплексных чисел [1] или поле Галуа [2]. В этих случаях они определяются через корни соответствующих характеристических многочленов. Если функция / является полиномиальной, то возвратную последовательность (1) будем также называть полиномиальной.
Для полиномиальных, но нелинейных функций / в общем случае не известно никаких результатов о порождаемых ими возвратных последовательностях (даже когда М - множество натуральных чисел). В связи с этим в работах [3-5] рассматривались почти полиномиальные возвратные последовательности - возвратные последовательности над множеством целых чисел, у которых порождающие функции получаются суперпозициями полиномиальных функций и функций, «близких» к полиномиальным. Было обнаружено, что для некоторых простых «почти полиномиальных» функций (например, функции sg (х)) возникающие возвратные последовательности обладают рядом алгоритмически неразрешимых проблем. Применить эти результаты и конструкции для получения аналогичных результатов, относящихся к полиномиальным возвратным последовательностям, не удается. Вместе с тем алгоритмическая неразрешимость ряда проблем для разнообразных почти полиномиальных возвратных последовательностей показывает, что, вероятно, данные проблемы должны быть трудно разрешимыми и для полиномиальных возвратных последовательностей.
В настоящей работе рассматриваются возвратные последовательности над множеством целых чисел с полиномиальными порождающими функциями. Чтобы оценить сложность подобных возвратных последовательностей, необходимо в качестве «эталона сложности» выбрать некоторые абстрактные вычислительные устройства. Мы рассматриваем обычные одноленточные машины Тьюринга с входным алфавитом {0,1, . Сначала вычисления на указанных машинах Тьюринга с ограничениями на зону вычисления моделируем посредством возвратных последовательностей над конечным множеством, являющимся расширением алфавита {0,1, . Затем осуществляем эффективный переход к возвратным последовательностям над множеством {0,1} и в заключение - к полиномиальным возвратным последовательностям над множеством целых чисел. В результате для данных возвратных последовательностей получаем экспоненциальные емкостные (ленточные) и сверхэкспоненциальные временные нижние оценки сложности решения некоторых алгоритмических проблем.
Основные понятия
Рассматриваем одноленточную детерминированную машину Тьюринга Т с входным алфавитом {0,1, X} (X - «пустой» символ) и множеством внутренних состояний Q = {до,^1,---}, где ^ - начальное состояние, % - заключительное состояние. Функционирование машины Т определяется программой, которая состоит из команд вида
ац7 ^ ЬцуМ, (2)
где а,Ь е {0,1,X}, 0 < 7,у < 5, 7 Ф 0, Ме {Ь,Я} (нам удобно рассматривать машину, которая сдвигает головку на каждом шаге вычисления, что, разумеется, не умаляет общности рассуждений). Для любой пары (а, ) программа машины Т содержит не более одной команды (2) с левой частью (детерминированность машины Т). Вместе с тем по техническим причинам будем предполагать, что для любой пары (а, ), где 7 Ф 0, в программе машины Т имеется команда с левой частью .
Команда (2) интерпретируется обычным образом: если в момент времени ^ машина Т находится в состоянии , а ее головка обозревает символ а , то в момент времени (^ +1) машина Т будет находиться в состоянии цу,
обозреваемый символ а на ленте будет заменен символом Ь, а головка на ленте сдвинется на одну клетку влево или вправо в зависимости от равенства М = Ь или М = Я . В начальный момент времени на ленте машины Т записано некоторое слово а в алфавите {0,1}, все остальные клетки ленты заполнены символом X, машина находится в состоянии а ее головка обозревает первый символ слова а . Работа машины заканчивается по достижении ею заключительного состояния ^ . В этом случае говорим, что машина Т применима к слову а . Множество всех слов в алфавите {0,1}, к которым применима машина Т , образует язык, допускаемый (распознаваемый) машиной Т .
В дальнейшем будем рассматривать ограничения ^(п) на размер ленты, используемой в вычислении на машине Т . Будем говорить, что машина Т работает с зоной ^(п), если для всякого входного слова а длины п вычисление машины на входе а использует не более ^ (п) клеток ленты (сюда входят и клетки ленты, занятые словом а). Удобно предполагать, что ^ (п) клеток зоны вычисления начинаются в первой клетке слова а и распространяются только вправо от этой клетки. (Это ограничение можно было бы сразу внести в определение машины Т , потребовав, чтобы лента машины была односторонней вправо, в алфавите машины имелся символ I, отличный от символов {0,1, X} , в начальный момент на ленте машины записывалось слово 1а и в процессе вычисления машина не стирала бы данный символ I и не вписывала его в другие клетки. Однако мы предпочитаем оставаться в рамках первоначального соглашения.)
Положим
А = {0,1, X} и {0,1, X} х {0,1,..., 5}.
Если ае {0,1,А}, iе{0,1,...,5}, то посредством (а,/') будем обозначать символ множества {0,1,А}х{0,1,.,5} .
Пусть машина Т работает с зоной 5(п), в момент времени ^ на ленте машины записано слово а^..а$(п), где а^...,а$(п)е {0,1,А}, машина находится в состоянии и головка обозревает символ ат (1 < т < 5(п)) . Назовем конфигурацией машины Т в момент времени ^ слово
а1а2 • ат-1 (ат,0ат+1 • • • а5(п)
в алфавите А.
Результаты
Пусть Т - машина Тьюринга с входным алфавитом {0,1,А}, т - натуральное число и g(Х1,...,хт) - функция на множестве А . И пусть слово а длины т является начальной конфигурацией машины Т , а возвратная последовательность ^ (а, g) определяется начальными значениями а и порождающей функцией g . Будем говорить, что возвратная последовательность ^(а, g) моделирует вычисление машины Т с начальной конфигурацией а , если последовательность ^(а, g) содержит все конфигурации вычисления машины Т (начиная с конфигурации а ) в том порядке, в котором они появляются в вычислении машины Т .
Покажем, как можно промоделировать работу машины Т над словами длины 5"(п) > 4 в алфавите {0,1, А} возвратными последовательностями порядка (п) в алфавите А . С этой целью определим функцию /(Х1,., х$(п))
типа А5(п) ^ А . Пусть (а^...,а$(п)) - произвольный набор из А5(п). Возможны следующие случаи:
(1а) а1 е {0,1,А}, а2 =(а,/') и в программе машины Т имеется команда (2), где М = Ь .
(1Ь) а1,а2,а$(п)-1 е {0,1,А}, а$(п) = (а,i) и в программе машины Т имеется команда (2), где М = Я .
В этих случаях полагаем
/ (аь а2,•.., а5 {п)) = (аЪ У).
(2а) а1 = (а,/'), а2 е {0,1,А}, а§(п) = (с,у) и в программе машины Т имеется команда (2), где М = Ь .
(2Ь) а1 =(а,/'), а2 =(с, у) и в программе машины Т имеется команда (2), где М = Я.
В этих случаях полагаем
/ (аЬ а2,•••, (п)) = Ь
(3) Во всех остальных случаях полагаем
/ (аь а2,•, а5 (п)) = а1.
Отметим, что функция /(Х1,...,(п)) существенно зависит только от переменных xl, x2, ^(n)-1, ^(п).
На множестве А5 (п ' х А5 (п)
определим бинарное отношение Полагаем
(a1,a2,.,а5(п)) \ (Ь1,Ь2,.,Ь5(п)) в том и только том случае, когда
Ь1 = a2, Ь2 = ^'З^-^Ь5(п)-1 = а5(n), Ь5(п) = /(a1,a2,.,а5(п)).
Через Н обозначим рефлексивно-транзитивное замыкание отношения
Теорема 1. Пусть Т - машина Тьюринга с входным алфавитом {0,1, X}, п > 4, а - слово длины п в алфавите {0,1}, функция 5 (п) натурального аргумента удовлетворяет неравенству 5(п) > п, функция / (х1,..., х$ (п)) определена условиями 1-3, а возвратная последовательность ^(а,/) порядка 5(п) - функцией / и начальными значениями а,X,.,X . Тогда возвратная последовательность ^(а, /) моделирует вычисление машины Тьюринга Т на входном слове а с зоной 5(п).
Доказательство. Пусть а^.. ат-1(а, 7)ат+1... а$ (п) - произвольная незаключительная конфигурация машины Т . Покажем, что для конфигурации Ь1...Ь£(п) машины Т, непосредственно следующей за конфигурацией
а1... ат-1(а, 7 )ат+1... а$ (п), выполняется соотношение
(a1,...,am-1,(a,7)ат+1,.• •,аБ(п)) 1= (Ь1,.,ЬБ(п).
Сначала рассмотрим случай, когда в программе машины Т имеется команда (2) с левой частью и М = Ь . В этом случае равенство т = 1 не может выполняться по определению вычисления с зоной 5(п). Если т > 2 , то к набору (а1,...,ат-1,(а,7),ат+1,..., а$(п)) применим только пункт 3. Применяя его (т — 2) раза, получим
(a1,...,am—l,(a,7)ат+Ъ.• ^аБ(п)) 1= (ат—1,(a,7),am+1,.,аБ(n),a1,.,ат—2).
Теперь выполняются условия пункта 1а. Это дает соотношение (ат—1,(a,7),am+1,.,аБ(п),a1,.,ат—2) Ь
У ((а, 7) , ат+1,. • •, а5 (п), а1,. • •, ат—2, (ат—
Далее применяем пункт 2а и получаем
((a, 7) ат+Ъ. • •, аБ(п), аЬ. • •, ат—2, (ат—1, у) У У (ат+1,., аБ(п), аЬ. • •, ат —2, (ат—1, у),Ь).
Наконец, применение (5(п) — т) раз пункта 3 к последнему набору дает искомый результат:
(ат+1,•,аБ(п),aЪ•■■,ат-2,(ат-1,ЛЬ) 1=
|= (аЬ • • •, ат-2, (ат-1, у), b, ат+1, •, а5 (п)).
Случай т = 2 фактически содержится в рассмотренном случае т >2.
Пусть теперь в программе машины Т имеется команда (2) с левой частью ац^ и М = Я. Тогда в силу определения зоны 5(п) должно быть т < 5(п). Дальнейшие рассуждения во многом аналогичны рассуждениям в случае М = Ь . Сначала применяем к исходному набору т раз пункт 3 и получаем соотношение
(a1,•..,ат-1,(a,г'Хат+Ъ• • ^аБ(п)) Н (am+1,•,аБ(п),a1,•,am-1,(a,0).
Далее пользуемся пунктом 1Ь, что дает
(ат+1 , ат+2, • • •, а5 (п), а1, • • •, ат-1, (а, 0) У
У (am+2, •,аБ(п),аЪ • • •,ат-1,(a,i), (ат+1,7)).
Следующий этап - применение (5(п) — 2) раза пункта 3:
(ат+2,• ,аБ(n),a1,•■■,am—1,(a,i), (ат+1,7)) 1=
Н ((a, i ),(ат+Ъ 7), am+2, •, аБ (п^ a1, •, ат—1).
Затем применяем пункт 2Ь:
((a, (ат+1,7), am+2, •, а5(п), аЪ • • •, ат—1) I" У ((ат+1,Л am+2,•, а5 (п> a1,•, ат—1,
И в заключение применяем (5(п) — т) раз пункт 3:
((ат+1,7), ат+2, —, а5 (п), а1, - •, ат—1, Н (аЬ • • •, ат—1, b, (ат+1,Л ат+2, •, а5(п)).
Теорема доказана.
Из доказательства теоремы 1 вытекает, что в возвратной последовательности ^(а, /) за незаключительной конфигурацией непосредственно следующая конфигурация располагается на расстоянии 5(п), если головка машины сдвигается влево, и на расстоянии 25 (п) - если головка сдвигается вправо. Кроме того, нетрудно видеть, что в возвратной последовательности ^ (а, /) за заключительной конфигурацией на расстоянии 5 (п) располагается та же самая заключительная конфигурация.
Теорема 1 позволяет сделать некоторые выводы о сложности возвратных последовательностей над конечным множеством. Как следует из определений, рассматриваемая возвратная последовательность ^ (а, /) определяется двоичным набором а = (а1,. ,,ап), величиной 5 (п) и порождающей функцией /(Х1,„.,х^(п)). Последняя функция существенно зависит только от пе-
ременных Х1, Х2, х$(п)—1, х$(п). Поэтому, исключая «константную сложность»
дискретной функции от четырех переменных, получаем, что сложность задания функции / (х1,..., х$ (п)) практически совпадает со сложностью двоичного представления числа 5(п). Таким образом, если говорить о сложности задания возвратной последовательности Е (а, /), то она по существу определяется двумя параметрами: длиной п двоичного набора а и длиной двоичного представления числа 5(п), по порядку равной (п)) .
Теорема 1 доказана нами для любой функции 5(п), удовлетворяющей неравенству 5(п) > п . Однако на практике интерес представляют лишь такие функции 5(п), которые могут служить достижимыми (ленточно конструируемыми) границами зоны вычислений на машине Тьюринга (см. [6, 7]). Помимо этого, сложность задания возвратной последовательности Е(а, /) хотелось бы видеть близкой к п. В связи с этим наибольший интерес, на наш взгляд, представляют функции 5(п) вида сп, где с - натуральное число. В этом случае сложность задания возвратной последовательности Е (а, /) по
порядку равна п , а вычисление на моделируемой машине Тьюринга может
сп
продолжаться без зацикливания примерно 3 тактов. Таким образом, создается возможность формулировать алгоритмические проблемы для возврат-
п
ных последовательностей, имеющие нижнюю емкостную оценку вида с и
сп
нижнюю временную оценку сложности вида 3с . Для этого необходимо выбрать машину Тьюринга с входным алфавитом {0,1, X}, которая на зоне сп распознает язык, полиномиально полный в классе языков, детерминированно распознаваемых на зоне сп , т.е. полиномиально EXPSPACE-полной [6, 7].
Однако полученные результаты еще невозможно использовать для возвратных последовательностей над множеством целых чисел с полиномиальными порождающими функциями. В качестве следующего шага мы ходим показать, что те же самые результаты будут справедливы для возвратных последовательностей над множеством {0,1} с булевыми порождающими функциями. Для этого определим некоторое кодирование символов алфавита А словами алфавита {0,1} и соответствующим образом преобразуем функции / .
Пусть алфавит А содержит к символов. Выберем число й так, чтобы
выполнялось неравенство 2й > к , и определим равномерное (словами одинаковой длины) кодирование ф символов алфавита А двоичными словами
длины (4й + 2) . Пусть ф1 есть инъективное отображение алфавита А в множество {0,1}й , а отображение ф2 получается из отображения ф1, если в каждом кодовом слове ф1 (а) одновременно заменить все символы 0 словом 00, а все символы 1 словом 11. Искомое кодирование ф определим теперь равенством
ф(а) = ф2(а)ф2(а )01,
где а е А.
Покажем, что перестановка в кодовом слове не более чем (4й +1) первых символов в конец слова не приводит к потере информации об исходном кодовом слове. Более точно, пусть а1...ат - слово в алфавите А, т > 4, V = ф(а1)... ф(ат), 1 < г < 4й +1, и слово Ж получается из слова V удалением префикса Q длины г и приписыванием его справа к полученному после удаления слову. Покажем, что слово Q однозначно восстанавливается по первым 4(2й +1) и последним 2(2й +1) символам слова Ж .
В самом деле, если г < 4й , то начало слова Ж длины 4(2й +1) непременно содержит подслово вида 01ф(а), причем только одно такое слово. Если же ы, то начало слова Ж длины 4(2й +1) имеет вид 1ф(а)ф2(Ь)ф2(Ь)0 . По первым 4(2й +1) символам слова Ж можно однозначно определить, какой именно случай имеет место. Это вытекает из того, что слово вида 1ф(а)ф2(Ь)ф2(Ь)0 не может содержать подслово вида 01ф(с).
Если имеет место первый случай (т.е. г < 4й), то подслово 01ф(а) единственно, а г равно разности между (4й + 2) и длиной начала слова Ж , которое заканчивается первым символом слова ф(а). Слово Q в этом случае определяется последними г символами слова Ж .
Пусть имеет место второй случай. Тогда г = 4й +1 и слово Q образуют последние (4й +1) символов слова Ж .
Определим аналог функции / (х^..., х§ (п)) - булеву функцию g(л,...,Ур) от р = 2(2й +1)5(п) переменных. Аналогично функции / функция g будет существенно зависеть только от первых 4(2й +1) переменных и последних 4(2й +1) переменных. Мы хотим перенести на функцию g идею, примененную в пунктах 1-3 определения функции / . Основная техническая трудность здесь состоит в том, что каждая буква алфавита А кодируется двоичным словом длины 2(2й +1), и при посимвольной обработке этого слова возможна потеря информации о кодируемой букве. Эта трудность преодолевается за счет повторения в коде ф(а) слова ф2 (а) .
Более точно, пусть булев вектор (а1,..., ар) таков, что для некоторых д, 1 < д <4й, и а е А началом слова а1... ар служит слово а1... адф2 (а)01. Тогда для вычисления значения g (а1,..., ар) в соответствии с пунктами 1-3 используем код ф2 (а). Если же для выбранных д и а началом слова а1... ар является слово а^..ад01ф(а), то для вычисления значения g(а1,...,ар) используем код ф2 (Ь), где Ь е А и слово ф2 (Ь)ар—2й+д+1. • • ар есть конец слова а1...ар .
В качестве примера рассмотрим определение значения g(а1,...,ар) в случае, аналогичном случаю 2а для функции / . Пусть для некоторых д, 1 < д < 2й, и а,Ь1,Ь2 из {0,1,X} начало слова а1.ар имеет вид а1 .адф2(а,7)01ф(Ь1), конец - вид ф(Ь2,])ар—2й+д+1 ар и в программе машины Т имеется команда (2), где М = Ь . Тогда значение g(а1,.,ар) полагаем равным (2й — д +1) -му разряду слова ф2(Ь).
Пусть для некоторых ц, 1< ц < 2ё, и Ьр¿2 из {0,1,А} начало слова а^..ар имеет вид ар..ац01ф(Ь1), а конец - вид ф(Ь2,/)ф2(Ь)ар—2^+ц+1 •..ар . Тогда g(ар„.,ар) полагаем равным (2й — ц +1)-му разряду слова ф2(Ь).
Рассмотрение аналога случая 2а завершаем определением значения g(ap•..,ар), когда слово ар..ар имеет начало вида 01ф(^) или 1ф(^). Тогда полагаем соответственно g (а1, •.., ар) = 0 и g (а1, •.., ар) = 1. Заметим еще,
что при выполнении аналога пункта 3 мы пользуемся установленной выше возможностью восстанавливать исходное кодовое слово, когда из начала слова в его конец переставлен префикс длины ц , где 1 < ц < +1.
Заметим, что переход от возвратных последовательностей в алфавите А и порождающих функций на множестве А к возвратным последовательностям в алфавите {0,1} и булевым порождающим функциям проведен эффективно. Более того, как нетрудно видеть, указанный переход (от начальных членов последовательности и порождающей функции) можно выполнить на машине Тьюринга за квадратичное время. Это показывает, что отмеченные выше проблемы для возвратных последовательностей в алфавите А с очевидными изменениями переносятся на возвратные последовательности в алфавите {0,1}. Мы не будем оформлять этот результат в виде отдельной теоремы, а сразу перейдем к множеству целых чисел и полиномам над этим множеством.
Напомним следующий общеизвестный факт: любую булеву функцию можно реализовать формулой над множеством функций, состоящим из х (отрицание) и х & у (конъюнкция). Заметим также, что данные булевы функции на множестве {0,1} можно выразить целочисленными полиномами (1 — х) и ху. Отсюда сразу следует, что любая булева функция на множестве {0,1} представима некоторым целочисленным полиномом. Это позволяет при рассмотрении возвратных последовательностей над множеством {0,1} в качестве порождающих функций использовать специальные полиномы с целыми коэффициентами, полученные суперпозициями функций (1 — х), ху . Поскольку указанный переход от булевых функций (заданных формулами в базисе {х, х & у}) к соответствующим полиномиальным функциям выполняется за полиномиальное время, мы приходим к следующему утверждению.
Теорема 2. Пусть Т - машина Тьюринга с входным алфавитом {0,1,А}, функция ф (определенная выше) осуществляет равномерное кодирование букв алфавита А двоичными словами длины (4^ + 2), а функция 5(п) натурального аргумента удовлетворяет неравенству 5(п) > п . Тогда существует полиномиальный алгоритм, который для любого п > 4 по двоичной записи числа 5 (п) строит полиномиальную функцию
/1 4й+2 х1 4й+2 х1 4й+2 1 х4а+2 \
q^xЪ•••,х1 ,x2,•■■,х2 xS(n)—1,•■■,xS(n)—1,xS(n),•■■,х5(п) ]
такую, что для любого слова ар..ап в алфавите {0,1} возвратная последовательность, определенная начальными значениями ф(а1)„.ф(ап)ф(А)„.ф(А) и
порождающей функцией q, моделирует применение машины T к слову aj...an на зоне S(n) при кодировании букв алфавита A кодом ф.
Список литературы
1. Холл М. Комбинаторика. М. : Мир, 1970. 424 с.
2. Нечаев В. И. Элементы криптографии. Основы теории защиты информации. М. : Высшая школа, 1999. 108 с.
3. Марченков С. С. О сложности возвратных последовательностей // Дискретная математика. 2003. Т. 15, № 2. С. 52-62.
4. Марченков С. С. О сложности полиномиальных возвратных последовательностей // Проблемы передачи информации. 2018. Т. 54, № 3. С. 67-72.
5. Марченков С. С. О полиномиально-модульных возвратных последовательностях // Дискретная математика. 2022. Т. 34, № 2. С. 39-45.
6. Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. М. : Мир, 1979. 536 с.
7. Sipser M. Introduction to the theory of computation. Boston : PWS Publishing Company, 1997. 458 p.
References
1. Kholl M. Kombinatorika = Combinatorics. Moscow: Mir, 1970:424. (In Russ.)
2. Nechaev V.I. Elementy kriptografii. Osnovy teorii zashchity informatsii = Elements of cryptography. Fundamentals of information security theory. Moscow: Vysshaya shkola, 1999:108. (In Russ.)
3. Marchenkov S.S. On the complexity of recursive sequences. Diskretnaya matematika = Discrete math. 2003;15(2):52-62. (In Russ.)
4. Marchenkov S.S. On the complexity of polynomial recursive sequences. Problemy peredachi informatsii = Information transfer problems. 2018;54(3):67-72. (In Russ.)
5. Marchenkov S.S. On polynomial-modular recursive sequences. Diskretnaya matematika = Discrete math. 2022;34(2):39-45. (In Russ.)
6. Akho A., Khopkroft Dzh., Ul'man Dzh. Postroenie i analiz vychislitel'nykh algoritmov = Construction and analysis of computational algorithms. Moscow: Mir, 1979:536. (In Russ.)
7. Sipser M. Introduction to the theory of computation. Boston: PWS Publishing Company, 1997:458.
Информация об авторах / Information about the authors
Сергей Серафимович Марченков Sergey S. Marchenkov
доктор физико-математических наук, Doctor of physical and mathematical
профессор, профессор кафедры sciences, professor, professor
математической кибернетики, of the sub-department of mathematical
Московский государственный cybernetics, Lomonosov Moscow
университет имени М. В. Ломоносова State University (1 Leninskiye gory
(Россия г. Москва, ул. Ленинские горы, 1) street, Moscow, Russia)
E-mail: [email protected]
Авторы заявляют об отсутствии конфликта интересов / The authors declare no conflicts of interests.
Поступила в редакцию / Received 24.05.2022
Поступила после рецензирования и доработки / Revised 15.06.2022 Принята к публикации / Accepted 20.06.2022