zamanında matris ürün doğrulamasının yapılabileceği en genel yapı nedir ?


18

1979'da Freivalds , matris ürünlerinin herhangi bir alan üzerinde doğrulanmasının randomize sürede yapılabileceğini gösterdi. Daha resmi olarak, bir F alanından girdilerle üç A, B ve C matrisi verildiğinde, AB = C'nin rastgele bir zaman algoritmasına sahip olup olmadığını kontrol etme problemi .O(n2)O(n2)

Bu ilginçtir, çünkü matrisleri çoğaltmak için bilinen en hızlı algoritma bundan daha yavaştır, bu nedenle AB = C'nin C hesaplamasından daha hızlı olup olmadığını kontrol edin.

Matris ürün doğrulamasının hala zaman (randomize) algoritmasına sahip olduğu en genel cebirsel yapının ne olduğunu bilmek istiyorum . Orijinal algoritma tüm alanlarda çalıştığından, tüm integral alanlarında da çalıştığını düşünüyorum.O(n2)

Bu soruya verebileceğim en iyi cevap Yol, Matris ve Üçgen Sorunları Arasındaki Subkübik Eşdeğerliklerdeydi ve burada "halkalar üzerinde matris ürün doğrulaması rasgele zamanda [BK95] 'da yapılabilir. ([BK95]: M. Blum ve S. Kannan. Çalışmalarını kontrol eden programlar tasarlamak. J. ACM, 42 (1): 269-291, 1995.)O(n2)

Birincisi, halkalar bu sorunun randomize algoritmasına sahip olduğu en genel yapı mıdır? İkinci olarak, [BK95] 'in sonuçlarının tüm çalmalarda zaman algoritmasını nasıl gösterdiğini göremedim . Birisi bunun nasıl çalıştığını açıklayabilir mi?O ( n 2 )O(n2)O(n2)


Aptalca bir soru: deterministik doğrulamanın çarpma kadar zor olduğu açık mı? Ya sadece A, B ve C değil aynı zamanda kompakt bir sertifika verilirse; bir şey yardımcı oluyor mu?
Jukka Suomela

@Jukka: Bu sorun için en iyi deterministik algoritmanın matris çarpımından daha hızlı olmadığına inanıyorum, ancak bunun neden olması gerektiğinin bir nedeni olup olmadığını bilmiyorum. İkinci soru hakkında, AB C'ye eşit değilse, çalışan kısa bir sertifika vardır: yanlış olan C girişi ve A'nın karşılık gelen satırı ve B sütunu
Robin Kothari

Yanıtlar:


14

İşte neden halkalar üzerinde çalıştığına dair hızlı bir argüman. , B , C matrisleri göz önüne alındığında , rastgele bir bit vektörü v seçtikten sonra A B v = C v olup olmadığını kontrol ederek A B = C'yi doğrularız . A B = C ise bu açıkça geçer .ABCAB=CvABv=CvAB=C

Diyelim ki ve A B v = C v . Let D = A B - C . D , D v = 0 olan sıfır olmayan bir matristir . Bunun olma olasılığı nedir? Let D [ I ' , J ' ] sıfırdan farklı bir giriş olabilir. Varsayımla, j D [ i , j ] v [ j ] = 0ABCABv=CvD=ABCDDv=0D[i,j]jD[i,j]v[j]=0. Olasılık ile , v [ j ' ] = 1 elimizdeki yüzden,1/2v[j]=1

.D[i,j]+jjD[i,j]v[j]=0

İlave işlemi altındaki herhangi bir halka bir katkı grubudur, bu nedenle , yani - D [ i , j ] 'in benzersiz bir tersi vardır . Şimdi, kötü olayın olasılığını - D [ I ' , J ' ] = Σ j j ' D [ I ' , j ] v [ j ] , en fazla olduğu 1 / 2D[i,j]D[i,j]D[i,j]=jjD[i,j]v[j]1/2. (Bunu görmenin bir yolu "ertelenmiş kararlar ilkesidir": toplamın ' e eşit olması için , en az bir diğer D [ i , j ] sıfırdan farklı olmalıdır. v [ j ] bu sıfırdan farklı girişlere karşılık gelir. Bunlardan biri hariç tüm bu v [ j ] 'leri en uygun şekilde ayarlasak bile , sonuncusu için 0 veya 1 olma olasılığı hala eşittir.D[i,j]D[i,j]v[j]v[j]01Ama yine de sadece son toplamı yapabilir bu değerlerden biri için eşit .) Yani olasılık en azından ile 1 / 4 , başarılı bulmak D v 0 olduğunda, D sıfırdan farklıdır. (Not v [ j ] ve v [ j ] bağımsız olarak j j için seçilir .)D[i,j]1/4Dv0Dv[j]v[j]jj

Gördüğünüz gibi, yukarıdaki argüman çıkarmaya bağlıdır. Bu yüzden (örneğin) keyfi değişmeli yarılanmalar üzerinde çalışmaz. Belki cebirsel yapının çarpma özelliklerini gevşetebilir ve yine de sonucu elde edebilirsiniz?


Güzel, teşekkürler. Çarpıcı yapı üzerindeki kısıtlamaları azaltma olasılığı olduğuna dair görüşünüzü görüyorum. Sadece benim bilgim için, bu Freivalds'ın orijinal belgesindeki algoritma ile aynı değil mi?
Robin Kothari

Freivalds algoritması {-1,1} içindeki bileşenlerle rastgele bir vektör seçer. Bu da işe yarıyor. Daha dikkatli değilseniz size başarı olasılığı en az olmasını alabilirsiniz . 1/2
Ryan Williams
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.