Kompleksitas Keanggotaan-Pengujian untuk kelompok abelian terbatas

12

Pertimbangkan masalah tes keanggotaan abelian-subkelompok berikut ini .

Input:

  1. Sebuah kelompok abelian berhingga dengan sewenang-wenang-besar .G=Zd1×Zd1×Zdmdi

  2. Sebuah pembangkit-set dari subkelompok .{h1,,hn}HG

  3. Sebuah elemen .bG

Keluaran: 'ya' jika dan 'tidak' di tempat lain '.bH

Pertanyaan: Bisakah masalah ini diselesaikan secara efisien di komputer klasik? Saya menganggap algoritma yang efisien jika menggunakan sumber daya waktu dan memori dalam arti biasa dari mesin Turing klasik. Perhatikan bahwa kita dapat mengasumsikan untuk setiap subgrup . Ukuran input dari masalah ini adalah .O(polylog|G|)n=O(log|G|)Hlog|G|

Sedikit motivasi . Secara intuitif sepertinya masalah dapat diatasi dengan algoritma untuk menyelesaikan sistem linear kongruensi atau persamaan linear diophantine (baca di bawah). Namun, tampaknya ada perbedaan konsep efisiensi komputasi yang digunakan dalam konteks perhitungan dengan bilangan bulat, seperti: waktu polinomial kuat versus lemah, kompleksitas aljabar versus bit. Saya bukan ahli definisi ini dan saya tidak dapat menemukan referensi yang jelas menjawab pertanyaan ini.

Perbarui: jawaban untuk masalahnya adalah "ya".

  • Dalam jawaban terakhir, saya mengusulkan metode berdasarkan pada formulir normal Smith yang efisien untuk kelompok mana pun dengan formulir yang ditentukan.

  • Sebuah jawaban oleh Blondin menunjukkan bahwa dalam kasus tertentu di mana semua adalah dalam bentuk dan adalah "bilangan bulat kecil" maka masalahnya adalah . Bilangan bulat kecil secara eksponensial kecil dengan ukuran input: .didi=NieiNi,eiNC3PO(loglog|A|)

Dalam jawaban saya, saya menggunakan "subkelompok ortogonal" untuk menyelesaikan masalah ini, tetapi saya percaya ini tidak perlu. Saya akan mencoba memberikan jawaban yang lebih langsung di masa depan berdasarkan metode baris Eselon bentuk yang saya baca.


Beberapa pendekatan yang mungkin

Masalahnya berkaitan erat dengan penyelesaian sistem linear kongruensi dan / atau persamaan diofantin linier. Saya meringkas koneksi ini secara singkat untuk penyelesaian.

Ambil menjadi matriks yang kolomnya adalah elemen dari set himpunan . Sistem persamaan berikutA{h1,,hn}

AxT=(h1(1)h2(1)hn(1)h1(2)h2(2)hn(2)h1(m)h2(m)hn(m))(x(1)x(2)x(n))=(b(1)b(2)b(m))modd1modd2moddm

memiliki solusi jika dan hanya jika .bH

Jika semua faktor siklik memiliki dimensi yang sama ada algoritma berdasarkan pada bentuk normal Smith yang memecahkan masalah dalam waktu polinomial. Dalam hal ini, algoritma yang efisien dari [1] menemukan bentuk normal Smith dari : ia mengembalikan matriks diagonal dan dua matriks yang dapat dibalik dan sedemikian rupa sehingga . Ini mengurangi masalah untuk menyelesaikan sistem sistem yang setara dengan diagonal. Kita dapat memutuskan secara efisien jika sistem memiliki solusi menggunakan algoritma Euclidean.d=diADUVD=UAVDY=UbmoddD

Contoh di atas menunjukkan bahwa masalah dapat diselesaikan secara efisien menggunakan teknik serupa dalam kasus umum. Kita dapat mencoba memecahkan sistem melakukan operasi modular, atau dengan mengubah sistem menjadi sistem yang lebih besar dari persamaan linear diophantine. Beberapa teknik yang mungkin untuk mendekati masalah yang dapat saya pikirkan adalah:

  1. Komputasi bentuk-bentuk yang normal Smith dari .A
  2. Komputasi baris Eselon bentuk .A
  3. Eliminasi eliminasi Gaussian.
