Betrachten Sie das folgende Problem beim Testen der Mitgliedschaft von Abelian-Untergruppen .
Eingänge:
Eine endliche abelsche Gruppe mit beliebig großem .
Ein Generatorsatz eine Untergruppe .
Ein Element .
Ausgang: ‚Ja‘ , wenn und ‚Nein‘ an anderer Stelle‘.
Frage: Kann dieses Problem in einem klassischen Computer effizient gelöst werden ? Ich halte einen Algorithmus für effizient, wenn er und Speicherressourcen im üblichen Sinne klassischer Turing-Maschinen verwendet. Beachten Sie, dass wir für jede Untergruppe H annehmen können . Die Eingabegröße dieses Problems ist is log | G | ⌉ .
Ein bisschen Motivation . Intuitiv sieht es so aus, als könnte das Problem mit Algorithmen gelöst werden, um lineare Kongruenzsysteme oder lineare diophantische Gleichungen zu lösen (siehe unten). Es scheint jedoch, dass im Zusammenhang mit Berechnungen mit ganzen Zahlen verschiedene Begriffe der Recheneffizienz verwendet werden, wie z. Ich bin kein Experte für diese Definitionen und kann keine Referenz finden, die diese Frage eindeutig regelt.
Update: Die Antwort auf das Problem lautet "Ja".
In einer späten Antwort schlug ich eine Methode vor, die auf normalen Smith-Formen basiert und für jede Gruppe mit der vorgeschriebenen Form effizient ist.
Eine Antwort von Blondin zeigt, dass in dem speziellen Fall, in dem alle die Form d i = N e i i und N haben sind "kleine ganze Zahlen"dann gehört das Problem zu NC 3 ⊂ P . Winzige Ganzzahlen sind exponentiell klein mit der Eingabegröße: O ( log log | A | ) .
In meiner Antwort habe ich "orthogonale Untergruppen" verwendet, um dieses Problem zu lösen, aber ich glaube, dass dies nicht notwendig ist. Ich werde versuchen, in Zukunft eine direktere Antwort auf die von mir gelesene Methode der Echelon-Formulare zu geben.
Einige mögliche Ansätze
Das Problem hängt eng mit der Lösung des linearen Kongruenzsystems und / oder der linearen Diophantingleichungen zusammen. Ich fasse diese Zusammenhänge der Vollständigkeit halber kurz zusammen.
Nehmen Sie als die Matrix, deren Spalten die Elemente der Erzeugungsmenge { h 1 , … , h n } sind . Das folgende Gleichungssystem
wenn eine Lösung hat , und nur wenn .
Wenn alle zyklischen Faktoren die gleiche Dimension gibt es einen Algorithmus, der auf Smith-Normalformen basiert und das Problem in der Polynomzeit löst. In diesem Fall findet ein effizienter Algorithmus aus [1] die Smith-Normalform von A : Er gibt eine Diagonalmatrix D und zwei invertierbare Matrizen U und V zurück, so dass D = U A V ist . Dies reduzierte das Problem auf die Lösung des äquivalenten Systemsystems D Y = U b mit D- Diagonale. Wir können effizient entscheiden, ob das System eine Lösung mit dem euklidischen Algorithmus hat.
Das obige Beispiel legt nahe, dass das Problem im allgemeinen Fall mit ähnlichen Techniken effizient gelöst werden kann. Wir können versuchen, das System durch modulare Operationen zu lösen oder indem wir das System in ein größeres System linearer diophantischer Gleichungen umwandeln. Einige mögliche Techniken, um das Problem anzugehen, das mir einfällt, sind:
- Die Berechnung der Smith Normalformen von .
- Berechnen der Reihe Echelon Form .
- Ganzzahlige Gaußsche Eliminierung.
quelle
Antworten:
Verifizieren , ob (wobei h i Vektoren sind nach den Anmerkungen des OP) zum Verifizieren äquivalent ist , ob es eine Lösung für dieses System ist: ( h 1 ( 1 ) ⋯ h n ( 1 ) d e 1 1 0 ⋯ 0b∈⟨h1,…,hn⟩ hi
In Ihrem Fall sind winzige Zahlen (dh ihr Wert ist in der Eingabegröße logarithmisch). Leider können wir nicht davon ausgehen, dass d 1 , … ,e1,…,eN winzig sind.d1,…,dn
Wenn ja, können Sie in eine Lösung für das System aus einem Ergebnis von McKenzie & Cook [1] finden . Diese Arbeit zeigt, dass das Lösen linearer Kongruenzen modulo einer ganzen Zahl mit winzigen Faktoren (LCON) in NC 3 enthalten ist . Darüber hinaus ist dieses Problem NC 1 -äquivalent zu dem Problem der Mitgliedschaft in einer abelschen Permutationsgruppe (AGM). McKenzies Doktorarbeit widmet sich voll und ganz diesen Problemen [1] . In jüngerer Zeit wurden diese Probleme von Arvind & Vijayaraghavan [3] in Betracht gezogen .NC3 NC3 NC1
[1] Pierre McKenzie & Stephen A. Cook. Die parallele Komplexität abelscher Permutationsgruppenprobleme. 1987.
[2] Pierre McKenzie. Parallele Komplexitäts- und Permutationsgruppen. 1984.
[3] V. Arvind & TC Vijayaraghavan. Klassifizieren von Problemen in linearen Kongruenzen und abelschen Permutationsgruppen mithilfe von Logspace-Zählklassen. 2010.
quelle
Nach einiger Zeit gelang es mir, einen vielleicht nicht optimalen, aber einfachen Algorithmus zu finden, der beweist, dass die Komplexität des Problems polynomisch ist.
Es gibt effiziente klassische Algorithmen für die Probleme (a) und (b) (siehe Analyse unten). Dies ergibt einen effizienten Mitgliedschaftstest, da ein Element genau dann orthogonal zu H ⊥ ist, wenn h ∈ H ist .b H⊥ h∈H
Analyse
Algorithmus für (a) :
Algorithm for (b):
Since we already know how to compute a generating-set ofH⊥ , it is easy to check if a given element b belongs to H . First compute a generating-set ⟨g1,…,gs⟩ of H⊥ . Then, by definition, b belongs to H if and only if χb(gi)=1 for all generators of H⊥ . Since there are a O(polylog(|G| )) number of them and this can be done efficiently using modular arithmetic we are done.
quelle