Научная статья на тему 'Об одном алгоритме, не согласующемся с тезисами Тьюринга, Черча и Маркова'

Об одном алгоритме, не согласующемся с тезисами Тьюринга, Черча и Маркова Текст научной статьи по специальности «Математика»

CC BY
882
62
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КОМБИНАТОРНОЕ МНОЖЕСТВО / КОМБИНАТОРНОЕ ЧИСЛО / ПОЛИНОМИАЛЬНОЕ МНОЖЕСТВО / ПОЛИНОМИАЛЬНЫЙ АЛГОРИТМ / COMBINATORY SET / COMBINATORY NUMBER / POLYNOMIAL SET / POLYNOMIAL ALGORITHM

Аннотация научной статьи по математике, автор научной работы — Кочкарев Баграм Сибгатуллович

Формулируется проблема из перечислительной комбинаторики и строится алгоритм ее решения, который отвергает тезисы соответствующих формальных понятий алгоритма. В работе также выяснена природа NP полных проблем.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Об одном алгоритме, не согласующемся с тезисами Тьюринга, Черча и Маркова»

Об одном алгоритме, не согласующемся с тезисами Тьюринга, Черча и Маркова Кочкарев Б.С.

Кочкарев Баграм Сибгатуллович /Kochkarev Bagram Sibgatullovich - кафедра высшей математики и математического

моделирования, кандидат физико-математических наук, доцент Иинститут математики и механики имени Н.И.Лобачевского Казанского (Приволжского) федерального университета

Аннотация: формулируется проблема из перечислительной комбинаторики и строится алгоритм ее решения, который отвергает тезисы соответствующих формальных понятий алгоритма. В работе также выяснена природа NP полных проблем.

Abstract: formulated the problem of enumerative combinatorics and construct an algorithm for its solution that rejects the corresponding abstract formal algorithms. In paper discovered also the nature ofNPC problems.

Ключевые слова: комбинаторное множество, комбинаторное число, полиномиальное множество, полиномиальный алгоритм.

Keywords: combinatory set, combinatory number, polynomial set, polynomial algorithm.

УДК 539.182: 535.33

В 30-х и 40-х годах прошлого столетия в Англии, США и в СССР математики предприняли попытку формализовать интуитивное понятие алгоритма. В Англии А. Тьюринг в 1937 году ввел понятие машины, позднее названной его именем, в США в 30-х - 40-х годах Черч, Клини и Пост ввели понятие рекурсивной функции и эффективной вычислимости и, наконец, в конце 40-х и начале 50-х годов прошлого столетия в СССР А.А. Марков ввел понятие нормального алгоритма (или алгорифма, как называл его сам автор). Эти объекты служили как средства для переработки информации, для чего служит и любой алгоритм в интуитивном смысле. Форма задания исходной информации, подлежащей переработке для этих объектов различна, но эти формы могут быть сведены одна к другой с помощью соответствующих перекодировок, и главный вопрос состоял в сравнении их возможностей. В результате исследований этих объектов была доказана их взаимная эквивалентность [1] и это обстоятельство подтолкнуло авторов этих объектов провозгласить соответствующие тезисы, суть которых состоит, скажем, на примере машины Тьюринга, в следующем: если имеется некоторый алгоритм в интуитивном смысле, то можно построить машину Тьюринга, эквивалентную этому алгоритму.

В настоящей работе мы опровергаем тезис Тьюринга, а вместе с ним и тезисы Черча и Маркова в силу эквивалентности соответствующих формальных понятий алгоритмов [1].

В перечислительной комбинаторике [2], обычно, дается бесконечный класс конечных множеств g , где i

пробегает некоторое множество индексов I (такое, как множество неотрицательных целых чисел N), и мы хотим сосчитать комбинаторное число |g| элементов в каждом g «одновременно». Множества g

мы будем называть комбинаторными множествами.

Однако для наших целей достаточно знать определенный ответ на вопрос: « |g.| полином или нет от i ». В случае утвердительного ответа на вопрос нам достаточно доказать, что | < о . где k некоторая константа.

Определение 1. Множество ^ называется полиномиальным, если |0 ^ . где k некоторая константа; в противном случае оно называется неполиномиальным.

Формулировка проблемы: пусть $ - комбинаторное множество и х - некоторый объект с легко проверяемым, (за полиномиальное число шагов от длины входа), признаком (свойством) сс . Необходимо

построить алгоритм, который не менее, чем за ^. число шагов определяет: х е или х£ •

Предлагается следующий алгоритм решения проблемы: мы предполагаем, что конечное множество ^

объектов находится в некоторой емкости О. Из емкости О мы извлекаем последовательно без возвращения все объекты до последнего включительно. Для последнего объекта мы проверяем наличие свойства сс . Если последний извлеченный объект обладает свойством сс, то проблема решена, т.е. х е £..

Если этот объект не обладает свойством сс , то все извлеченные из О объекты мы возвращаем в О и возобновляем процесс извлечения из О объектов, но при этом, при каждом очередном извлечении объекта, проверяем, обладает ли извлеченный объект свойством сс. Если для некоторого | + т.т < , шага объект

будет обладать свойством сс, то проблема решена, т.е. хе^.. Если для т < I с I ни один из извлеченных

объектов не обладает свойством а , то проблема также решена, только в этом случае в Q нет объекта со свойством сс. т.е. х í Из построенного алгоритма следует теорема.

Теорема. Если комбинаторное множество g является полиномиальным, то сформулированная

проблема решается за полиномиальное число шагов, именно, число шагов t построенного алгоритма

удовлетворяет неравенствам | < t < | • Если комбинаторное множество g не является

полиномиальным, то проблема не является полиномиальной.

Очевидно, если | > fa',к > 2, то комбинаторное множество не является полиномиальным.

Построенный алгоритм, из которого вытекает сформулированная выше теорема, очевидно, удовлетворяет всем требованиям интуитивного понятия алгоритма, но не вписывается в формальное

определение алгоритма, (например, «машина Тьюринга»), т.к. если х í , то ответ получается за | шагов алгоритма, а если х е £ , то ответ может быть получен, вообще говоря, за число шагов t, удовлетворяющее неравенствам | < t < J • но машина Тьюринга на любой допустимый вход дает ответ

за определенное число шагов. Поэтому построенный алгоритм аннулирует известный тезис: «для любого алгоритма можно построить машину Тьюринга, которая будет эквивалентна этому алгоритму».

В силу эквивалентности машине Тьюринга других известных алгоритмов (рекурсивные функции, нормальные алгоритмы) соответствующие тезисы также аннулируются.

Следствие 1. Если комбинаторное множество g не является полиномиальным, то соответствующий

алгоритм будет неполиномиальным.

Из [3,4] известно, что в сложностном классе NP [3] существуют неполиномиальные множества. Отсюда вытекает следствие.

Следствие 2. NP полные проблемы не являются полиномиальными.

Литература

1. Игошин В.И. Математическая логика и теория алгоритмов. М.: ACADEMIA, 2004. 448с.

2. StanleyR.P. Enumerative Combinatorics. City: by Wadsworth, Inc. California, 1986. 440p.

3. Kochkarev B.S. About one class polynomial problems with not polynomial certificates. Second International Conference «Cluster Computing» CC2013 (Ukraine, Lviv, June 3-5, 2013) p. 99-100.

4. Кочкарев Б.С. К проблеме Кука. Математическое образование в школе и в Вузе в условиях перехода на новые образовательные стандарты. Материалы Всероссийской научно-практической конференции с международным участием. Казань, ТГГПУ,2010. с.133-136.

i Надоели баннеры? Вы всегда можете отключить рекламу.