Alle Zykeltypen aller Untergruppen der S_6 bestimmen

Neue Frage »

Matheguru2 Auf diesen Beitrag antworten »
Alle Zykeltypen aller Untergruppen der S_6 bestimmen
Meine Frage:
Hallo zusammen,
für meine Arbeit bräuchte ich alle verschiedenen Zykeltypen aller Untergruppen der symmetrischen Gruppe S_6. Gibt es eine Chance alle Zykeltypen zu bekommen?
Danke schon mal im Voraus smile

Meine Ideen:
Habe mit Magma und GAP rumgespielt, allerdings geben die jeweils nur eine Basis der Untergruppen aus.
Elvis Auf diesen Beitrag antworten »

Kein Problem, denn eine so winzige Gruppe kann man vollständig aufschreiben. Auch für jede symmetrische Gruppe kann man angeben, welche Elemente sie enthält. Was genau meinst du mit "Zykeltyp" ? Für die ist es hier durchgeführt worden, die kann nicht viel schwieriger sein : http://www.mathematik.tu-dortmund.de/~sw...z12/algzth2.pdf

Sorry, habe jetzt gesehen, dass du alles über alle Untergruppen wissen möchtest, das ist dann vielleicht doch ein wenig aufwendiger.
Matheguru2 Auf diesen Beitrag antworten »

Ja die Zykeltypen der reichen mir leider nicht. Bräuchte alle Untergruppen und deren Zykeltypen. verwirrt
Shalec Auf diesen Beitrag antworten »

Zitat:
Original von Matheguru2
Ja die Zykeltypen der reichen mir leider nicht. Bräuchte alle Untergruppen und deren Zykeltypen. verwirrt


Dir werden doch die Basen ausgegeben. Kannst du damit nicht eine Gruppe erzeugen lassen? Deinen MagmaCode kannst du auch in Sagemath importieren und z.B. durch magma(<Code>) ausführen. Klappt nur einzeilig, soll aber auch eine Methode für mehrzeiligen Code geben. Das Ergebnis speicherst du dann in einer Sagevariablen. Innerhalb von Sage sind aber auch die Permutationsgruppen bekannt. [1]

In Sage kannst du dann auch eine Menge damit veranstalten und viel herausfinden.

Aber was genau meinst du mit Zykeltyp, etwa [2,3]?

Notfalls kannst du ja eine "Bruteforce" oder "Exhaustive Search" nutzen und alle verschiedenen Untergruppen speichern. Bei der S6 gehts flott. smile Wenn du dann alle Gruppen hast, gehst du in den nächsten Analyseschritt, Zykeltyp. (Gibt es das auch auf Englisch?)


[1] http://doc.sagemath.org/html/en/referenc.../permgroup.html

[2] https://de.wikipedia.org/wiki/Zykeltyp

[3] https://de.wikipedia.org/wiki/Permutation#Zykeltyp
Matheguru2 Auf diesen Beitrag antworten »

Danke für die Antwort! smile Ja das ist das was ich die ganze Zeit versuche. Wie bekomme ich aus der Basis die Gruppe? Mit Zykeltyp meine ich Dreierzykel, Viererzykel, Mischungen draus, also welche Form die Elemente haben, z.B.:
(*,*)(*,*,*) oder (*,*,*,*,*)
Matheguru2 Auf diesen Beitrag antworten »

Was mir auch helfen würde: gibt es eine Möglichkeit, dass mir Magma alle Elemente der Untergruppe ausgibt. Ich hab ja alle Erzeuger aller Untergruppen. Es muss doch einen Befehl geben, der mir alle Elemente einer beliebigen Untergruppe ausgibt? verwirrt
 
 
Shalec Auf diesen Beitrag antworten »

Zitat:
Original von Matheguru2
Was mir auch helfen würde: gibt es eine Möglichkeit, dass mir Magma alle Elemente der Untergruppe ausgibt. Ich hab ja alle Erzeuger aller Untergruppen. Es muss doch einen Befehl geben, der mir alle Elemente einer beliebigen Untergruppe ausgibt? verwirrt


Ich erinnere mich, das Magma extrem schlecht dokumentiert ist, was nicht zu letzt an seiner horrenden Lizenzgebühren liegt. Big Laugh

In Sage könntest du folgendes machen:

Permutationsgruppe erzeugen:
code:
1:
G = SymmetricGroup(6); G