Juan Bermejo Vega
sumber
1
secara bersamaan crossposted di MO: mathoverflow.net/questions/81300/…
Suresh Venkat
2
Tampaknya Anda telah melakukan crosspost atas pertanyaan ini secara bersamaan . Meskipun kami tidak keberatan dengan pertanyaan yang diposting ulang , kebijakan situs kami adalah mengizinkan repost hanya setelah waktu yang cukup telah berlalu dan Anda tidak mendapatkan jawaban yang diinginkan di tempat lain, karena crossposting simultan upaya duplikat dan diskusi fraktur. Anda dapat menandai pertanyaan ini untuk ditutup sekarang, dan kemudian reflag untuk dibuka jika perlu setelah merangkum diskusi yang relevan dari situs lain.
Suresh Venkat
1
Ditutup atas permintaan poster asli (karena duplikasi pada MO).
Dave Clarke
1
Saya mengirim jawaban sebelum posting ditutup. Menurut pendapat saya, pertanyaan ini lebih cocok di sini daripada pada aliran matematika karena telah dipelajari secara luas dalam literatur teori kompleksitas.
Michael Blondin
1
dibuka kembali atas permintaan OP; fokus pada kerumitan membuatnya cocok untuk di sini.
Suresh Venkat

Jawaban:

10

Memverifikasi apakah (di mana adalah vektor menurut komentar OP) sama dengan memverifikasi apakah ada solusi untuk sistem ini: bh1,,hnhi

(h1(1)hn(1)d1e100h1(m)hn(m)00dmeN)(x(1)x(n)y(1)y(m))(b(1)b(m))

Dalam kasus Anda adalah angka kecil (mis. Nilainya logartihmic dalam ukuran input). Sayangnya, sepertinya kita tidak dapat menganggap bahwa berukuran kecil.e1,,eNd1,,dn

Jika ya, maka Anda dapat menemukan solusi untuk sistem di dari hasil McKenzie & Cook [1] . Makalah ini menunjukkan bahwa penyelesaian kongruensi linear modulo integer dengan faktor kecil (LCON) ada di . Selain itu, masalah ini adalah setara dengan masalah keanggotaan grup permutasi abelian (RUPS). Tesis doktoral McKenzie sepenuhnya dikhususkan untuk masalah-masalah itu [1] . Baru-baru ini, masalah-masalah itu dipertimbangkan oleh Arvind & Vijayaraghavan [3] .NC3NC3NC1

[1] Pierre McKenzie & Stephen A. Cook. Kompleksitas paralel dari masalah kelompok permutasi Abelian. 1987.

[2] Pierre McKenzie. Kompleksitas paralel dan kelompok permutasi. 1984.

[3] V. Arvind & TC Vijayaraghavan. Klasifikasi Masalah pada Kongruensi Linier dan Grup Permutasi Abelian Menggunakan Kelas Penghitungan Logspace. 2010

Michael Blondin
sumber
Terima kasih, unfortunatley saya tidak memiliki akses ke makalah ini sampai Senin. Ini mengejutkan saya bahwa ini bekerja untuk semua kelompok abelian. Untuk , yang abelian, menentukan apakah milik melibatkan memutuskan apakah memiliki solusi. Saya melihat dua masalah di sini: 1) Klasik sulit untuk menghitung fungsi totient Euler 2) Ini adalah versi keputusan dari logaritma diskrit. Masalahnya berkurang untuk memecahkan persamaan modular jika dekomposisi siklik diberikan. Bagaimana Anda mengatasi masalah ini? Apakah saya melewatkan sesuatu yang penting di sini? ZNbab=aimodφ(N)
Juan Bermejo Vega
Sebenarnya, ini untuk grup permutasi abelian .
Michael Blondin
Saya akan melihat makalah ini dan mencoba mengatur semuanya sedikit. Terima kasih.
Juan Bermejo Vega
Bisakah Anda memberikan detail lebih lanjut tentang pengkodean input? Dengan cara ini, saya mungkin dapat meningkatkan jawaban saya.
Michael Blondin
Dekomposisi grup sebagai input (ini akan berupa string dengan beberapa angka dan panjangnya kurasa). Lalu, setiap elemen grup adalah dalam bentuk dan dapat diwakili oleh sejumlah angka. Untuk menyimpannya Anda perlu bits. Apakah ini menjawabnya? A=Zd1×Zd1×ZdN(g1,,gn)n:=log2|A|
Juan Bermejo Vega
4

