Faktoring ile temsil edilen tam sayıları eklemek faktoring kadar zor mu? Referans talebi


22

Aşağıdaki sonuç için bir referans arıyorum:

Faktörlü gösterimde iki tamsayı eklemek, normal ikili gösterimde iki tamsayı faktoring kadar zordur.

(Orada olduğundan eminim, çünkü bu bir noktada merak ettiğim bir şeydi ve nihayet baskıda gördüğümde heyecanlanmıştı.)

"Katsayıları gösteriminde iki tamsayı ekleme" sorun: iki sayı asal çarpanlama verilen ve y , çıkış asal çarpanlara x + y . Bu problem için naif algoritmanın, standart ikili gösterimde bir alt yordam olarak çarpanlaştırmayı kullandığına dikkat edin.xyx+y

Güncelleme : deliller için teşekkürler Kaveh ve Sadeq. Belli ki, neşeli olanı daha fazla ispat ediyor, ancak aynı zamanda , kesinlikle var olduğumu söylediğim gibi bir referans bulmada daha fazla yardım teşvik etmek istiyorum . İçinde başka ilginç ve sıkça tartışılmayan fikirleri olan bir makalede okuduğumu hatırlıyorum, fakat diğer fikirlerin ne olduğunu ya da makalenin genel olarak neyle ilgili olduğunu hatırlamıyorum.


6
Daha iyi bir başlık olacağını düşünüyorum "Faktoring tarafından temsil edilen iki tamsayının toplamını faktoring kadar zor mu?"
MS Dousti

1
Güzel soru. Belirli bir tamsayıyı, faktör faktörü tamsayısının toplamının iki toplamı olarak yazabilirsek, sonra ne istediğinizi yazabilirsiniz. numaralarını istiyorsak yapmak kolaydır , ancak log log n numaralarıyla bile nasıl yapıldığını göremiyorum . Faktörü kolay olan sayı sınıflarına bakmaya değer. lognloglogn
Kaveh

1
MO ve Math.SE üzerinde bazı ilgili sorular: 1 , 2 , 3
Kaveh

Yanıtlar:


15

Karmaşıklık sınıf içinde (FactSum diyoruz sağlar) biz sorunu çözebilir varsayın ve C altında kapalı olan günlük -iteration (aka log biz hesaplayabilir eğer mesela (-bounded özyinelemeye) x * y * ikili işlevdir, biz hesaplanan x 1x log n ) ve P içerir (bu son koşul zayıflatılabilir). Faktoringin C de olduğunu gösteriyor .CCloglogxyx1xlognPC

Her bir numara bir toplamı olarak yazılabilir unutmayın güçleri 2 . Her birinin faktörü kolaydır.logn2

Şimdi bir sayı verilmişse, güçlerinin toplamı olarak yazınız, sonra her bir toplamı faktoring gösterimine yazınız ve ardından algoritmayı faktoring gösteriminde toplamak için algoritmayı kullanınız. Sonuç, giriş numarasının faktoringi olacaktır.

Bu, faktoringin, probleminizin FactSum'a logration'a indirgenebileceğini gösterir . Bu yüzden faktoring P FactSum'da (ve burada P'nin N C 1 ile değiştirilebileceğini düşünüyorum ).logPFactSumPNC1


10

Bir referansın farkında değilim, ancak sanırım bir kanıt buldum:

Eğer bir kahin olduğunu varsayalım girişi iki faktörlü numaraları, hangiO

x=i=1npiαi

ve

y=i=1mqiβi,

çarpanlara çıkışını verir .x+y

Erişimi olan , herhangi bir sayıda faktör olabilir N , aşağıdaki tekrarlamalı bir prosedür kullanılarak polinom zamanda.ON

PROSEDÜR faktörü ( )N

  1. Bir asal Bul öyle ki , N / 2 x N - 1 ve izin Y = N - x .xN/2xN1y=Nx
  2. Eğer bir asal değilse , özyinelemeli çağrı faktörü ( y ) ve çıkış O ( x , f a c t o r ( y ) ) ile y faktörleşmesini elde edin .yyyO(x,factor(y))
  3. Başka çıkış .O(x,y)

Analiz:

By asal sayı teoremi yeterince büyük için , aradaki asal bol N / 2 ve N - 1 . Eğer N o kadar küçükse, bu aralıkta asal düşme olmazsa, kolayca N faktörü atabilirsiniz . Bu nedenle, adım 1 geçer.NN/2N1NN

2. adımda, AKS veya başka herhangi bir polinom-zaman önceliği testini kullanabilirsiniz.

Özyineleme sayısı basitçe , çünkü her adımda N yarı yarıya kesilir (en azından)O(lg(N))=O(|N|)N


Not PS-1: Goldbach'ın varsayımının eşit (ve muhtemelen garip) tamsayılar için prosedürün hızlandırılmasında yardımcı olabileceği varsayılmaktadır .

PS-2: Kullanılan azalma Cook azaltmasıdır. Birisi Karp azaltmalarını kullanarak ispat yapmakla ilgilenebilir.


3
Verili bir aralıkta verimli bir üssü bulabilirsek açık olduğunu düşünüyorum, bu yüzden nasıl yaptığınızı göremiyorum 1
Kaveh

1
xy

2
Evet, aynı fikre sahip olduğumuzu düşünüyorum, yani girdiyi toplayan faktör tamsayılarını kolay bulmak istedim, üsteller kullanmaya çalıştım, 2 güç kullandım. :) Hala yapabilecek miyiz bilmiyorum oracle logaritmik sorgu sayısından daha azdır ve bu ilginç ve doğal sayı teorisi sorusuyla ilişkili gibi görünmektedir (sayıları, faktör sayısının kolay sayısının toplamı olarak yazmak).
Kaveh

5

Bu cevap önceki cevabımdan bağımsız . Buradaki amaç, @ Kaveh'ın yorumdaki endişesini ele almaktır:

lognloglogn

Benzer bir endişem vardı:

Kullanılan azaltma, Cook azaltmasıdır. Birisi Karp azaltmalarını kullanarak ispat yapmakla ilgilenebilir.

(Karp azaltma karar problemleri içindir. Burada, Karp azaltma ile tek sorgu Cook azaltma demek istiyorum. Standart olmayan terminoloji için özür dilerim!)


Aşağıdaki cevap buradaki tartışmalara dayanmaktadır: /math/54580/factoring-some-integer-in-the-given-interval .


Bu cevapta, faktörizasyonları ile temsil edilen iki tamsayının toplamını faktoringe faktoringden çok belirleyici bir polinimyal-zaman Karp azaltımı sağlayacağım . Yine de bir tane yakalama var: Kanıt sırasında aşağıdaki sayı teorik varsayımı kullanacağım:

pnpn+1pn+1pn=O(log2pn)

Nn=|N|=O(logN)N[Nlog3N,N]log3N=O(n3)

x[Nlog3N,N]y=Nx

0ylog3N|y|=O(loglogN)=O(logn)y

(x,y)N=x+y


Sadeq teşekkürler, ancak şartlı sonuçlar istediğim şey değildi. ps: Sayıların ilginç temsilleriyle ilgileniyorum ve cevabınızdan aldığınız (büyük bir üssü çeken) benim için pek ilginç görünmüyor. Benim için ilginç olan şeyin tadını verdiğim için: her doğal sayı dört karenin toplamıdır .
Kaveh
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.