Dann über eine for-Schleife jedes Element aus G nehmen und damit eine Untergruppe erzeugen. (Das geht flott), wenn dir das Programm ein wenig Arbeit abnehmen muss (bei 6! Elementen würde ich das tatsächlich dem Programm überlassen..) erzeugst du dir einen leeren Array und hängst jede Untergruppe an den Array an. Rechenzeit beträgt dann bei 6! Elementen zum einen die 6! Untergruppenerzeugungen, dann das Testen der Untergruppen... viel zu lange für ein Cloud-basiertes System. Empfehlung: Arbeite den Satz von Lagrange mit ein und nehme mehrere Arrays gemäß der Ordnung der Untergruppe. So testest du dann nur in "relativ kleinen" Arrays via Bruteforce. Es gibt ja nicht viele Arrays zu berücksichtigen. Jeden Teiler der Gruppenordnung, also 1,2,3,4,5,6, 8, 10, .... Augenzwinkern Anhand des Satzes von Lagrange weißt du dann aber auch, wie viele Untergruppen du erwarten kannst. Exemplarisch jetzt nur für Ordnungen 1-6. (Gibt es überhaupt größere Ordnungen von Untergruppen? Ich glaube in diesem speziellen Fall eher nicht.)

Die naive Methode:
code:
1:
2:
3:
4:
5:
subgroups = []
for P in G:
    U= G.subgroup([P])
    if U not in subgroups:
        subgroups.append(U)


Der etwas schnellere Weg, aber immernoch sehr langsam:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
eins = []
zwei = []
drei = []
vier = []
fuenf = []
sechs = []
for P in G:
    U= G.subgroup([P])
    order = U.order()
    if order == 1:
        if U not in eins:
            eins.append(U)
    if order == 2:
        if U not in zwei:
            zwei.append(U)
    if order == 3:
        if U not in drei:
            drei.append(U)
    if order == 4:
        if U not in vier:
            vier.append(U)
    if order == 5:
        if U not in fuenf:
            fuenf.append(U)
    if order == 6:
        if U not in sechs:
            sechs.append(U)


Wenn es durchgelaufen ist, kannst du folgendes machen, um zu checken, ob der Test richtig funktionierte..
code:
1:
2:
3:
4:
5:
6:
len(eins)
len(zwei)
len(drei)
len(vier)
len(fuenf)
len(sechs)

und mit dem Satz von Lagrange abgleichen. Augenzwinkern

Ausgaben sind dann übrigens:
code:
1:
2:
3:
4:
5:
6:
1
75
40
90
36
120


Ich halte das Untergruppenerzeugen und Bruteforcetesten für zu aufwendig. Aber man kann Elemente gleicher Ordnung ja leider nicht in einen Topf werfen. Augenzwinkern

Vielleicht hilft dir das trotzdem?

Die Elemente einer Untergruppe kannst du dir dann mittels
code:
1:
U.list()

ausgeben lassen.


Edit: Magma und Sage haben zum großen Teil einen identischen Befehlssatz. Wenn es nicht Magma sein muss, kann ich die Cloud (cloud.sagemath.com) empfehlen. Sie ist kostenfrei und unterstützt ne Menge Sprachen: Magma, Pari, Python, Sage, Ruby, ... ich glaube 16 oder mehr.
HAL 9000 Auf diesen Beitrag antworten »

Wenn es weniger eine Algebra- als vielmehr eine Software-Frage (Magma?) ist, dann ist vielleicht auch eine Verlagerung des Threads nach

MatheBoard » Sonstiges » Bücher & Software » Programme

überlegenswert? Nur mein Eindruck.

EDIT: Letzten Post wieder mal zu spät mitgekriegt...
Shalec Auf diesen Beitrag antworten »

Zitat:
Original von HAL 9000
Wenn es weniger eine Algebra- als vielmehr eine Software-Frage (Magma?) ist, dann ist vielleicht auch eine Verlagerung des Threads nach

MatheBoard » Sonstiges » Bücher & Software » Programme

überlegenswert? Nur mein Eindruck.

EDIT: Letzten Post wieder mal zu spät mitgekriegt...


Ich bin mir nicht recht sicher ob es in verschiebenswert ist. Zum Einen lässt sich die Frage gewiss auf mathematischer Ebene beantworten, aber da es eine spezielle Gruppe ist, eben auch computeralgebraisch.

Wenn es am Ende nur um einen Code in einem CAS geht, klar. smile
Matheguru2 Auf diesen Beitrag antworten »

Vielen Dank für eure Antworten! Ich habs jetzt hinbekommen. Und zwar habe ich einfach für alle Basen der Untergruppen in Magma die zugehörige Untergruppe erzeugt und dann mit einer for-Schleife alle Elemente einzeln drucken lassen. War mega aufwändig, da es immerhin 56 Untergruppen waren, aber zielführend. smile
Shalec#Gast Auf diesen Beitrag antworten »

