складність найбільшого спільного дільника (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 / ... . Дякую за попередження, Каве.
Zsbán Ambrus

Відповіді:


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.