3-SUM'un çarpımsal sürümü


22

3-MUL olarak adlandırdığımız aşağıdaki sorunun zaman karmaşıklığı hakkında bilinenler nelerdir?

Verilen bir dizi S ve n tamsayılardır, orada elemanları a,b,cS şekilde ab=c ?

Bu problem 3-SUM problemine benzer, a,b,cS şeklinde a+b+c=0 (veya eşdeğerde a+b=c ) olup olmadığını sorar . 3-SUM, cinsinden kabaca ikinci dereceden bir zaman gerektirecek şekilde hesaplanmıştır n. 3-MUL için benzer bir varsayım var mı? Spesifik olarak 3-MUL'un 3-SUM zor olduğu bilinmektedir?

Not, zaman karmaşıklığının “makul” bir hesaplama modelinde uygulanması gerekir. Örneğin, bir dizi 3-toplamından azaltabilecek S set 3-MUL için S , burada S={2xxS} . Daha sonra, 3-MUL, bir çözelti, 2a2b=2c , ancak ve ancak mevcut a+b=c . Bununla birlikte, sayıların bu üssel patlaması, örneğin RAM modeli gibi, çeşitli modellerde çok kötü ölçeklenmektedir.


Azalttığınız durumda, giriş numaraları üstel (yani bilimsel) gösterimi kullanılarak ifade edilebilirse, 3-MULT'un 3-SUM zor olduğunu gösteriyor.
Warren Schudy

4
3-SUM için, yalnızca eklemenin bir grup olduğu gerçeğine dayanan herhangi bir algoritma, 3-MULT için bir algoritmaya çevrilebilir, veya tersi. Bu nedenle ikisini ayıran herhangi bir algoritmanın, sayılarla alışılmadık bir şey yapması gerekir.
Warren Schudy

1
Korkunç derecede bilgiçlik yapmak için sadece bir yarı gruba ihtiyacımız olabilir.
Suresh Venkat

Yanıtlar:


11

Elde ettiğiniz azalma 3 için SUM 3 MUL küçük standart modifikasyonu ile çalışır. Orijinal tamsayılarınızın { 1,,M } olduğunu varsayalım . dönüşümünden sonra x2xyeni tamsayılar { 2,,2M } değerindedir. Aralığı azaltacağız.

Yeni S setindeki tam sayılarının üçlü değerini göz önünde bulundurun . Asal bir Sıfır dışındaki bölenler sayısı bir B - c bir < 2 M . Bu tür üçe sayısıdır , n 3 . Bu nedenle asal sayısı q olan bölme en az bir , bir b - c sıfır olmayan numaraları En olan 2 M n- 3 .a,b,cSabc<2Mn3qabc2Mn3

Let ilk kümesi 2 M n 4 asal. Büyük gibi asal en boyutta olan O ( M n 4 günlük M n ) . Rastgele asal Seçim s P . Yüksek bir olasılık ile, p Sıfır dışındaki herhangi bir bölmek olmayacak bir B - c biz temsil böylece, her bir S ' de tortu, mod ile p ve eğer 3 MUL bazı bulan bir b = c olarak SP2Mn4O(Mn4logMn)pPpabcaSp3ab=c , Yüksek olasılıkla orijinal için doğru olur 3 SUM örneği. Biz sayı aralığı azaltmıştır { 0 , ... , O ( M n 4 günlük M n ) }.S30,,O(Mn4logMn)

(Bu standart bir boyut küçültme olduğunu Sen gerçeğini dikkate alarak daha iyi yapmak mümkün olabilir. daima iki güçlerin farklar 2 ).abc2


1
3MUL yerine asal olarak 3MUL modunu azaltmadınız mı? Bu ama . a b cab=c(mod()p)abc
Warren Schudy

1
Evet, olduğu gibi, bu 3MUL mod p değerine bir azalmadır. İyi bir nokta.
virgi

Bu çok ilginç bir yaklaşım. Bununla birlikte, özellikle 3-SUM'dan 3-MUL'a deterministik bir düşüşle ilgileniyoruz. Boyut küçültme tekniğini iptal etmek belki mümkün olabilir mi?
Markus Jalsenius

3

Eğer redüksiyon denediniz nerede ? Sonuçlar gerçek sayılardır, bu nedenle bazı rakamlara yuvarlamanız gerekir. Yuvarlamalara rağmen sayıların doğru şekilde eklendiğinden emin olmak için biraz rastgele gürültü eklemeniz gerekebilir.K = maks S - dk SS={2x/M|xS}M=maxSminS


Hata! Rasgele gürültü, yuvarlama hatasını düzeltmek için yeterli görünmüyor. Bununla birlikte, bu fikirler, 3-MULT'u göstermenin diğer yollarını azaltma konusunda umut verici görünmektedir, çünkü örneğin, . (x+1)+y=x+y+1
Warren Schudy

1
Denklem doğru görünmüyor (deneyin x ve y = 2.1). Ne demek istediğini açıklayabilir misin?
Raphael
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.