complessità del massimo comun divisore (gcd)


33

Considera il seguente problema di conteggio (o il problema di decisione associato): dati due numeri interi positivi codificati in binario, calcola il loro massimo comune divisore (gcd). Qual è la classe di complessità più piccola in cui è contenuto questo problema? Potete fornire un riferimento?

In questa domanda non sono principalmente interessato ai limiti asintotici sul tempo di esecuzione, ma piuttosto alle classi di complessità. Il problema è in AC? Si può dimostrare di non trovarsi in AC0? Quali sono le altre classi di complessità all'interno di P che sono rilevanti qui?


3
@Joe: La mia interpretazione è che l'interrogante è interessato a sapere se la lingua {(x, y, i) | l'i-esimo bit di gcd (x, y) è 1} è in NC, AC0, ecc., ma sarebbe utile un chiarimento da parte del richiedente.
Tsuyoshi Ito,

1
Sì, la frase di Tsuyoshi sul problema decisionale è ciò che avevo in mente: scusate per l'ambiguità. Tuttavia, ti preghiamo di non concentrarti sulle classi di complessità che ho suggerito, poiché semplicemente non so quali classi di complessità siano rilevanti qui. Sono curioso di conoscere qualsiasi classe di complessità non banale che è un sottoinsieme di P (o FP, resp.) Che contiene gcd.
Felix Breuer,

1
Sono curioso del caso degli interi gaussiani. Ricerche rapide su Google mostrano come adattare il normale algoritmo euclideo, ma nessuno di loro discute della relazione tra i numeri naturali e gli interi gaussiani. Qualche algoritmo gcd sui numeri naturali ci fornisce un algoritmo sugli interi gaussiani con la stessa complessità? (Non ho un'applicazione, questa è pura curiosità.) Inoltre, esistono algoritmi randomizzati efficienti per il calcolo di GCD con tempi di esecuzione previsti inferiori?
Ross Snider,


1
Link corretto: mathoverflow.net/questions/44684/… . Grazie per l'avvertimento, Kaveh.
Zsbán Ambrus,

Risposte:


44

Questa è una grande domanda aperta nella teoria della complessità: non è noto se i GCD possano essere calcolati in NC e non è noto se il calcolo dei GCD sia P-completo. I migliori algoritmi paralleli hanno un tempo di esecuzione parallelo sub-lineare, uno di questi è dovuto a Sorenson:

J. Sorenson. Due algoritmi GCD veloci . Journal of Algorithms, 1994.

Se non sbaglio, non è nemmeno noto se si può decidere se due numeri interi sono relativamente primi in NC.


Grazie, questo è quello che volevo sapere! Tuttavia, se qualcuno conosce altri sottoinsiemi non banali di P che sono noti per contenere gcd, per favore fatemi sapere.
Felix Breuer,

15
Testare se due numeri interi sono relativamente primi è anche aperto secondo questo riferimento: Limiti al calcolo parallelo , pagina 231, problema B.5.7.
Robin Kothari,

4
Un riferimento molto recente è: Sorenson, Jonathan P. "Un algoritmo GCD parallelo randomizzato in tempo sublineare per la PRAM EREW". Lettere di elaborazione delle informazioni 110, n. 5 (febbraio 2010): 198-201. linkinghub.elsevier.com/retrieve/pii/S0020019009003640 .
Felix Breuer,


3

Questo documento, pubblicato nel 2007, afferma che l'intero GCD è in NC.

Modifica: l'affermazione è probabilmente falsa. Controlla i commenti


4
Il documento non è mai stato pubblicato , è stato pubblicato solo sul sito Web dell'autore. Inoltre, lo stesso autore non sembra credere che il suo documento del 2007 sia corretto, poiché elenca il problema come aperto nei suoi articoli successivi ( cs.cornell.edu/courses/CS6820/2012sp/Handouts/Sedjelmaci09.pdf ).
Emil Jeřábek sostiene Monica il

Non lo sapevo. Grazie per segnalarlo.
Apoorv Gupta,

1
Non credo che questo tipo di risposte debba essere sottovalutato.
Alessandro Cosentino,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.