Levin'in optimal faktoring algoritması için referans mı?


13

Manuel Blum'un "Yeni Başlayan Bir Yüksek Lisans Öğrencisine Tavsiye " bölümünde :

LEONID LEVIN, P = NP'nin cevabı ne olursa olsun bunu yaptığımı düşünüyor sorun, olması gerektiğini düşündüğünüz hiçbir şey gibi olmayacak. Ve bazı harika örnekler verdi. Birincisi, çarpımsal bir sabite kadar belirgin şekilde optimal olan bir FAKTÖREL ALGORİTMA verdi. Algoritmasının üstel olması durumunda, FACTORING için her algoritmanın üstel olduğunu kanıtlar. Eşdeğer olarak, faktoring için herhangi bir algoritma poli-zaman ise, algoritması poli-zamantır. Ancak algoritmasının çalışma süresini söyleyemedik, çünkü güçlü bir anlamda, çalışma süresi analiz edilemez.

Levin'in yayınlar sayfası 404 döndürür, DBLP faktoring ile ilgili hiçbir şey göstermez ve Google Akademik'te "leonid levin faktoring" araması bulabildiğim ilgi çekici bir şey döndürmez. AFAIK genelleştirilmiş elek, faktoring için bilinen en hızlı algoritmadır. Manuel Blum ne hakkında konuşuyor? Beni bir kağıda bağlayan var mı?

Yanıtlar:


11

NP

İşte Blum tarafından GÜVENLİK ve KRİPTOGRAFİ üzerine verilen ders notlarından bir alıntı :

Leonid LEVIN'in OPTİMAL SAYISI YARMA (FAKTORİNG) ALGORİTMASI. SPLIT'in INPUT'u hesaplayan herhangi bir algoritmayı göstermesine izin verin: pozitif bir kompozit (yani asal değil) tamsayı n. ÇIKTI: önemsiz bir faktör n.

THEOREM: OPTIMAL-SPLIT adını verdiğimiz "optimal" sayı bölme algoritması var. Bu algoritma şu anlamda OPTIMAL'dir: her sayı bölen Algoritma SPLIT için (oldukça büyük fakat sabit) bir sabit C vardır, öyle ki her pozitif kompozit tamsayı girişi n için, OPTIMAL-SPLIT'in n girişindeki "çalışma süresi" n girişinde SPLIT'in çalışma süresinin en fazla C katı.

İşte Levin'in optimal faktoring algoritması :

OPTIMAL-SPLIT ALGORITHM: BEGIN Tüm algoritmaları boyut olarak, her boyutta sözlükbilimsel olarak numaralandırır. Tüm algoritmaları çalıştırın, böylece herhangi bir anda t, i algoritması yürütme süresinin [1 / (2 ^ i)] kısmını alır. Bir algoritma 1 <m <n aralığında m çıkış tamsayısıyla m durursa, m'nin n'yi bölüp bölmediğini kontrol edin (yani n mod m = 0 ise). Eğer öyleyse, m. SON


Birisi kesirin neden 1 / (2 ^ i) olması gerektiğini ancak 1 / i gibi daha basit bir şey olmadığını açıklayabilir mi?
netvope

1
@netvope: 1 / i değerinin sonsuz toplamı. 1 / i ^ 2 ile yapabilirsiniz ama 1/2 ^ i çok daha basittir.
Antimon

3

NPcoNP

Bir sayı verildiğinde N'yi çarpanlarına ayırmak istiyoruz.

N asal mı? Öyleyse, 'PRIME' çıktısını alın:

i=1...

P=1...i

N girişi ile i adımları için P programını çalıştırın

L1M1N=LM(L,M)


4
Bilinen bir öncelik testini kullanamazsınız çünkü optimal faktoringden daha hızlı olduğu bilinmemektedir. Bunun dışında bir noktayı anlamıyorum. Bunun sabit bir faktöre kadar çarpanlara ayırmak için en uygun olduğunu kanıtlamak için, son adımdaki çarpmanın zaman karmaşıklığındaki baskın terim olmadığını kanıtlamamız gerektiğini düşünüyorum. Doğru hatırlamıyorsam, asimptotik ayarda bilinen en hızlı çarpma algoritması FFT'ye dayanır ve n-bit tamsayılar için O (n log n log log n) zaman alır. Optimal faktoringin en azından bu kadar sürdüğünü kanıtlamak mümkün müdür?
Tsuyoshi Ito

@Tsuyoshi: Bilinen çarpma / öncelik testleri çarpanlara ayırma işleminden daha zorsa bu algoritmanın en iyi şekilde başarısız olduğu konusunda haklısınız. Bununla birlikte, Blum'un yukarıdaki alıntısını okursanız, sadece Levin'in algoritmasının sadece ve en uygun olanı ise polinom olduğunu söyler, bu da bu sorunu inceler. Diğer iki şey: (1) bu algoritmada bilinen bir öncelik testi kullanmaktan nasıl kaçınabilirsiniz? (2) Sanırım bu algoritma, çalışma süresinin farklı programlar arasında düzgün bir şekilde bölünmemesi nedeniyle tam olarak formüle edilmemiştir; Doğru formülasyon için Al-Türkistan'ın cevabına bakınız.
Peter Shor

@Peter: Blum'un alıntısı, “o [Levin], çarpımsal bir sabite kadar makul derecede optimal olan bir FAKTORİNG ALGORİTMİ verdi” diyor. Ancak, faktoringin doğrusal zamandan daha uzun sürüp sürmediğini bile bilmediğimiz göz önüne alındığında, ifadeye olduğu gibi inanmak zor.
Tsuyoshi Ito

@Tsuyoshi: Anlıyorum, yanlış Blum alıntısını okuyordum.
Peter Shor
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.