сложность наибольшего общего делителя (gcd)


33

Рассмотрим следующую проблему подсчета (или связанную с ней проблему решения): учитывая два натуральных числа, закодированных в двоичном виде, вычислим их наибольший общий делитель (gcd). В каком классе наименьшей сложности содержится эта проблема? Можете ли вы предоставить ссылку?

В этом вопросе меня интересуют не асимптотические оценки времени выполнения, а классы сложности. Проблема в переменном токе? Можно ли доказать, что он не лежит в AC0? Какие еще классы сложности внутри P имеют здесь значение?


3
@Joe: Моя интерпретация заключается в том, что спрашивающий интересуется, является ли язык {(x, y, i) | i-й бит gcd (x, y) равен 1} в NC, AC0 и т. д., но было бы полезно получить уточнение от автора.
Цуёси Ито

1
Да, слова Цуеши о проблеме решения - это то, что я имел в виду - извините за двусмысленность. Однако, пожалуйста, не сосредотачивайтесь на классах сложности, которые я предложил, поскольку я просто не знаю, какие классы сложности здесь актуальны. Мне любопытно узнать о любом нетривиальном классе сложности, который является подмножеством P (или FP, соответственно), который содержит gcd.
Феликс Брейер

1
Мне любопытно о случае гауссовых целых чисел. Быстрый поиск в Google показывает способы адаптации нормального евклидова алгоритма, но ни один из них не обсуждает связь между натуральными числами и гауссовыми целыми числами. Дает ли какой-нибудь алгоритм gcd над натуральными числами алгоритм по гауссовым целым с той же сложностью? (У меня нет приложения, это просто любопытство.) Кроме того, существуют ли эффективные рандомизированные алгоритмы для вычисления GCD с меньшим ожидаемым временем работы?
Росс Снайдер


1
Исправленная ссылка: mathoverflow.net/questions/44684/… . Спасибо за предупреждение, Каве.
Зсбан Амбрус

Ответы:


44

Это главный открытый вопрос в теории сложности: неизвестно, можно ли вычислить GCD в NC, и неизвестно, является ли вычисление GCD P-полным. Лучшие параллельные алгоритмы имеют сублинейное параллельное время выполнения, один из таких алгоритмов принадлежит Соренсону:

Дж. Соренсон. Два быстрых алгоритма GCD . Журнал Алгоритмов, 1994.

Если я не ошибаюсь, даже не известно, можно ли решить, являются ли два целых числа относительно простыми в NC.


Спасибо, это то, что я хотел знать! Однако, если кто-то знает другие нетривиальные подмножества P, которые, как известно, содержат gcd, пожалуйста, дайте мне знать.
Феликс Бройер

15
Тестирование, если два целых числа являются относительно простыми, также открыто в соответствии с этой ссылкой: Ограничения параллельных вычислений , стр. 231, проблема B.5.7.
Робин Котари

4
Совсем недавно появилось упоминание: Соренсон, Джонатан П. «Рандомизированный сублинейный параллельный по времени алгоритм GCD для EREW PRAM». Письма обработки информации 110, нет. 5 (февраль 2010): 198-201. linkinghub.elsevier.com/retrieve/pii/S0020019009003640 .
Феликс Бройер


3

В этом документе, опубликованном в 2007 году, говорится, что целочисленный GCD находится в NC.

Изменить: утверждение, вероятно, неверно. Проверьте комментарии.


4
Статья никогда не публиковалась , она была размещена только на сайте автора. Кроме того, автор сам , кажется, не верить его бумаги 2007 является правильным, так как он перечисляет проблемы , как открыть в своих более поздних работах ( cs.cornell.edu/courses/CS6820/2012sp/Handouts/Sedjelmaci09.pdf ).
Эмиль Йержабек поддерживает Монику

Не знал этого. Спасибо за указание на это.
Апурв Гупта

1
Я не думаю, что такого рода ответы должны быть опущены.
Алессандро Косентино
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.