Kompleksitas rangkaian aritmatika monoton polinomial simetris elementer?

14

Polinomial simetris dasar - k S n k ( x 1 , , x n ) adalah jumlah dari semua produk dari variabel yang berbeda. Saya tertarik pada kompleksitas rangkaian aritmatika monoton dari polinomial ini. Algoritma pemrograman dinamis sederhana (serta Gambar 1 di bawah) memberikan sirkuit dengan gerbang O (kn) .kSkn(x1,,xn)(nk)k(+,×)(+,×)O(kn)

Pertanyaan: Apakah batas bawah Ω(kn) diketahui?

A sirkuit miring jika setidaknya salah satu dari dua input dari setiap gerbang produk adalah variabel. Sirkuit seperti itu sebenarnya sama dengan switching-and-rectifying network (grafik asiklik terarah dengan beberapa sisi dilabeli oleh variabel; setiap jalur st memberikan produk labelnya, dan hasilnya adalah jumlah dari semua jalur st). Sudah 40 tahun yang lalu, Markov terbukti hasil mengejutkan yang ketat: minimal monoton sirkuit condong aritmatika untuk telah persis gerbang produk. Batas atas mengikuti dari Gambar. 1: (+,×)Skn k(nk+1)masukkan deskripsi gambar di sini

Tapi saya belum melihat ada upaya untuk membuktikan batas bawah untuk sirkuit non-condong. Apakah ini hanya "kesombongan" kita, atau adakah beberapa kesulitan yang melekat yang diamati sepanjang jalan?

PS Saya tahu bahwa gerbang Ω(nlogn) diperlukan untuk secara bersamaan menghitung semua S1n,,Snn . Ini mengikuti dari batas bawah pada ukuran sirkuit boolean monoton menyortir input 0-1; lihat halaman 158 buku Ingo Wegener . Jaringan penyortiran AKS juga menyiratkan bahwa gerbang O(nlogn) sudah cukup dalam hal ini (boolean). Sebenarnya, Baur dan Strassen telah membuktikan \ Theta (n \ log n) yang terikat erat Θ(nlogn)pada ukuran rangkaian aritmatika non-monoton untuk Sn/2n . Tapi bagaimana dengan sirkuit aritmatika monoton ?

Stasys
sumber

Jawaban:

6

Salah satu tantangan adalah bahwa jika Anda menghapus "monoton" pembatasan, kita lakukan tahu bagaimana untuk menghitung hal-hal seperti efisien. Anda dapat menghitung nilai semua (mengevaluasi semua n + 1 polinomial simetris elementer) dalam waktu O ( n log 2 n ) , menggunakan penggandaan polinomial berbasis FFT. Jadi, membuktikan Ω ( n k ) batas bawah dalam model rangkaian monoton akan membutuhkan pembuktian Ω ( n 2 )S0n,,Snnn+1O(nlog2n)Ω(nk)Ω(n2) batas bawah pada penggandaan polinomial.

Begini caranya. Perkenalkan tidak diketahui secara formal , dan pertimbangkan polinomialnyay

P(y)=i=1n(1+xiy).

Perhatikan bahwa sejak 's adalah konstanta diketahui, ini adalah polinom satu variabel dengan tidak diketahui y dan dengan gelar n . Sekarang Anda dapat mencatat bahwa koefisien y k dalam P ( y ) persis S n k , jadi untuk mengevaluasi semua S n 0 , ... , S n n , cukup untuk menghitung P ( y ) .xiynykP(y)SknS0n,,SnnP(y)

Ini memungkinkan untuk menghitung dalam waktu O ( n lg 2 n ) : membangun pohon biner polinomial seimbang dengan ( 1 + x i y ) di daun, dan mengalikan polinomialnya. Mengalikan dua polinomial derajat d membutuhkan waktu O ( d lg d ) menggunakan teknik FFT, jadi kami mendapatkan rekurensi T ( n ) = 2 T ( n / 2 ) +P(y)O(nlg2n)(1+xiy)dO(dlgd) , yang diselesaikan dengan T ( n ) = O ( n lg 2 n ) . Untuk kenyamanan, saya mengabaikanfaktor poli ( lg lg n ) .T(n)=2T(n/2)+O(nlgn)T(n)=O(nlg2n)poly(lglgn)

Jika Anda peduli dengan kasus di mana sangat kecil, Anda dapat menghitung S n 0 , , S n k di O ( n lg 2 k ) menggunakan trik yang serupa, mengingat bahwa Anda hanya peduli pada mod P ( x ) y k + 1 (yaitu, membuang semua istilah y k + 1 atau kekuatan y yang lebih tinggi ).kS0n,,SknO(nlg2k)P(x)modyk+1yk+1y

Tentu saja, FFT menggunakan pengurangan, jadi secara naif itu tidak bisa diungkapkan dalam rangkaian monoton. Saya tidak tahu apakah ada cara lain untuk melipatgandakan polinomial secara efisien dengan sirkuit aritmatika monoton, tetapi metode monoton yang efisien untuk penggandaan polinomial segera mengarah ke suatu algoritma untuk masalah Anda juga. Jadi, batas bawah pada masalah Anda memerlukan / menyiratkan batas bawah untuk perkalian polinomial.

DW
sumber
2
DW, terima kasih sudah mengingat konstruksi ini! Ini biasanya dikaitkan dengan Ben-Or, dan saya seharusnya menyebutkannya. Konstruksi juga memberikan formula <i> </i> dengan ukuran dan kedalaman hanya 3 (!) Yang menghitung operator S n 0 , ... , S n n (dengan mengevaluasi P ( y ) pada beberapa n + 1O(n2)3S0n,,SnnP(y)n+1poin). Ini digunakan untuk memisahkan formula kedalaman kecil homogen dan non-homogen. Tetapi, seperti yang Anda sebutkan, konstruksi secara substansial menggunakan pengurangan. Jadi, pertanyaan saya bertanya: seberapa "substansial" penggunaan ini sebenarnya? Ini bisa menarik juga dalam skenario kedalaman terbatas.
Stasys
3
@Stasys: Saya pikir pengurangan cukup penting. Yaitu. Nisan-Wigderson terikat lebih rendah pada kedalaman 3 sirkuit homogen ; di sirkuit 3 kedalaman homogen, intinya adalah bahwa tidak ada gunanya menghitung istilah yang derajatnya berbeda dari tingkat output. Jadi ini membatasi jenis pembatalan yang bisa terjadi. Sedangkan dalam konstruksi Ben-Atau, untuk menghitung , kita perlu menghitung polinomial derajat n (meskipun output memiliki derajat k < n ), dan kemudian secara krusial menggunakan pembatalan untuk menyingkirkan syarat derajat > k . Ini bukan bukti, hanya intuisi ...Sknnk<n>k
Joshua Grochow
@ Yosua: ya, kita tahu bahwa koefisien variabel dalam polinomial P ( y , x ) adalah polinomial persis S n k ( x ) . Tapi kita perlu Gauss (dan begitu - subtractions) untuk mengekstrak koefisien ini dari n + 1 nilai P ( y ) pada n + 1 titik yang berbeda. Pertanyaan saya menanyakan apakah "kata monoton" memang tidak memiliki Gauss , dalam hal ini. (Dengan jawaban yang sudah ditebak - TIDAK.) Saya tidak yakin bahwa untuk ini, cukup dengan menyingkirkan persyaratan derajat >yP(y,x)Skn(x)n+1P(y)n+1>kk