Versione moltiplicativa di 3-SUM


22

Cosa si sa della complessità temporale del seguente problema, che chiamiamo 3-MUL?

Dato un insieme di numeri interi, ci sono elementi tali che ?Sna,b,cSab=c

Questo problema è simile al problema 3-SUM, che chiede se ci sono tre elementi tali che (o equivalentemente ). 3-SUM è ipotizzato per richiedere un tempo approssimativamente quadratico in . Esiste una congettura simile per 3-MUL? In particolare, 3-MUL è noto per essere 3-SUM difficile?a,b,cSa+b+c=0a+b=cn

Nota, la complessità temporale dovrebbe applicarsi in un modello di calcolo "ragionevole". Ad esempio, potremmo ridurre da 3-SUM su un set a 3-MUL su set , dove . Quindi esiste una soluzione a 3-MUL, , se e solo se . Tuttavia, questa esplosione esponenziale dei numeri si ridimensiona molto male con vari modelli, come ad esempio il modello RAM.SSS={2xxS}2a2b=2ca+b=c


La tua riduzione mostra che 3-MULT è 3-SUM difficile se i numeri di input possono essere espressi usando la notazione esponenziale (aka scientifica).
Warren Schudy,

4
Qualsiasi algoritmo per 3-SUM che si basa esclusivamente sul fatto che l'addizione è un gruppo può essere tradotto in un algoritmo per 3-MULT e viceversa. Qualsiasi algoritmo che separa i due dovrebbe quindi fare qualcosa di insolito con i numeri.
Warren Schudy,

1
per essere orribilmente pedanti, potremmo aver bisogno solo di un semigruppo.
Suresh Venkat,

Risposte:


11

La riduzione da SUM a 3 MUL funziona con una modifica standard minore. Supponiamo che i tuoi numeri interi originali fossero in { 1 , ... , M }. Dopo la trasformazione x 2 x i nuovi numeri interi sono in { 2 , , 2 M }. Ridurremo l'intervallo.331,,Mx2x2,,2M

Considera qualsiasi triplo di numeri interi nel nuovo set S . Il numero di divisori primi di qualsiasi diverso da zero un b - c è < 2 M . Il numero di tali triple è n 3 . Quindi il numero di primi q che divide almeno una delle una b - c numeri non nulli è al massimo 2 M n 3 .a,b,cSabc<2Mn3qabc2Mn3

Sia l'insieme dei primi 2 M n 4 numeri primi. Il più grande di questi primi è di dimensioni al massimo O ( M n 4 log M n ) . Scegliere un numero primo casuale p P . Con alta probabilità p non dividerà nessuno dei diversi da zero a b - c , quindi possiamo rappresentare ciascuno a S per il suo residuo, mod p , e se 3 MUL trova qualche a b = c in SP2Mn4O(Mn4logMn)pPpabcaSp3ab=c , Con alta probabilità sarà corretto per l'istanza 3 SUMoriginale. Abbiamo ridotto l'intervallo dei numeri a { 0 , ... , O ( M n 4 log M n ) }.S30,,O(Mn4logMn)

(Questa è una riduzione delle dimensioni standard. Potresti essere in grado di fare meglio considerando il fatto che sono sempre differenze di due potenze di 2 ).un'B-c2


1
Non hai ridotto a 3MUL mod un numero primo anziché 3MUL? Può essere che ma a b c . ab=c(mod()p)abc
Warren Schudy,

1
Sì, così com'è, questa è una riduzione a 3MUL mod p. Buon punto.
Virgi,

Questo è un approccio molto interessante. Tuttavia, siamo particolarmente interessati a una riduzione deterministica da 3-SUM a 3-MUL. Sarebbe forse possibile randomizzare la tecnica di riduzione delle dimensioni?
Markus Jalsenius,

3

Hai provato la riduzione dove M = max S - min S ? I risultati sono numeri reali, quindi dovresti arrotondare ad un certo numero di cifre. Per garantire che i numeri si sommino correttamente nonostante l'arrotondamento, potrebbe essere necessario aggiungere un po 'di rumore casuale.S={2x/M|xS}M=maxSminS


Spiacenti, il rumore casuale non sembra sufficiente per correggere l'errore di arrotondamento. Tuttavia, queste idee sembrano promettenti per ridurre l'altro modo di mostrare 3-MULT non è più difficile di 3-SUM, poiché ad es. . (x+1)+y=x+y+1
Warren Schudy,

1
L'equazione non sembra corretta (provare xey = 2.1). Potresti chiarire cosa intendevi?
Raffaello,
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.