Setelah beberapa waktu, saya berhasil menemukan algoritma yang mungkin tidak optimal tetapi sederhana yang membuktikan bahwa kompleksitas masalahnya adalah polinomial.

Algoritma

(a) Hitunglah sebuah pembangkit-set subkelompok orthogonal dari .HH

(B) Periksa apakah elemen adalah ortogonal ke .bH

Ada algoritma klasik yang efisien untuk masalah (a) dan (b) (lihat analisis di bawah). Hal ini memberikan keanggotaan-test efisien karena unsur adalah orthogonal untuk jika dan hanya jika .bHhH


Analisis

Subkelompok ortogonal didefinisikan melalui grup karakter sebagai: Properti utama:HG

H:={gG:χg(h)=1hH}
  1. H adalah subkelompok .G
  2. H=H

Algoritma untuk (a) :

Saya mengikuti algoritma dari [ 1 ] dengan variasi kecil. milik jika dan hanya jika untuk semua , tetapi, secara linearitas sudah cukup untuk menunjukkan untuk setiap generator dari . Memperluas karakter dalam hal eksponensial (di sini saya secara implisit menggunakan dekomposisi faktor siklik) kondisi ini setara dengan Untuk menyelesaikan persamaan ini, hitung menggunakan algoritma Euclidean dan angkagHχg(h)=1hHχb(hi)=1H

exp{2πi(g(1)hi(1)d1++g(m)hi(m)dm)}=1
M:=lcm(N1,,Nd)αi:=M/di . Kita dapat menulis kembali kondisi di atas untuk setiap sebagai sistem persamaan modular linier.i

(α1h1(1)α2h1(2)αmh1(m)α1h2(1)α2h2(2)αmh2(m)α1hn(1)α2hn(2)αmhn(m))(g(1)g(2)g(n))=(000)modMmodMmodM
Seperti yang dibuktikan dalam 1 , jika kita mencicipi solusi acak sistem ini persamaan kita akan memperoleh himpunan menghasilkan dengan probabilitas secara eksponensial dekat dengan satu .t+log|G|Hp11/2tAX=0(modM). Di sini adalah matriks persegi panjang di atas bilangan bulat modulo yang algoritma yang diberikan dalam 2 memungkinkan untuk secara efisien menghitung dekomposisi normal Smith-nya. Algoritme mengembalikan matriks diagonal dan dua matriks yang dapat dibalik , sedemikian rupa sehingga . Dengan menggunakan rumus ini, sistem persamaan dapat ditulis sebagai dengan . Sekarang adalah mungkin untuk solusi secara acak menghitung dari menggunakan algoritma Euclid, karena ini adalah sistem persamaan dalam bentuk . Akhirnya, komputasiAMDUVD=UAVDY=0(modM)X=VYDY=0(modM)diyi=0(modM)X=VYseseorang memperoleh elemen acak dari kelompok ortogonal seperti yang diinginkan.H

Algoritma untuk (b) :

Karena kita sudah tahu bagaimana menghitung pembangkit-set , mudah untuk memeriksa apakah suatu unsur tertentu milik . Pertama hitung dari . Maka, menurut definisi, milik jika dan hanya jika untuk semua generator . Karena ada nomor O (polylog ( )) dari mereka dan ini dapat dilakukan secara efisien menggunakan aritmatika modular, kita selesai.HbHg1,,gsHbHχb(gi)=1H|G|

Juan Bermejo Vega
sumber
1
tidak apa-apa untuk menambahkan jawaban Anda sendiri jika Anda telah membuat penemuan untuk sementara waktu. Namun, sepertinya Anda perlu melakukan penyelidikan lebih lanjut (berdasarkan komentar Anda) sebelum Anda memutuskan jawaban mana yang akan diterima.
Suresh Venkat
Terima kasih. Saya ingin membuat diskusi lebih jauh untuk melihat apakah kita meletakkan semuanya dalam satu gambar. Juga, saya pikir mungkin ada algoritma yang lebih praktis yang bisa muncul.
Juan Bermejo Vega