сложность наибольшего общего делителя (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
См. Также cstheory.stackexchange.com/questions/2708/…
Zsbán Ambrus
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
Я не думаю, что такого рода ответы должны быть опущены.
Алессандро Косентино