Zitat:
Original von Matheguru2
Vielen Dank für eure Antworten! Ich habs jetzt hinbekommen. Und zwar habe ich einfach für alle Basen der Untergruppen in Magma die zugehörige Untergruppe erzeugt und dann mit einer for-Schleife alle Elemente einzeln drucken lassen. War mega aufwändig, da es immerhin 56 Untergruppen waren, aber zielführend. smile


Das kann ich gut nachvollziehen. Hat Magma nicht "Untergruppe.list()" als Befehl? Guck mal in der Ref, ob es da sowas gibt.
Shalec#Gast Auf diesen Beitrag antworten »

Mir ist gerade aufgefallen: Sind 56 Untergruppen für die S6 nicht zu wenig? Kann da jemand ein Statement zu geben?
Elvis Auf diesen Beitrag antworten »

15 Transpositonen , 45 ziffernfremde Doppeltranspositionen und 15 ziffernfremde Dreifachtranspositionen ergeben schon 75 Untergruppen der Ordnung 2. Es gibt sicher mehr als 56 Untergruppen der S6
Elvis Auf diesen Beitrag antworten »

Symmetrische und alternierende Untergruppen der S6: 1*S6,1*A6,6*S5,6*A5,15*S4,15*A4,20*S3,20*A3 ergibt zusammen mit der S1 weitere 85 Untergruppen.
Shalec Auf diesen Beitrag antworten »

Zitat:
Original von Elvis
Symmetrische und alternierende Untergruppen der S6: 1*S6,1*A6,6*S5,6*A5,15*S4,15*A4,20*S3,20*A3 ergibt zusammen mit der S1 weitere 85 Untergruppen.

Laut meinem Code sollten es auch 720 Untergruppen sein,








Insofern die Vergleichsfunktion von Sage richtig gearbeitet hat, sind das die Anzahlen aller Untergruppen geordnet nach der Ordnung der Untergruppe. Innerhalb der Menge der Untergruppen einer bestimmten Ordnung gibt es dann auch wieder verschiedene Zykeltypen.
Elvis Auf diesen Beitrag antworten »

720 Untergruppen ist schön viel. Ich kam mir sekundenlang gut vor, als ich die 75 Untergruppen der Ordnung 2 gefunden hatte. Kann man das Hasse-Diagramm sehen ?
HAL 9000 Auf diesen Beitrag antworten »

Als Gruppen-Laien mit einer gewissen Affinität zur elementaren Kombinatorik kommt mir da folgende Frage:

Gibt es eine vernünftige Formel für die bloße Anzahl der Untergruppen von ? verwirrt
Shalec Auf diesen Beitrag antworten »

Ich hatte das auch bereits überlegt und mal das deutsche Google konsultiert. Nach dem ich aber nicht wirklich fündig wurde nochmal auf englisch und da gab es tatsächlich einen Thread auf stackexchange zu [1]. Allerdings scheint die Antwort in Abhängigkeit von n noch auf eine Lösung zu warten. smile

Bei 720 Untergruppen hatte ich übrigens nur die Gruppenordnungen 1 bis 6 berücksichtigt. Nach Lagrange wären aber auch Ordnungen wie 4! denkbar.



[1] https://math.stackexchange.com/questions...symmetric-group
Elvis Auf diesen Beitrag antworten »

Ich wünschte, es gäbe Antworten auf die Frage nach den Untergruppen der ... leider ist mir nichts bekannt ... gibt es neuere Bücher über symmetrische Gruppen ?
Shalec Auf diesen Beitrag antworten »

Zitat:
Original von Elvis
Ich wünschte, es gäbe Antworten auf die Frage nach den Untergruppen der ... leider ist mir nichts bekannt ... gibt es neuere Bücher über symmetrische Gruppen ?

Dazu kenne ich durch Zufall nur [1] und [2], weil ich grad nach eine eprint-Version des Papers [1] gesucht hatte. Big Laugh

[1] https://link.springer.com/article/10.21136/CMJ.2017.0700-15

[2] https://doi.org/10.1515/ausm-2017-0001
Matheguru2 Auf diesen Beitrag antworten »

Untergruppen gibt es mehr, da hast du recht. Aber es gibt nur 56 verschiedene Konjugationsklassen von Untergruppen. Das sollte mir doch reichen oder? In jeder Konjugationsklasse sollten die gleichen Zykeltypen vorkommen.
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »